61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
title: Ubuntu Landscape
 | 
						|
---
 | 
						|
 | 
						|
## What is Ubuntu Landscape
 | 
						|
 | 
						|
From https://en.wikipedia.org/wiki/Landscape_(software)
 | 
						|
 | 
						|
:::note
 | 
						|
Landscape is a systems management tool developed by Canonical. It can be run on-premises or in the cloud depending on the needs of the user. It is primarily designed for use with Ubuntu derivatives such as Desktop, Server, and Core.
 | 
						|
:::
 | 
						|
 | 
						|
:::warning
 | 
						|
This requires authentik 0.10.3 or newer.
 | 
						|
:::
 | 
						|
 | 
						|
## Preparation
 | 
						|
 | 
						|
The following placeholders will be used:
 | 
						|
 | 
						|
- `landscape.company` is the FQDN of the Landscape server.
 | 
						|
- `authentik.company` is the FQDN of the authentik install.
 | 
						|
 | 
						|
Landscape uses the OpenID-Connect Protocol for single-sign on.
 | 
						|
 | 
						|
## authentik Setup
 | 
						|
 | 
						|
Create an OAuth2/OpenID-Connect Provider with the default settings. Set the Redirect URIs to `https://landscape.company/login/handle-openid`. Select all Managed Scopes.
 | 
						|
 | 
						|
Keep Note of the Client ID and the Client Secret.
 | 
						|
 | 
						|
Create an application and assign access policies to the application. Set the application's provider to the provider you've just created.
 | 
						|
 | 
						|
## Landscape Setup
 | 
						|
 | 
						|
On the Landscape Server, edit the file `/etc/landscape/service.conf` and add the following snippet under the `[landscape]` section:
 | 
						|
 | 
						|
```
 | 
						|
oidc-issuer = https://authentik.company/application/o/<slug of the application you've created>/
 | 
						|
oidc-client-id = <client ID of the provider you've created>
 | 
						|
oidc-client-secret = <client Secret of the provider you've created>
 | 
						|
```
 | 
						|
 | 
						|
Afterwards, run `sudo lsctl restart` to restart the Landscape services.
 | 
						|
 | 
						|
## Appendix
 | 
						|
 | 
						|
To make an OpenID-Connect User admin, you have to insert some rows into the database.
 | 
						|
 | 
						|
First login with your authentik user, and make sure the user is created successfully.
 | 
						|
 | 
						|
Run `sudo -u postgres psql landscape-standalone-main` on the Landscape server to open a PostgreSQL Prompt.
 | 
						|
Then run `select * from person;` to get a list of all users. Take note of the ID given to your new user.
 | 
						|
 | 
						|
Run the following commands to make this user an administrator:
 | 
						|
 | 
						|
```sql
 | 
						|
INSERT INTO person_account VALUES (<user id>, 1);
 | 
						|
INSERT INTO person_access VALUES (<user id>, 1, 1);
 | 
						|
```
 |