Difference between revisions of "RMU build Gen-1.5: II. Teleport - C. Share RMU Services Via Teleport"

From Internet Computer Wiki
Jump to: navigation, search
(Creating the page)
Line 17: Line 17:
 
#* Ensure that <code>—-app-name</code> has the correct data center code (dc) code in the following command (IE tp1, bu1, dl1, etc)
 
#* Ensure that <code>—-app-name</code> has the correct data center code (dc) code in the following command (IE tp1, bu1, dl1, etc)
 
#* <code>sudo teleport configure --output=file --proxy=teleport.<domain name>:443 --token=/var/lib/teleport/token --roles=app,node --app-name=<dc>-proxmox-webui --app-uri=https://localhost:8006</code>
 
#* <code>sudo teleport configure --output=file --proxy=teleport.<domain name>:443 --token=/var/lib/teleport/token --roles=app,node --app-name=<dc>-proxmox-webui --app-uri=https://localhost:8006</code>
#**[[File:Screenshot 2023-12-20 at 11.17.14 AM.png]]
+
#**[[File:Screenshot 2023-12-20 at 11.17.14 AM.png|alt=|800x800px]]
 
# Save the token generated on the Teleport server:
 
# Save the token generated on the Teleport server:
#* <code>sudo vi /var/lib/teleport/token</code>
+
#*<code>sudo vi /var/lib/teleport/token</code>
#**[[File:Screenshot 2023-10-30 at 3.36.42 PM.png]]
+
#**[[File:Screenshot 2023-10-30 at 3.36.42 PM.png|alt=|800x800px]]
 
# Save the ca_pin generated on the Teleport server:
 
# Save the ca_pin generated on the Teleport server:
 
#* <code>sudo vi /var/lib/teleport/ca_pin</code>
 
#* <code>sudo vi /var/lib/teleport/ca_pin</code>
Line 92: Line 92:
 
#* add an entry of <code>10.10.100.22 teleport.<domain></code>
 
#* add an entry of <code>10.10.100.22 teleport.<domain></code>
 
#**Note: what you made [here](https://www.notion.so/New-RMU-Build-Gen-1-5-28778d147e164cd1b668ebaa759fdcda?pvs=21)
 
#**Note: what you made [here](https://www.notion.so/New-RMU-Build-Gen-1-5-28778d147e164cd1b668ebaa759fdcda?pvs=21)
           
+
#**[[File:Screenshot 2023-12-20 at 11.27.11 AM.png|800x800px]]
            ![Screenshot 2023-12-20 at 11.27.11 AM.png](https://prod-files-secure.s3.us-west-2.amazonaws.com/3c759fcc-b170-476c-83a3-0afa17315dcd/5a669147-e25f-4186-ba8e-5dafba14df76/Screenshot_2023-12-20_at_11.27.11_AM.png)
+
 
           
 
 
#* Save and quit the file
 
#* Save and quit the file
 
# Start the teleport agent:
 
# Start the teleport agent:
 
#* <code>sudo systemctl enable teleport</code>
 
#* <code>sudo systemctl enable teleport</code>
 
#* <code>sudo systemctl start teleport</code>
 
#* <code>sudo systemctl start teleport</code>

Revision as of 20:37, 23 February 2024

Ref: https://www.youtube.com/watch?v=cvW4b96aPL0

You can use proxmox to open separate shell windows to make copying/pasting between them easier.

On the teleport server:

  1. Create a short lived token to “invite” the Proxmox application. Be sure to edit the <dc> portion in the following command
    • sudo tctl tokens add --type=app,node --app-name=<dc>-proxmox-webui --app-uri=https://localhost:8006
    • Take note of the token and ca_pin values

On the rmu server:

  1. Install pre-req packages:
    • apt update -y && apt upgrade -y && apt install sudo -y
  2. Install the teleport agent:
  3. create the teleport application config:
    • Ensure that the proxy is pointed to your teleport domain name in the following command
    • Ensure that —-app-name has the correct data center code (dc) code in the following command (IE tp1, bu1, dl1, etc)
    • sudo teleport configure --output=file --proxy=teleport.<domain name>:443 --token=/var/lib/teleport/token --roles=app,node --app-name=<dc>-proxmox-webui --app-uri=https://localhost:8006
  4. Save the token generated on the Teleport server:
    • sudo vi /var/lib/teleport/token
  5. Save the ca_pin generated on the Teleport server:
    • sudo vi /var/lib/teleport/ca_pin
           ![Screenshot 2023-12-18 at 4.24.07 PM.png](https://prod-files-secure.s3.us-west-2.amazonaws.com/3c759fcc-b170-476c-83a3-0afa17315dcd/f5cc3136-c5da-4e04-88bc-1c31614affcd/Screenshot_2023-12-18_at_4.24.07_PM.png)
           
  1. Edit the /etc/teleport.yaml to update the ca_pin resource:
    • sudo vi /etc/teleport.yaml
    • Update the ca_pin resource with the path to the ca_pin file /var/lib/teleport/ca_pin
    • Under ssh_service: in the same indentation of enabled: “yes” add the following
      • Note: change <dc> to your site’s DC code (IE tp1, sh1, bu1, dl1 etc.)
        jsx
                      labels:
                        dc: "<dc>"      
                        login: "root"
    • Remove commands: section
      yaml
                  commands:
                    - name: hostname
                      command: [hostname]
                      period: 1m0s
    • Under name: <dc>-proxmox-webui , in the same indentation of insecure_skip_verify:, change the value of insecure_skip_verify: to true and add the following:
      • Note: change <dc> to your site’s DC code (IE tp1, sh1, bu1, dl1 etc.)
        jsx
                          labels:
                            dc: "<dc>"
    • Sample /etc/teleport.yaml file:
      yaml
              version: v3
              teleport:
                nodename: rmu
                data_dir: /var/lib/teleport
                join_params:
                  token_name: /var/lib/teleport/token
                  method: token
                proxy_server: teleport.<dc>.<domain.name>:443
                log:
                  output: stderr
                  severity: INFO
                  format:
                    output: text
                ca_pin: /var/lib/teleport/ca_pin
                diag_addr: ""
              auth_service:
                enabled: "no"
              ssh_service:
                enabled: "yes"
                labels:
                  dc: "<dc>"
                  login: "root"
              proxy_service:
                enabled: "no"
                https_keypairs: []
                https_keypairs_reload_interval: 0s
                acme: {}
              app_service:
                enabled: "yes"
                debug_app: false
                apps:
                - name: <dc>-proxmox-webui
                    uri: https://localhost:8006
                    public_addr: ""
                    insecure_skip_verify: true
                    labels:
                      dc: "<dc>"
  1. Add teleport to /etc/hosts
  • sudo vi /etc/hosts
    • Save and quit the file
  1. Start the teleport agent:
    • sudo systemctl enable teleport
    • sudo systemctl start teleport