728x90
우분투에서 텔레포트(teleport)를 설치하는 방법(3)
1. Teleport 패키지 다운로드 및 설치
Teleport 공식 웹사이트에서 패키지를 다운로드하여 수동으로 설치할 수도 있습니다.
Teleport 다운로드
wget https://cdn.teleport.dev/teleport-v17.0.1-linux-amd64-bin.tar.gz
압축 해제 및 설치
tar -xzf teleport-v17.0.1-linux-amd64-bin.tar.gz
sudo mv teleport/tsh teleport/tctl /usr/local/bin/
설치 확인
tsh version
Teleport v17.0.1 git:v17.0.1-0-gdc583710 go1.23.3
tctl version
Teleport v17.0.1 git:v17.0.1-0-gdc583710 go1.23.3
2. Teleport 서버에 접속
tsh 로그인
tsh를 사용하여 Teleport 서버에 로그인합니다.
로그인 명령 실행
tsh login --proxy=<PROXY_ADDRESS> --user=<USERNAME>
tsh login --proxy=teleport.scbyun.com --user=ssh_username
로그인 상태 확인
tsh status
$ tsh status
> Profile URL: https://teleport.scbyun.com:443
Logged in as: ssh_username
Cluster: teleport.scbyun.com
Roles: access, editor
Logins: root, ubuntu, ec2-user, vagrant
Kubernetes: enabled
Valid until: 2024-11-22 02:05:30 +0900 KST [valid for 12h0m0s]
Extensions: login-ip, permit-agent-forwarding, permit-port-forwarding, permit-pty, private-key-policy
Teleport 리소스 서버에 접속
로그인 후 Teleport 리소스 서버에 SSH로 접속할 수 있습니다.
리소스 목록 확인
tsh ls
$ tsh ls
Node Name Address Labels
--------- -------------- ------
node141 127.0.0.1:3022
node142 ⟵ Tunnel
리소스 서버 접속
tsh ssh node142
$ tsh ssh node142
root@node142:~$
3. 우분투 클라이언트에서 SSH 키를 사용하여 연결
Teleport 서버에서 인증받은 후 tsh를 통해 노드에 SSH로 연결할 수 있습니다.
키 파일 확인
현재 세션 키 확인
ls ~/.tsh/<cluster-name>/<username>/
$ ls -l ~/.tsh/keys/teleport.scbyun.com/
total 20
drwx------ 2 root root 37 Nov 21 14:05 cas
-rw-r----- 1 root root 791 Nov 21 14:05 certs.pem
-rw------- 1 root root 387 Nov 21 14:05 ssh_username
-rw------- 1 root root 1460 Nov 21 14:05 ssh_username.crt
-rw------- 1 root root 241 Nov 21 14:05 ssh_username.key
-rw------- 1 root root 81 Nov 21 14:05 ssh_username.pub
drwx------ 2 root root 42 Nov 21 14:05 ssh_username-ssh
SSH 키 파일 위치
cat ~/.tsh/keys/<cluster-name>/<username>
$ ls -l ~/.tsh/keys/teleport.scbyun.com/ssh_username
-rw------- 1 root root 387 Nov 21 14:05 /root/.tsh/keys/teleport.scbyun.com/ssh_username
키 인증서 확인
cat ~/.tsh/keys/<cluster-name>/<username>.pub
$ ls -l ~/.tsh/keys/teleport.scbyun.com/ssh_username.pub
-rw------- 1 root root 81 Nov 21 14:05 /root/.tsh/keys/teleport.scbyun.com/ssh_username.pub
키를 추출하여 SSH에 사용
Teleport에서 발급된 키를 일반 SSH 클라이언트에서 사용합니다.
키 파일 복사
cp ~/.tsh/keys/<cluster-name>/<username> ~/.ssh/teleport_id_rsa
cp ~/.tsh/keys/<cluster-name>/<username>.pub ~/.ssh/teleport_id_rsa-cert.pub
cp ~/.tsh/keys/teleport.scbyun.com/ssh_username ~/.ssh/teleport_id_rsa
cp ~/.tsh/keys/teleport.scbyun.com/ssh_username.pub ~/.ssh/teleport_id_rsa-cert.pub
권한 설정
chmod 600 ~/.ssh/teleport_id_rsa
chmod 600 ~/.ssh/teleport_id_rsa-cert.pub
직접 SSH 명령으로 연결
ssh -i ~/.ssh/teleport_id_rsa <USERNAME>@<NODE_IP>
ssh -i ~/.ssh/teleport_id_rsa ssh_username@192.168.0.142
SSH 구성 파일에 추가
- Teleport 키를 사용할 호스트를 추가로 설정합니다
vim ~/.ssh/config
Host teleport
HostName teleport.scbyun.com
Port 3022
User <username>
IdentityFile ~/.ssh/teleport_id_rsa
CertificateFile ~/.ssh/teleport_id_rsa-cert.pub
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
728x90
'리눅스' 카테고리의 다른 글
[draft] 우분투 배포판 업그레이드 (0) | 2024.11.26 |
---|---|
[draft] 우분투에서 NodeSource를 사용하여 nodejs를 설치하고 관리하는 방법 (0) | 2024.11.25 |
[draft] fdisk 명령어를 사용하여 디스크의 파일 시스템을 재구성하는 방법 (0) | 2024.11.22 |
[draft] arp 명령어 (0) | 2024.11.21 |
[draft] Vault에서 Syslog Audit Device를 활성화하는 방법 (0) | 2024.11.20 |