diff --git a/docs/pages/application-access/getting-started.mdx b/docs/pages/application-access/getting-started.mdx
index faa7ed2e2da09..8b2b318998acc 100644
--- a/docs/pages/application-access/getting-started.mdx
+++ b/docs/pages/application-access/getting-started.mdx
@@ -119,7 +119,7 @@ Alternatively, log in to the Teleport Web Interface at `https://teleport.example
Dive deeper into the topics relevant to your Application Access use-case:
-- Learn in more detail about [connecting applications](./guides/connecting-apps.mdx) with Application Access.
+- Learn in more detail about [connecting applications](./guides/connecting-apps.mdx).
- Learn about integrating with [JWT tokens](./jwt/introduction.mdx) for auth.
- Learn how to use application access with [RESTful APIs](./guides/api-access.mdx).
- See full configuration and CLI [reference](./reference.mdx).
diff --git a/docs/pages/includes/install-linux.mdx b/docs/pages/includes/install-linux.mdx
index 5e69079115844..b205c243240d1 100644
--- a/docs/pages/includes/install-linux.mdx
+++ b/docs/pages/includes/install-linux.mdx
@@ -1,24 +1,9 @@
-
-
-Visit your [Teleport account](https://teleport.sh) and select the URL for your package of choice.
-
-
-
-
-
-Visit the [Downloads Page](/docs/choose-an-edition/teleport-cloud/downloads.mdx)
-and select the URL for your package of choice.
-
-
-
Use the appropriate commands for your environment to install your package.
-
-
- Add the Teleport repository to your repository list:
+
```code
# Download Teleport's PGP public key
@@ -28,9 +13,6 @@ Use the appropriate commands for your environment to install your package.
$ source /etc/os-release
# Add the Teleport APT repository for v(=teleport.major_version=). You'll need to update this
# file for each major release of Teleport.
- # Note: if using a fork of Debian or Ubuntu you may need to use '$ID_LIKE'
- # and the codename your distro was forked from instead of '$ID' and '$VERSION_CODENAME'.
- # Supported versions are listed here: https://github.com/gravitational/teleport/blob/master/build.assets/tooling/cmd/build-os-package-repos/runners.go#L42-L67
$ echo "deb [signed-by=/usr/share/keyrings/teleport-archive-keyring.asc] \
https://apt.releases.teleport.dev/${ID?} ${VERSION_CODENAME?} stable/v(=teleport.major_version=)" \
| sudo tee /etc/apt/sources.list.d/teleport.list > /dev/null
@@ -40,52 +22,50 @@ Use the appropriate commands for your environment to install your package.
```
-
+
```code
# Source variables about OS version
$ source /etc/os-release
# Add the Teleport YUM repository for v(=teleport.major_version=). You'll need to update this
# file for each major release of Teleport.
- # Note: if using a fork of RHEL/CentOS or Amazon Linux you may need to use '$ID_LIKE'
- # and the codename your distro was forked from instead of '$ID'
- # Supported versions are listed here: https://github.com/gravitational/teleport/blob/master/build.assets/tooling/cmd/build-os-package-repos/runners.go#L133-L153
- $ sudo yum-config-manager --add-repo $(rpm --eval "https://yum.releases.teleport.dev/$ID/$VERSION_ID/Teleport/%{_arch}/stable/v(=teleport.major_version=)/teleport.repo")
+ $ sudo yum-config-manager --add-repo "$(rpm --eval "https://yum.releases.teleport.dev/$ID/$VERSION_ID/Teleport/%{_arch}/stable/v(=teleport.major_version=)/teleport.repo")"
$ sudo yum install teleport
#
# Tip: Add /usr/local/bin to path used by sudo (so 'sudo tctl users add' will work as per the docs)
# echo "Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin" > /etc/sudoers.d/secure_path
- #
- # Optional: Use DNF on newer distributions
- # $ sudo dnf config-manager --add-repo https://rpm.releases.teleport.dev/teleport.repo
- # $ sudo dnf install teleport
```
-
-
- Amazon Linux 2023 users should utilize the tarball or RPM file to install Teleport.
- You can download the matching RPM architecture for your instance
- from the [Teleport Downloads page](https://goteleport.com/download) and install with the example command below.
+
+
```code
- # Replace with the architecture type (amd64, arm64,...)
- $ rpm -i teleport-(=teleport.version=)-1..rpm
+ # Source variables about OS version
+ $ source /etc/os-release
+ # Add the Teleport YUM repository for v(=teleport.major_version=). You'll need to update this
+ # file for each major release of Teleport.
+ # Use the dnf config manager plugin to add the teleport RPM repo
+ $ sudo dnf config-manager --add-repo "$(rpm --eval "https://yum.releases.teleport.dev/$ID/$VERSION_ID/Teleport/%{_arch}/stable/v(=teleport.major_version=)/teleport.repo")"
+
+ # Install teleport
+ $ sudo dnf install teleport
+
+ # Tip: Add /usr/local/bin to path used by sudo (so 'sudo tctl users add' will work as per the docs)
+ # echo "Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin" > /etc/sudoers.d/secure_path
```
-
-
- In the example commands below, update `$SYSTEM-ARCH` with the appropriate
+ In the example commands below, update `$SYSTEM_ARCH` with the appropriate
value (`amd64`, `arm64`, or `arm`). All example commands using this variable
will update after one is filled out.
```code
- $ curl https://get.gravitational.com/teleport-v(=teleport.version=)-linux--bin.tar.gz.sha256
+ $ curl https://get.gravitational.com/teleport-v(=teleport.version=)-linux--bin.tar.gz.sha256
#
- $ curl -O https://cdn.teleport.dev/teleport-v(=teleport.version=)-linux--bin.tar.gz
- $ shasum -a 256 teleport-v(=teleport.version=)-linux--bin.tar.gz
+ $ curl -O https://cdn.teleport.dev/teleport-v(=teleport.version=)-linux--bin.tar.gz
+ $ shasum -a 256 teleport-v(=teleport.version=)-linux--bin.tar.gz
# Verify that the checksums match
- $ tar -xvf teleport-v(=teleport.version=)-linux--bin.tar.gz
+ $ tar -xvf teleport-v(=teleport.version=)-linux--bin.tar.gz
$ cd teleport
$ sudo ./install
```
@@ -94,46 +74,90 @@ Use the appropriate commands for your environment to install your package.
+
+
- In the example commands below, update `$SYSTEM-ARCH` with the appropriate
- value (`amd64`, `arm64`, or `arm`). All example commands using this variable
- will update after one is filled out.
+ ```code
+ # Download Teleport's PGP public key
+ $ sudo curl https://apt.releases.teleport.dev/gpg \
+ -o /usr/share/keyrings/teleport-archive-keyring.asc
+ # Source variables about OS version
+ $ source /etc/os-release
+ # Add the Teleport APT repository for v(=teleport.major_version=). You'll need to update this
+ # file for each major release of Teleport.
+ $ echo "deb [signed-by=/usr/share/keyrings/teleport-archive-keyring.asc] \
+ https://apt.releases.teleport.dev/${ID?} ${VERSION_CODENAME?} stable/v(=teleport.major_version=)" \
+ | sudo tee /etc/apt/sources.list.d/teleport.list > /dev/null
-
-
+ $ sudo apt-get update
+ $ sudo apt-get install teleport-ent
+ ```
- After Downloading the `.deb` file for your system architecture, install it with
- `dpkg`. The example below assumes the `root` user:
+ For FedRAMP/FIPS-compliant installations, install the `teleport-ent-fips` package instead:
```code
- $ dpkg -i ~/Downloads/teleport-ent_(=teleport.version=)_.deb
- Selecting previously unselected package teleport-ent.
- (Reading database ... 30810 files and directories currently installed.)
- Preparing to unpack teleport-ent_(=teleport.version=)_$SYSTEM_ARCH.deb ...
- Unpacking teleport-ent (=teleport.version=) ...
- Setting up teleport-ent (=teleport.version=) ...
+ $ sudo apt-get install teleport-ent-fips
```
-
+
- After Downloading the `.rpm` file for your system architecture, install it with `rpm`:
+ ```code
+ # Source variables about OS version
+ $ source /etc/os-release
+ # Add the Teleport YUM repository for v(=teleport.major_version=). You'll need to update this
+ # file for each major release of Teleport.
+ $ sudo yum-config-manager --add-repo "$(rpm --eval "https://yum.releases.teleport.dev/$ID/$VERSION_ID/Teleport/%{_arch}/stable/v(=teleport.major_version=)/teleport.repo")"
+ $ sudo yum install teleport-ent
+ #
+ # Tip: Add /usr/local/bin to path used by sudo (so 'sudo tctl users add' will work as per the docs)
+ # echo "Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin" > /etc/sudoers.d/secure_path
+ ```
+
+ For FedRAMP/FIPS-compliant installations, install the `teleport-ent-fips` package instead:
```code
- $ rpm -i ~/Downloads/teleport-ent-(=teleport.version=)..rpm
- warning: teleport-ent-(=teleport.version=).$SYSTEM-ARCH.rpm: Header V4 RSA/SHA512 Signature, key ID 6282c411: NOKEY
+ $ sudo yum install teleport-ent-fips
+ ```
+
+
+
+
+ ```code
+ # Source variables about OS version
+ $ source /etc/os-release
+ # Add the Teleport YUM repository for v(=teleport.major_version=). You'll need to update this
+ # file for each major release of Teleport.
+ # Use the dnf config manager plugin to add the teleport RPM repo
+ $ sudo dnf config-manager --add-repo "$(rpm --eval "https://yum.releases.teleport.dev/$ID/$VERSION_ID/Teleport/%{_arch}/stable/v(=teleport.major_version=)/teleport.repo")"
+
+ # Install teleport
+ $ sudo dnf install teleport-ent
+
+ # Tip: Add /usr/local/bin to path used by sudo (so 'sudo tctl users add' will work as per the docs)
+ # echo "Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin" > /etc/sudoers.d/secure_path
+ ```
+
+ For FedRAMP/FIPS-compliant installations, install the `teleport-ent-fips` package instead:
+
+ ```code
+ $ sudo dnf install teleport-ent-fips
```
+ In the example commands below, update `$SYSTEM_ARCH` with the appropriate
+ value (`amd64`, `arm64`, or `arm`). All example commands using this variable
+ will update after one is filled out.
+
```code
- $ curl https://get.gravitational.com/teleport-ent-v(=teleport.version=)-linux--bin.tar.gz.sha256
+ $ curl https://get.gravitational.com/teleport-ent-v(=teleport.version=)-linux--bin.tar.gz.sha256
#
- $ curl -O https://cdn.teleport.dev/teleport-ent-v(=teleport.version=)-linux--bin.tar.gz
- $ shasum -a 256 teleport-ent-v(=teleport.version=)-linux--bin.tar.gz
+ $ curl -O https://cdn.teleport.dev/teleport-ent-v(=teleport.version=)-linux--bin.tar.gz
+ $ shasum -a 256 teleport-ent-v(=teleport.version=)-linux--bin.tar.gz
# Verify that the checksums match
- $ tar -xvf teleport-ent-v(=teleport.version=)-linux--bin.tar.gz
+ $ tar -xvf teleport-ent-v(=teleport.version=)-linux--bin.tar.gz
$ cd teleport-ent
$ sudo ./install
```
@@ -142,12 +166,12 @@ Use the appropriate commands for your environment to install your package.
will be slightly different:
```code
- $ curl https://get.gravitational.com/teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz.sha256
+ $ curl https://get.gravitational.com/teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz.sha256
#
- $ curl -O https://cdn.teleport.dev/teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz
- $ shasum -a 256 teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz
+ $ curl -O https://cdn.teleport.dev/teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz
+ $ shasum -a 256 teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz
# Verify that the checksums match
- $ tar -xvf teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz
+ $ tar -xvf teleport-ent-v(=teleport.version=)-linux--fips-bin.tar.gz
$ cd teleport-ent
$ sudo ./install
```
@@ -156,41 +180,66 @@ Use the appropriate commands for your environment to install your package.
-
- In the example commands below, update `$SYSTEM-ARCH` with the appropriate
- value (`amd64`, `arm64`, or `arm`). All example commands using this variable
- will update after one is filled out.
-
-
+
- After Downloading the `.deb` file for your system architecture, install it with
- `dpkg`. The example below assumes the `root` user:
+ Add the Teleport repository to your repository list:
```code
- $ dpkg -i ~/Downloads/teleport-ent_(=cloud.version=)_.deb
- Selecting previously unselected package teleport-ent.
- (Reading database ... 30810 files and directories currently installed.)
- Preparing to unpack teleport-ent_(=cloud.version=)_$SYSTEM_ARCH.deb ...
- Unpacking teleport-ent (=cloud.version=) ...
- Setting up teleport-ent (=cloud.version=) ...
+ # Download Teleport's PGP public key
+ $ sudo curl https://apt.releases.teleport.dev/gpg \
+ -o /usr/share/keyrings/teleport-archive-keyring.asc
+ # Source variables about OS version
+ $ source /etc/os-release
+ # Add the Teleport apt repository for cloud.
+ $ echo "deb [signed-by=/usr/share/keyrings/teleport-archive-keyring.asc] \
+ https://apt.releases.teleport.dev/${ID?} ${VERSION_CODENAME?} stable/cloud" \
+ | sudo tee /etc/apt/sources.list.d/teleport.list > /dev/null
+
+ $ sudo apt-get update
+ $ sudo apt-get install teleport-ent
```
-
+
- After Downloading the `.rpm` file for your system architecture, install it with `rpm`:
+ ```code
+ # Source variables about OS version
+ $ source /etc/os-release
+ # Add the Teleport yum repository for cloud.
+ $ sudo yum-config-manager --add-repo "$(rpm --eval "https://yum.releases.teleport.dev/$ID/$VERSION_ID/Teleport/%{_arch}/stable/cloud/teleport.repo")"
+ $ sudo yum install teleport-ent
+ #
+ # Tip: Add /usr/local/bin to path used by sudo (so 'sudo tctl users add' will work as per the docs)
+ # echo "Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin" > /etc/sudoers.d/secure_path
+ ```
+
+
+
```code
- $ rpm -i ~/Downloads/teleport-ent-(=cloud.version=)..rpm
- warning: teleport-ent-(=cloud.version=).$SYSTEM-ARCH.rpm: Header V4 RSA/SHA512 Signature, key ID 6282c411: NOKEY
+ # Source variables about OS version
+ $ source /etc/os-release
+ # Add the Teleport yum repository for cloud.
+ # Use the dnf config manager plugin to add the teleport RPM repo
+ $ sudo dnf config-manager --add-repo "$(rpm --eval "https://yum.releases.teleport.dev/$ID/$VERSION_ID/Teleport/%{_arch}/stable/cloud/teleport.repo")"
+
+ # Install teleport
+ $ sudo dnf install teleport-ent
+
+ # Tip: Add /usr/local/bin to path used by sudo (so 'sudo tctl users add' will work as per the docs)
+ # echo "Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin" > /etc/sudoers.d/secure_path
```
+ In the example commands below, update `$SYSTEM_ARCH` with the appropriate
+ value (`amd64`, `arm64`, or `arm`). All example commands using this variable
+ will update after one is filled out.
+
```code
- $ curl https://get.gravitational.com/teleport-ent-v(=cloud.version=)-linux--bin.tar.gz.sha256
+ $ curl https://get.gravitational.com/teleport-ent-v(=cloud.version=)-linux--bin.tar.gz.sha256
#
$ curl -O https://cdn.teleport.dev/teleport-ent-v(=cloud.version=)-linux-amd64-bin.tar.gz
$ shasum -a 256 teleport-ent-v(=cloud.version=)-linux-amd64-bin.tar.gz
diff --git a/docs/pages/installation.mdx b/docs/pages/installation.mdx
index 7e434307f31d2..13c2e9896bdd5 100644
--- a/docs/pages/installation.mdx
+++ b/docs/pages/installation.mdx
@@ -50,6 +50,33 @@ supports most features on Windows 10 and later.*
All installations include `teleport`, `tsh`, `tctl`, and `tbot`.
+### Feature support
+
+Some Teleport features have additional requirements:
+
+| Feature | Requirement | Debian | Ubuntu | CentOS/RHEL | AmazonLinux |
+|--------------------------------------------------------------------------------|---------------|--------------------------|----------|-------------|------------------------|
+| [Enhanced Session Recording](./server-access/guides/bpf-session-recording.mdx) | Kernel v5.8+ | 11, or 10 with backports | 20.04.2+ | 9+ | 2 (post 11/2021), 2023 |
+| Automatic Updates | systemd-based | 8+ | 16.04+ | 7+ | 2, 2023 |
+| Installation through apt/yum repos | systemd-based | 8+ | 16.04+ | 7+ | 2, 2023 |
+
+
+`apt` and `yum` repos don't expose packages for all distribution variants.
+When following installation instructions, you might need to replace `ID` with
+`ID_LIKE` to install packages of the closest supported distribution.
+
+Currently supported distributions (and `ID`) are:
+- RHEL >= 7 (`rhel`)
+- CentOS >= 7 (`centos`)
+- Debian >= 8 (`debian`)
+- Ubuntu >= 16.04 (`ubuntu`)
+- Amazon Linux 2 and 2023 (`amzn`)
+
+
+
+
+### Installation instructions
+
(!docs/pages/includes/permission-warning.mdx!)
(!docs/pages/includes/install-linux.mdx!)