-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
website/docs: endpoint devices #18634
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
dewi-tik
wants to merge
54
commits into
main
Choose a base branch
from
website/docs--endpoint-devices
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+1,456
−0
Draft
Changes from 36 commits
Commits
Show all changes
54 commits
Select commit
Hold shift + click to select a range
767251d
Initial
dewi-tik 9aae663
WIP
dewi-tik 0af80b0
WIP
dewi-tik f882e7e
WIP
dewi-tik 851428d
WIP
dewi-tik 8914a44
WIP
dewi-tik 1fda132
WIP
dewi-tik 8aaad46
WIP
dewi-tik 56abb58
WIP
dewi-tik a809faa
WIP
dewi-tik 3a6b578
WIP
dewi-tik d837365
WIP
dewi-tik b265f85
WIP
dewi-tik 6b54784
WIP
dewi-tik d737f31
WIP
dewi-tik 1c6a43c
WIP
dewi-tik d6950f5
WIP
dewi-tik 6c1bcb2
WIP
dewi-tik 533c0e7
WIP
dewi-tik 250c9b0
WIP
dewi-tik 2303dd0
WIP
dewi-tik 0adfe1d
WIP
dewi-tik 20671ef
WIP
dewi-tik c8ce5fb
WIP
dewi-tik 27a3945
WIP
dewi-tik 7ba8799
WIP
dewi-tik 8e65955
WIP
dewi-tik 6c5ec1f
Apply suggestions from code review
dewi-tik 81f6780
Apply suggestions from code review
dewi-tik 53d1776
Apply suggestions
dewi-tik e0123a1
Apply suggestions
dewi-tik c9e1137
Apply suggestions from code review
dewi-tik 8ebb4f5
Apply suggestions from code review
dewi-tik 38b8f25
WIP
dewi-tik d0d96af
Apply suggestions from code review
dewi-tik fcb87d6
WIP
dewi-tik d6ffae5
WIP
dewi-tik c4ecd15
WIP
dewi-tik 7d3a154
WIP
dewi-tik dac2974
WIP
dewi-tik 6e4cd1f
WIP
dewi-tik eebfd45
WIP
dewi-tik 699f1c4
fixes
BeryJu 807de9c
WIP
dewi-tik 81cc182
Optimised images with calibre/image-actions
authentik-automation[bot] bc90f47
Optimised images with calibre/image-actions
authentik-automation[bot] 6a0340a
Optimised images with calibre/image-actions
authentik-automation[bot] dfc2c85
Optimised images with calibre/image-actions
authentik-automation[bot] 8f8ed87
Optimised images with calibre/image-actions
authentik-automation[bot] a9bb042
Optimised images with calibre/image-actions
authentik-automation[bot] a405e42
Optimised images with calibre/image-actions
authentik-automation[bot] ed62da6
Fix anchor
dewi-tik eea81f3
Update website/docs/endpoint-devices/index.mdx
dewi-tik 56aec96
WIP
dewi-tik File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
15 changes: 15 additions & 0 deletions
15
website/docs/add-secure-apps/flows-stages/stages/endpoint/index.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| --- | ||
| title: Endpoint stage | ||
| --- | ||
|
|
||
| This stage integrates with [Endpoint Device](../../../../endpoint-devices/index.mdx) functionality and allows authentik to verify whether the device executing a flow is registered. | ||
|
|
||
| The Endpoint stage fetches [device facts](../../../../endpoint-devices/device-compliance/device-reporting.md#device-facts) via a configured [connector](../../../../endpoint-devices/device-compliance/connectors.md) and injects them into the flow context. These device facts can be used by other stages and policies to make device compliance decisions. | ||
|
|
||
| ## Connector | ||
|
|
||
| Select the [connector](../../../../endpoint-devices/device-compliance/connectors.md) that the Endpoint stage will use to obtain device facts. | ||
|
|
||
| ## Mode | ||
|
|
||
| Select whether the presence of a registered endpoint device is required for the stage to succeed. |
14 changes: 14 additions & 0 deletions
14
website/docs/endpoint-devices/authentik-agent/agent-deployment/index.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| --- | ||
| title: Deployment | ||
| sidebar_label: Deployment | ||
| --- | ||
|
|
||
| import DocCardList from "@theme/DocCardList"; | ||
|
|
||
| You can deploy the authentik Agent on [Linux](./linux.md), [macOS](./macos.md), and [Windows](./windows.md) devices. | ||
|
|
||
| Documentation for large-scale deployments using [Mobile Device Management (MDM)](./mdm.mdx) tools is also available. | ||
|
|
||
| Select a topic below to continue: | ||
|
|
||
| <DocCardList /> | ||
87 changes: 87 additions & 0 deletions
87
website/docs/endpoint-devices/authentik-agent/agent-deployment/linux.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,87 @@ | ||
| --- | ||
| title: Deploy authentik Agent on Linux | ||
dewi-tik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| sidebar_label: Linux | ||
| tags: [authentik Agent, linux, deploy, packages] | ||
| --- | ||
|
|
||
| ## What it can do | ||
|
|
||
| - Retrieves information about the host and reports it to authentik, see [Device Compliance](../../device-compliance/index.mdx). | ||
| - Authorize Sudo elevation, see [Sudo authorization](../../device-authentication/sudo-authorization.md). | ||
| - SSH to Linux hosts using authentik credentials, see [SSH authentication](../../device-authentication/ssh-authentication.mdx). | ||
| - Authenticate CLI applications using authentik credentials, see [CLI application authentication](../../device-authentication/cli-app-authentication/index.mdx). | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| You must [configure your authentik deployment](../configuration.md) to support the authentik Agent. | ||
|
|
||
| ## Install the authentik Agent on Linux | ||
|
|
||
| (TODO - guide via UI) | ||
|
|
||
| Follow these steps to install the authentik Agent on your Linux device: | ||
|
|
||
| 1. Open a Terminal session and install the required GPG key: | ||
|
|
||
| ```sh | ||
| curl -fsSL https://pkg.goauthentik.io/keys/gpg-key.asc | sudo gpg --dearmor -o /usr/share/keyrings/authentik-keyring.gpg | ||
| ``` | ||
|
|
||
| 2. Add the repository: | ||
|
|
||
| ```sh | ||
| echo "deb [signed-by=/usr/share/keyrings/authentik-keyring.gpg] https://pkg.goauthentik.io stable main" | sudo tee /etc/apt/sources.list.d/authentik.list | ||
| ``` | ||
|
|
||
| 3. Update your repositories and install the authentik Agent packages: | ||
|
|
||
| ```sh | ||
| sudo apt update | ||
| sudo apt install authentik-cli authentik-agent authentik-sysd | ||
| ``` | ||
|
|
||
| 4. Confirm that the authentik Agent is installed: | ||
|
|
||
| ````sh | ||
| ak | ||
| You should see a response that starts with: `authentik CLI v<version_number>` | ||
|
|
||
| ## Enable device authentication | ||
|
|
||
| To enable [device authentication features](../../device-authentication/index.mdx), the device must be connected to an authentik deployment. To do so, follow these steps: | ||
|
|
||
| 1. Open a Terminal session and run the following command: | ||
|
|
||
| ```sh | ||
| ak config setup --authentik-url https://authentik.company | ||
| ```` | ||
|
|
||
| 2. Your default browser will open and direct you to the authentik login page. Once authenticated, the authentik Agent will be configured. | ||
|
|
||
| ## Enable device compliance and SSH access | ||
|
|
||
| To enable [device compliance features](../../device-compliance/index.mdx) and the device [accepting SSH connections](../../device-authentication/ssh-authentication.mdx), you must join the device to an authentik domain. This can be done via the CLI or by editing a configuration file. | ||
|
|
||
| ### CLI | ||
|
|
||
| 1. Open a Terminal session and run the following command: | ||
|
|
||
| ```sh | ||
| ak-sysd domains join <deployment_name> --authentik-url https://authentik.company | ||
| ``` | ||
|
|
||
| - `deployment_name` is the name that will be used to identify the authentik deployment on the device. | ||
| - `https://authentik.company` is the fully qualified domain name of the authentik deployment. | ||
|
|
||
| 2. (TODO) | ||
|
|
||
| ### Configuration file | ||
|
|
||
| 1. Create the following file: `/etc/authentik/domains/ak.json` | ||
| 2. Paste the following values into the file: | ||
|
|
||
| (TODO) JSON codeblock | ||
|
|
||
| ## Logging | ||
|
|
||
| authentik Agent logs are available via the system journal (`systemd`) or `syslog`, depending on the distribution. | ||
72 changes: 72 additions & 0 deletions
72
website/docs/endpoint-devices/authentik-agent/agent-deployment/macos.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,72 @@ | ||
| --- | ||
| title: Deploy authentik Agent on macOS | ||
| sidebar_label: macOS | ||
| tags: [authentik Agent, mac, macos, deploy] | ||
| --- | ||
|
|
||
| ## What it can do | ||
|
|
||
| - Retrieves information about the host for use in authentik, see [Device Compliance](../../device-compliance/index.mdx). | ||
| - Authorize Sudo elevation, see [Sudo authorization](../../device-authentication/sudo-authorization.md). (TODO - needs testing) | ||
| - SSH to Linux hosts using authentik credentials, see [SSH authentication](../../device-authentication/ssh-authentication.mdx). | ||
dewi-tik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| - Authenticate CLI applications using authentik credentials, see [CLI application authentication](../../device-authentication/cli-app-authentication/index.mdx). | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| You must [configure your authentik deployment](../configuration.md) to support the authentik Agent. | ||
|
|
||
| ## Install the authentik Agent | ||
|
|
||
| (TODO - guide via UI) | ||
|
|
||
| Follow these steps to install the authentik Agent on your macOS device: | ||
|
|
||
| 1. Open the [authentik Platform Packages](https://pkg.goauthentik.io) page. | ||
| 2. Under **Desktop packages** click on **macOS** to download the macOS package. | ||
dewi-tik marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| 3. Once the download is complete, attempt to install the package. Default Apple security settings should block the install. | ||
| - This can be avoided by Option + Right Clicking the package and clicking **Open**. | ||
| - Alternatively use the following command to remove the package from quarantine: `xattr -r -d com.apple.quarantine "$HOME/Downloads/authentik agent installer.pkg"` | ||
| 4. If prompted, enter your login password and click OK. You should now be able to install the package. | ||
| 5. Continue through the installation wizard steps. | ||
| 6. Confirm that the authentik Agent is installed by opening a Terminal window and entering the following command: `ak` | ||
dewi-tik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| You should see a response that starts with: `authentik CLI v<version_number>` | ||
dewi-tik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| ## Enable device authentication | ||
|
|
||
| To enable [device authentication features](../../device-authentication/index.mdx), you must connect the device to an authentik deployment. To do so, follow these steps: | ||
|
|
||
| 1. Open a Terminal session and run the following command: | ||
|
|
||
| ```sh | ||
| ak config setup --authentik-url https://authentik.company | ||
| ``` | ||
|
|
||
| 2. Your default browser will open and direct you to the authentik login page. Once authenticated, the authentik Agent will be configured. | ||
|
|
||
| ## Enable device compliance | ||
|
|
||
| To enable [device compliance features](../../device-compliance/index.mdx), you must join the device to an authentik domain. This can be done via the CLI or by editing a configuration file. | ||
|
|
||
| ### CLI | ||
|
|
||
| 1. Open a Terminal session and run the following command: | ||
|
|
||
| ```sh | ||
| ak-sysd domains join <deployment_name> --authentik-url https://authentik.company | ||
| ``` | ||
|
|
||
| - `deployment_name` is the name that will be used to identify the authentik deployment on the device. | ||
| - `https://authentik.company` is the fully qualified domain name of the authentik deployment. | ||
|
|
||
| 2. (TODO) | ||
|
|
||
| ### Configuration file | ||
|
|
||
| 1. Create the following file: `/etc/authentik/domains/ak.json` | ||
| 2. Paste the following values into the file: | ||
|
|
||
| (TODO) JSON codeblock | ||
|
|
||
| ## Logging | ||
|
|
||
| The authentik Agent uses macOS's native logging abilities. To retrieve the logs, open the Console application and then filter for authentik-related processes such as `authentik-agent` or `authentik-sysd`. | ||
23 changes: 23 additions & 0 deletions
23
website/docs/endpoint-devices/authentik-agent/agent-deployment/mdm.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| --- | ||
| title: Deploy authentik Agent via MDM | ||
| sidebar_label: MDM | ||
| tags: [authentik Agent, mdm, fleet, deploy] | ||
| --- | ||
|
|
||
| authentik Agent can be deployed at scale to multiple devices via Mobile Device Management (MDM) tools. (TODO) | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| You must [configure your authentik deployment](../configuration.md) to support the authentik Agent. | ||
|
|
||
| ## Windows | ||
|
|
||
| (TODO) | ||
|
|
||
| ## Linux | ||
|
|
||
| (TODO) | ||
|
|
||
| ## macOS | ||
|
|
||
| (TODO) |
110 changes: 110 additions & 0 deletions
110
website/docs/endpoint-devices/authentik-agent/agent-deployment/windows.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,110 @@ | ||
| --- | ||
| title: Deploy authentik Agent on Windows | ||
| sidebar_label: Windows | ||
| tags: [authentik Agent, windows] | ||
| --- | ||
|
|
||
| ## What it can do | ||
|
|
||
| - Retrieves information about the host for use in authentik, see [Device Compliance](../../device-compliance/index.mdx). | ||
| - SSH to Linux hosts using authentik credentials, see [SSH authentication](../../device-authentication/ssh-authentication.mdx). | ||
| - Authenticate CLI applications using authentik credentials, see [CLI application authentication](../../device-authentication/cli-app-authentication/index.mdx). | ||
|
|
||
| :::warn Supported Windows Versions | ||
| The authentik Agent is currently only tested on Windows 11 and Windows Server 2022. Other versions may work but are untested. | ||
| ::: | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| You must [configure your authentik deployment](../configuration.md) to support the authentik Agent. | ||
|
|
||
| ## Install the authentik Agent | ||
|
|
||
| (TODO - guide via UI) | ||
|
|
||
| Follow these steps to install the authentik Agent on your Windows device: | ||
|
|
||
| 1. Open the [authentik Platform Packages](https://pkg.goauthentik.io) page. | ||
| 2. Under **Desktop packages** click on **Windows** to download the Windows MSI file. | ||
| 3. Once the download is complete, install the MSI file. | ||
| 4. _(Optional)_ During installation, select [Windows Credential Provider](#windows-credential-provider) if you want to log in to the Windows device using authentik credentials. | ||
|
|
||
| 5. Confirm that the authentik Agent is installed by opening a PowerShell or Terminal window and entering the following command: `ak` | ||
dewi-tik marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| You should see a response that starts with: `authentik CLI v<version_number>` | ||
dewi-tik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| ## Enable device authentication | ||
|
|
||
| To enable [device authentication features](../../device-authentication/index.mdx), you must connect the device to an authentik deployment. To do so, follow these steps: | ||
|
|
||
| 1. Open a Terminal and run the following command: | ||
|
|
||
| ```sh | ||
| ak config setup --authentik-url https://authentik.company | ||
| ``` | ||
|
|
||
| 2. Your default browser will open and direct you to the authentik login page. Once authenticated, the authentik Agent will be configured. | ||
|
|
||
| ## Enable device compliance | ||
|
|
||
| To enable [device compliance features](../../device-compliance/index.mdx), you must join the device to an authentik domain. This can be done via the CLI or by editing a configuration file. | ||
|
|
||
| ### CLI | ||
|
|
||
| 1. Open a Terminal session and run the following command: | ||
dewi-tik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| ```sh | ||
| ak-sysd domains join <deployment_name> --authentik-url https://authentik.company | ||
| ``` | ||
|
|
||
| - `deployment_name` is the name that will be used to identify the authentik deployment on the device. | ||
| - `https://authentik.company` is the fully qualified domain name of the authentik deployment. | ||
|
|
||
| 2. (TODO) | ||
|
|
||
| ### Configuration file | ||
|
|
||
| 1. Create the following file: (TODO) windows filepath | ||
| 2. Paste the following values into the file: | ||
|
|
||
| (TODO) JSON codeblock | ||
|
|
||
| ## Windows Credential Provider | ||
|
|
||
| Windows Credential Provider (WCP) is a component of the authentik Agent that allows logging in to Windows workstations using authentik credentials. | ||
|
|
||
| It currently only supports local login; RDP login is not supported. | ||
|
|
||
| :::warning | ||
|
|
||
| - When WCP is enabled, the password of the Windows user account that's used to login is set to a random string. | ||
| - WCP can cause issues with user encrypted directories. | ||
| - Support with Active directory has not been confirmed yet. | ||
| - Offline login is currently not supported. | ||
| ::: | ||
|
|
||
| #### Configure Windows Credential Provider | ||
|
|
||
| You'll need to add a registry entry for WCP to work: | ||
|
|
||
| 1. On the Windows device, open the Notepad application. | ||
| 2. Paste the following block of text into Notepad: | ||
|
|
||
| ```powershell | ||
| Windows Registry Editor Version 5.00 | ||
|
|
||
| [HKEY_CLASSES_ROOT\CLSID\{7BCC7941-18BA-4A8E-8E0A-1D0F8E73577A}] | ||
dewi-tik marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| "URL"="https://authentik.company" | ||
| "ClientID"="authentik-cli" | ||
| ``` | ||
|
|
||
| Where `URL` is the FQDN of your authentik deployment and `ClientID` is the Client ID of the [`authentik-cli` provider](../configuration.md#create-an-application-and-provider-in-authentik-for-cli). | ||
|
|
||
| 3. Save the file as `authentik.reg` and ensure that **Save as type** is set to **All Files**. | ||
| 4. Locate the `authentik.reg` file in File Explorer, right-click it and select **Merge**. | ||
| 5. Approve the admin prompt. | ||
|
|
||
| ## Logging | ||
|
|
||
| The authentik Agent primarily outputs logs to Windows Event Viewer. | ||
dewi-tik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| WCP logs to the `wcp.log` located in `C:\Program Files\Authentik Security Inc\wcp`. | ||
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.