Katacoda 환경에 SSH 로그인하는 방법

4228 단어 SSH카타코다

소개



핸즈온 등으로 일시적인 서버 환경으로서 이용할 수 있다 Katacoda 는 매우 편리하네요.
그러나 브라우저에서 액세스해야하므로 일반적으로 터미널 작업도 브라우저에서 수행해야합니다.
그래서 PC에서 ngrok을 통해 SSH 액세스하는 방법을 시도했습니다.



준비



1. ngrok 계정 등록 및 액세스 토큰 생성



ngrok 계정을 등록하고 액세스 토큰을 만듭니다.
무료 플랜의 경우 생성할 수 있는 액세스 토큰은 하나입니다.



2. Katacoda 환경의 SSH 키 (비밀 키) 취득



Katacoda 환경을 시작하여 SSH 키(개인 키)를 보고 PC에 저장합니다.
$ cat .ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIJJwIBAAKCAgEAqqIFkwTmb7C3M+2cc+4uPmdNFgNNWPsaTbL1Igum5AfBeD4b
lZCjJ/sMOxf1LS3EPajulNSvH+RaZA5nkEC71e7mApxu1+t4mvp4z4BfHrhea6Vr
5oxuWc/+oCxn/PsBTQuMl8o1Oxu1XHuffyXW2j1HTpgN2i9lijMaHmvyAzkxADkR
XMjCzTSXctMmDcS3xJe8NyGNdqaP3D29lSnqiaot1KsCa6A2IwjreX0uBadLb872
4lz/Pp24XdLk0xJILZd/xVNKM0AQB4DulJW0ldbCRCI2RvueNxbUX1dLW5lMk+/j
dDRjmWCdxUNQfzKz+h/Dv/GIYmkAy8JC+c4cT6lvXMgGcNtO7mWzNuqIXwkFDJha
GCfXwQP3be2l28Oa29JYoRWGTKveDVItwASwwRLE/SefpiaJnZVBw8B8c7XIzvCZ
04T+YgXGJjYqgJ4W5+9QL6/Gc9bx1T9ExQvH+NDZyvwO58E0MNGkPh9LvhBq8fto
FZklJcEMgw1JRyaRCNCHn1rXZgamLzMn1Q3/EhkqJZHF1CcV+t4ghRMjzMjC1Fi2
z3MEYZVJ+hujVQyOrC8H73nlxSaabkjMflqnN2ZshByI/5lbhLsoFZHtwXeP7/Hu
KOmnUfd8hfxbqtENGzIYH9sQsFRUmqpbWv6OZtMDDcAjtzbgywmYyBY9/r8CAwEA
AQKCAgBhDgl3p3jfHLgIDGZKNrcM/bsGA1jSfPloKptuAwypdZPhLgqIlx2GlzBM
yILHcNnHbLhP5W27CSs08FCN55QvylQANjSCEkimdkOTW2Q/WAU024G1QDlgUoN1
XezEI42I4kHU8Mo4Vblh4ltFeiNsPSC7Hpf6e60Y35pCpYmhtb0ecFdk3DiZegmO
(省略)

3. Katacoda 시작 스크립트 준비



다음 흐름에서 시작 스크립트를 작성합니다.
  • ngrok 프로그램 (zip 파일) 다운로드
  • zip 파일 압축 풀기
  • 액세스 토큰 등록
  • ngrok 시작

  • foreground.sh
    wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
    unzip *.zip
    ./ngrok authtoken [アクセストークン]
    ./ngrok tcp 22
    

    절차



    1. Katacoda 환경 시작



    Katacoda 시나리오를 실행하여 환경을 시작합니다.
    ngrok 의 무료 플랜은 기동할 때마다 접속처 (호스트명과 포트 번호)가 바뀌므로 메모해 둡니다.
    다음 예제에서는 호스트 이름: 0.tcp.ngrok.io, 포트 번호: 17786입니다.



    2. PC에서 SSH 연결



    준비 2.에서 취득한 SSH 키(비밀 키)를 파일명: id_rsa 로 저장했을 경우의 커멘드입니다.
    $ ssh -i ./id_rsa -p [ポート番号] root@[ホスト名]
    
    # 上記の例
    $ ssh -i ./id_rsa -p 17786 [email protected]
    

    ※ Are you sure you want to continue connecting (yes/no)? 라고 들었을 경우는 yes 라고 대답합니다.

    응용 예



    ngrok 부팅 옵션을 변경하면 PC에서 VNC 연결로 데스크톱 화면을 볼 수 있습니다.
    PC에서 VNC 연결할 때 암호를 password로 설정하여 vncserver를 시작하는 예입니다.
    PC의 VNC Viewer에서 연결할 때 호스트 이름, 포트 번호 및 암호를 지정합니다.

    foreground.sh
    printf "password\npassword\n\n" | vnc4passwd
    nohup vncserver -geometry 1366x768
    
    wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
    unzip *.zip
    ./ngrok authtoken [アクセストークン]
    ./ngrok tcp 5901
    

    좋은 웹페이지 즐겨찾기