Download and install the 3000 release of SaltStack.
These instructions are for an older release of SaltStack. You might want to view instructions for the latest release instead.
Bootstrap works across many platforms and is the easiest way to get started. If you cannot use Bootstrap or if you prefer packages, click the tab for your platform.
Latest release: 3000.3 (May 13, 2020)
ARCHIVE.REPO.SALTSTACK.COM
SEP 22 was accepted which means that all unsupported and CVE affected releases have been moved to https://archive.repo.saltstack.com. If you get 404 errors from your package manager, the release you were using probably moved there. Please consider upgrading to a supported version of Salt. Click here for more information.
Salt CVE
SaltStack has identified a CVE that needs immediate attention. For more information, click here.
CVE Patch 2018.8.x 2017.7.x 2016.11.x 2016.3.x
If you are running older versions (2016.x, 2017.x and 2018.x) that are no longer supported you may 1) upgrade to a newer version or 2) complete this FORM to gain access to a patch for the older versions.
UPGRADE FROM PYCRYPTO
The PyCrypto library provided by your system packages is likely unmaintained and insecure. SaltStack strongly recommends upgrading to a more maintained library. See Hardening Salt for more info.
PYTHON 2.7 DEPRECATION
In light of Python 2.7 reaching its End of Life (EOL) on Jan 1st 2020, Python 2 will be deprecated from SaltStack no earlier than the Sodium release, that is either the Sodium release or a later release. This decision is pending further community discussion.
Salt Bootstrap is a shell script that detects the target platform and selects the best installation method. (Supported Platforms)
Run these commands on the system that you want to use as the central management point.
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -P -MYour Salt master can manage itself, so a Salt minion is installed along with the Salt master. If you do not want to install the minion, also pass the -N option.
Run these commands on each system that you want to manage using Salt.
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -PPost-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
Read Before Upgrading Debian 8 (Jessie) from Salt Versions Earlier than 2015.8.4
Salt systemd service files are missing the following statement in these versions:
[Service]
KillMode=processThis statement must be added to successfully upgrade on these earlier versions of Salt.
wget -O - https://repo.saltstack.com/py3/debian/10/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/9/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/debian/9/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/8/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -/etc/apt/sources.list.d/saltstack.list:
deb http://repo.saltstack.com/py3/debian/10/amd64/3000 buster maindeb http://repo.saltstack.com/apt/debian/9/amd64/3000 stretch maindeb http://repo.saltstack.com/py3/debian/9/amd64/3000 stretch maindeb http://repo.saltstack.com/apt/debian/8/amd64/3000 jessie mainRun sudo apt-get update
sudo apt-get install salt-mastersudo apt-get install salt-minionsudo apt-get install salt-sshsudo apt-get install salt-syndicsudo apt-get install salt-cloudsudo apt-get install salt-apisudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionPost-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
Read Before Upgrading Debian 8 (Jessie) from Salt Versions Earlier than 2015.8.4
Salt systemd service files are missing the following statement in these versions:
[Service]
KillMode=processThis statement must be added to successfully upgrade on these earlier versions of Salt.
wget -O - https://repo.saltstack.com/py3/debian/10/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/9/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/debian/9/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/8/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -/etc/apt/sources.list.d/saltstack.list:
deb http://repo.saltstack.com/py3/debian/10/amd64/archive/3000.3 buster maindeb http://repo.saltstack.com/apt/debian/9/amd64/archive/3000.3 stretch maindeb http://repo.saltstack.com/py3/debian/9/amd64/archive/3000.3 stretch maindeb http://repo.saltstack.com/apt/debian/8/amd64/archive/3000.3 jessie mainRun sudo apt-get update
sudo apt-get install salt-mastersudo apt-get install salt-minionsudo apt-get install salt-sshsudo apt-get install salt-syndicsudo apt-get install salt-cloudsudo apt-get install salt-apisudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionPost-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-3000.el8.noarch.rpmsudo yum install https://repo.saltstack.com/yum/redhat/salt-repo-3000.el7.noarch.rpm sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-3000.el7.noarch.rpm sudo yum install https://repo.saltstack.com/yum/redhat/salt-repo-3000.el6.noarch.rpmRun sudo yum clean expire-cache
sudo yum install salt-mastersudo yum install salt-minionsudo yum install salt-sshsudo yum install salt-syndicsudo yum install salt-cloudsudo yum install salt-apisudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo service salt-minion restartPost-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
Run the following commands to install the SaltStack repository and key:
sudo rpm --import https://repo.saltstack.com/py3/redhat/8/x86_64/archive/3000.3/SALTSTACK-GPG-KEY.pubsudo rpm --import https://repo.saltstack.com/yum/redhat/7/x86_64/archive/3000.3/SALTSTACK-GPG-KEY.pubsudo rpm --import https://repo.saltstack.com/py3/redhat/7/x86_64/archive/3000.3/SALTSTACK-GPG-KEY.pubsudo rpm --import https://repo.saltstack.com/yum/redhat/6/x86_64/archive/3000.3/SALTSTACK-GPG-KEY.pubSave the following file to /etc/yum.repos.d/saltstack.repo:
[saltstack-repo]
name=SaltStack repo for RHEL/CentOS 8 PY3
baseurl=https://repo.saltstack.com/py3/redhat/8/$basearch/archive/3000.3
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/py3/redhat/8/$basearch/archive/3000.3/SALTSTACK-GPG-KEY.pub[saltstack-repo]
name=SaltStack repo for RHEL/CentOS 7
baseurl=https://repo.saltstack.com/yum/redhat/7/$basearch/archive/3000.3
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/yum/redhat/7/$basearch/archive/3000.3/SALTSTACK-GPG-KEY.pub[saltstack-repo]
name=SaltStack repo for RHEL/CentOS 7 PY3
baseurl=https://repo.saltstack.com/py3/redhat/7/$basearch/archive/3000.3
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/py3/redhat/7/$basearch/archive/3000.3/SALTSTACK-GPG-KEY.pub[saltstack-repo]
name=SaltStack repo for RHEL/CentOS 6
baseurl=https://repo.saltstack.com/yum/redhat/6/$basearch/archive/3000.3
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/yum/redhat/6/$basearch/archive/3000.3/SALTSTACK-GPG-KEY.pubRun sudo yum clean expire-cache
sudo yum install salt-mastersudo yum install salt-minionsudo yum install salt-sshsudo yum install salt-syndicsudo yum install salt-cloudsudo yum install salt-apisudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo service salt-minion restartPost-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
wget -O - https://repo.saltstack.com/apt/ubuntu/18.04/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/ubuntu/16.04/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/ubuntu/18.04/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/ubuntu/16.04/amd64/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -/etc/apt/sources.list.d/saltstack.list:
deb http://repo.saltstack.com/apt/ubuntu/18.04/amd64/3000 bionic maindeb http://repo.saltstack.com/apt/ubuntu/16.04/amd64/3000 xenial maindeb http://repo.saltstack.com/py3/ubuntu/18.04/amd64/3000 bionic maindeb http://repo.saltstack.com/py3/ubuntu/16.04/amd64/3000 xenial mainRun sudo apt-get update
sudo apt-get install salt-mastersudo apt-get install salt-minionsudo apt-get install salt-sshsudo apt-get install salt-syndicsudo apt-get install salt-cloudsudo apt-get install salt-apisudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionPost-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
wget -O - https://repo.saltstack.com/apt/ubuntu/18.04/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/ubuntu/16.04/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/ubuntu/18.04/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/ubuntu/16.04/amd64/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -/etc/apt/sources.list.d/saltstack.list:
deb http://repo.saltstack.com/apt/ubuntu/18.04/amd64/archive/3000.3 bionic maindeb http://repo.saltstack.com/apt/ubuntu/16.04/amd64/archive/3000.3 xenial maindeb http://repo.saltstack.com/py3/ubuntu/18.04/amd64/archive/3000.3 bionic maindeb http://repo.saltstack.com/py3/ubuntu/16.04/amd64/archive/3000.3 xenial mainRun sudo apt-get update
sudo apt-get install salt-mastersudo apt-get install salt-minionsudo apt-get install salt-sshsudo apt-get install salt-syndicsudo apt-get install salt-cloudsudo apt-get install salt-apisudo systemctl restart salt-minionsudo systemctl restart salt-minionsudo systemctl restart salt-minionPost-installation configuration
Installs the latest version currently available from SUSE. (These packages are only a mirror from SUSE)
sudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_11_SP4/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP1/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP2/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP3/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_12_SP4/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/SLE_15/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_15.0/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_15.1/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_42.2/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Leap_42.3/systemsmanagement:saltstack:products.reposudo zypper addrepo http://repo.saltstack.com/opensuse/openSUSE_Tumbleweed/systemsmanagement:saltstack:products.repoRefresh the package list:
sudo zypper refreshsudo zypper install salt-mastersudo zypper install salt-minionsudo zypper install salt-sshsudo zypper install salt-syndicsudo zypper install salt-cloudsudo zypper install salt-apisudo zypper install salt-proxysudo systemctl restart salt-minionor
sudo service salt-minion restartPost-installation configuration
Installs the latest release. Updating installs the latest release even if it is a new major version.
Currently Salt 3000.2 is available for Fedora stable, however Salt 3000.3 will soon be available from the testing repo and is expected to migrate to stable soon.
sudo dnf install salt-mastersudo dnf install salt-minionsudo dnf install salt-sshsudo dnf install salt-syndicsudo dnf install salt-cloudsudo dnf install salt-apiPost-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
Currently Salt 3000.2 is available for Fedora stable, however Salt 3000.3 will soon be available from the testing repo and is expected to migrate to stable soon.
sudo dnf install salt-mastersudo dnf install salt-minionsudo dnf install salt-sshsudo dnf install salt-syndicsudo dnf install salt-cloudsudo dnf install salt-apiPost-installation configuration
Installs a specific release.
sudo dnf install salt-master-3000.2sudo dnf install salt-minion-3000.2sudo dnf install salt-ssh-3000.2sudo dnf install salt-syndic-3000.2sudo dnf install salt-cloud-3000.2sudo dnf install salt-api-3000.2Post-installation configuration
AMD64: Salt-Minion-3000.3-Py2-AMD64-Setup.exe | MD5 | SHA256
AMD64: Salt-Minion-3000.3-Py3-AMD64-Setup.exe | MD5 | SHA256
The installer can be run silently by providing the /S option at the command line. The options /master and /minion-name allow for configuring the master hostname and minion name, respectively. Here’s an example of running a silent installation from the command line:
Salt-Minion-3000.3-Py2-AMD64-Setup.exe /S /master=yoursaltmaster /minion-name=yourminionname
Salt-Minion-3000.3-Py3-AMD64-Setup.exe /S /master=yoursaltmaster /minion-name=yourminionname
Post-installation configuration
OS X Gatekeeper settings might prevent installation of the Salt package. If a warning appears during installation, open System Preferences > Security & Privacy > click Open Anyway
After the installation completes, run the following to configure the Salt minion ID, the Salt master location, and to start the required services.
sudo salt-config -i yourminionname -m yoursaltmasterOn OS X, the Salt minion configuration file is in the standard /etc/salt/minion location. To stop the Salt minion, run the following:
sudo launchctl stop com.saltstack.salt.minionTo start the Salt minion, run the following:
sudo launchctl start com.saltstack.salt.minionPost-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
sudo yum install https://repo.saltstack.com/py3/amazon/salt-py3-amzn2-repo-3000.amzn2.noarch.rpmsudo yum install https://repo.saltstack.com/yum/amazon/salt-amzn2-repo-3000.amzn2.noarch.rpmsudo yum install https://repo.saltstack.com/yum/amazon/salt-amzn-repo-3000.amzn1.noarch.rpmRun sudo yum clean expire-cache
sudo yum install salt-mastersudo yum install salt-minionsudo yum install salt-sshsudo yum install salt-syndicsudo yum install salt-cloudsudo yum install salt-apisudo service salt-minion restart Post-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
Run the following commands to install the SaltStack repository and key:
sudo rpm --import https://repo.saltstack.com/py3/amazon/2/x86_64/archive/3000.3/SALTSTACK-GPG-KEY.pubsudo rpm --import https://repo.saltstack.com/yum/amazon/2/x86_64/archive/3000.3/SALTSTACK-GPG-KEY.pubsudo rpm --import https://repo.saltstack.com/yum/amazon/latest/x86_64/archive/3000.3/SALTSTACK-GPG-KEY.pubSave the following file to /etc/yum.repos.d/saltstack-amzn.repo:
[saltstack-amzn-repo]
name=SaltStack repo for Amazon Linux 2
baseurl=https://repo.saltstack.com/py3/amazon/2/$basearch/archive/3000.3
failovermethod=priority
priority=10
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/py3/amazon/2/$basearch/archive/3000.3/SALTSTACK-GPG-KEY.pub[saltstack-amzn-repo]
name=SaltStack repo for Amazon Linux 2
baseurl=https://repo.saltstack.com/yum/amazon/2/$basearch/archive/3000.3
failovermethod=priority
priority=10
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/yum/amazon/2/$basearch/archive/3000.3/SALTSTACK-GPG-KEY.pub[saltstack-amzn-repo]
name=SaltStack repo for Amazon Linux
baseurl=https://repo.saltstack.com/yum/amazon/latest/$basearch/archive/3000.3
failovermethod=priority
priority=10
enabled=1
gpgcheck=1
gpgkey=https://repo.saltstack.com/yum/amazon/latest/$basearch/archive/3000.3/SALTSTACK-GPG-KEY.pubRun sudo yum clean expire-cache
sudo yum install salt-mastersudo yum install salt-minionsudo yum install salt-sshsudo yum install salt-syndicsudo yum install salt-cloudsudo yum install salt-apisudo service salt-minion restart Post-installation configuration
Installs the latest release. Updating installs the latest minor release but not a new major version.
wget -O - https://repo.saltstack.com/py3/debian/10/armhf/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/9/armhf/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/debian/9/armhf/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/8/armhf/3000/SALTSTACK-GPG-KEY.pub | sudo apt-key add -/etc/apt/sources.list.d/saltstack.list:
deb http://repo.saltstack.com/py3/debian/10/armhf/3000 buster maindeb http://repo.saltstack.com/apt/debian/9/armhf/3000 stretch maindeb http://repo.saltstack.com/py3/debian/9/armhf/3000 stretch maindeb http://repo.saltstack.com/apt/debian/8/armhf/3000 jessie mainRun sudo apt-get update
sudo apt-get install salt-mastersudo apt-get install salt-minionsudo apt-get install salt-sshsudo apt-get install salt-syndicsudo apt-get install salt-cloudsudo apt-get install salt-api(Upgrade only) Restart all upgraded services, for example:
sudo systemctl restart salt-minionPost-installation configuration
Installs a specific release. Updating doesn’t change the release that is installed.
wget -O - https://repo.saltstack.com/py3/debian/10/armhf/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/9/armhf/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/py3/debian/9/armhf/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -wget -O - https://repo.saltstack.com/apt/debian/8/armhf/archive/3000.3/SALTSTACK-GPG-KEY.pub | sudo apt-key add -/etc/apt/sources.list.d/saltstack.list:
deb http://repo.saltstack.com/py3/debian/10/armhf/archive/3000.3 buster maindeb http://repo.saltstack.com/apt/debian/9/armhf/archive/3000.3 stretch maindeb http://repo.saltstack.com/py3/debian/9/armhf/archive/3000.3 stretch maindeb http://repo.saltstack.com/apt/debian/8/armhf/archive/3000.3 jessie mainRun sudo apt-get update
sudo apt-get install salt-mastersudo apt-get install salt-minionsudo apt-get install salt-sshsudo apt-get install salt-syndicsudo apt-get install salt-cloudsudo apt-get install salt-api(Upgrade only) Restart all upgraded services, for example:
sudo systemctl restart salt-minionPost-installation configuration
The SaltStack package repo supports mirroring using an s3 api compatible sync tool such as the aws-cli, or rclone. Note that we use a custom endpoint so we can switch buckets easily. Please sync no more than once per day.
rclone example:
RCLONE_CONFIG_S3_TYPE=s3 RCLONE_CONFIG_S3_PROVIDER=Other RCLONE_CONFIG_S3_ENV_AUTH=false RCLONE_CONFIG_S3_ENDPOINT=https://s3.repo.saltstack.com rclone sync --fast-list --use-server-modtime -v s3:s3/ ./fullrepo/Please make sure to include the --use-server-modtime flags as not doing so will drastically increase our costs.
If you can’t use the --use-server-modtime flag because your version of rclone is too old, you can use the -c flag:
RCLONE_CONFIG_S3_TYPE=s3 RCLONE_CONFIG_S3_PROVIDER=Other RCLONE_CONFIG_S3_ENV_AUTH=false RCLONE_CONFIG_S3_ENDPOINT=https://s3.repo.saltstack.com rclone sync --fast-list -c -v s3:s3/ ./fullrepo/aws-cli example:
aws --no-sign-request --endpoint-url https://s3.repo.saltstack.com s3 sync --delete --exact-timestamps s3://s3/ ./fullrepo/The SaltStack package repo supports mirroring using rsync.
Rsync is being deprecated, please considier moving to an s3 sync method as it supports encryption. Support for rsync will be removed no earlier than June 30th 2020.
rsync rsync://rsync.repo.saltstack.comFor example:
rsync -vaH --numeric-ids --delete --delete-after --delay-updates rsync://rsync.repo.saltstack.com/saltstack_pkgrepo_full ./fullrepoFor installation on other platforms and alternative installation methods, see the SaltStack Installation Instructions.