VSCode의 Remote SSH로 VM 환경에서 개발

매번 메모 정도이지만, VSCode의 remote ssh라는 확장 기능을 사용해 VM에 SSH하는 방법을 씁니다.
MS의 공식 확장 기능입니다.

장점



리모트 환경을 사용해 개발할 때에, 로컬에 거의 아무것도 필요할 필요가 없습니다.


  • Python으로 개발한 사람의 경우
    remote에서 Python의 path를 지정하여 remote에서 디버그 할 수 있습니다.
  • 지금까지 Remote FS를 사용해 remote상의 파일을 관리하고 있던 사람도, 그것을 사용하지 않고 같은 일을 할 수 있다. 파일을 remote로 변경했을 때 Remote FS에 비해, 파일의 갱신이 빠르다.

  • 전제 조건


  • VM에 파일을 전송할 수있는 상태
  • 우분투 LTS 18.04

  • 방법



    ※GCP의 인스턴스를 사용하는 경우는 간략화한 방법으로 Remote SSH를 사용할 수 있다. GCP가 Authorized_key 설정 등을 해주기 때문.
    그 경우, 이하의 기사를 팔로우한 후에, 이 기사의 로컬의 pc로부터 커맨드 라인 경유로 ssh 해 보니까 팔로우하면 된다.
    h tps : // s p p s s. 네 t/2018/09/15/gcp-sh/

    1. 공개키와 비공개키의 작성


    $ ssh-keygen -t rsa -b 4096
    

    2. 원격 서버에 공개 키 전송(.pub 파일)



    3. 원격 서버의 "~/.ssh/"디렉토리에 대한 권한 변경(읽기, 쓰기, 실행)


    $ chmod 700 .ssh
    

    .ssh가 없을 때 스스로 만든다.

    4. "authorized_key" 파일의 권한 변경 (읽기, 쓰기)



    원격 서버의 "~/.ssh/"디렉토리에 있는, 없으면 만든다
    $ chmod 600 authorized_key
    

    5. 공개키를 "authorized_key"에 등록



    여기서는 id_rsa.pub 파일을 예로 들어
    $ mv id_rsa.pub ./.ssh/id_rsa.pub
    $ cat id_rsa.pub >> authorized_key
    

    6. set config of sshd



    sshd 설정 변경
    $ sudo vi /etc/ssh/sshd_config
    

    다음 설정을 켭니다.
    #PubkeyAuthentication yes
    #AuthorizedKeysFile      .ssh/authorized_keys
    

    7. restart sshd


    $ sudo service sshd restart
    

    8. 로컬 pc에서 명령 줄을 통해 ssh 해보십시오.



    9. VScode의 remote development 확장 기능 설치



    이전에는 Vscode Insiders에서만 사용 가능했지만, 2019년 GW당 VScode 업데이트로 VSCode에서도 사용할 수 있게 되었다.

    10. VScode의 데스크탑 마크가 나타나므로 거기를 누르면, 기어 마크 거기를 누르고,



    설정 파일 만들기
    Host [host-alias]
        HostName [XX.XX.XX.XXX]
        User [your-username]
        IdentityFile [C:/Users/user/.ssh/id_rsa]
    

    host-alias
    Host [[email protected]]
    

    그렇게하면 화가났다. 왜일까. (2019.07.10 추가)

    11. SSH 시작





    스쿠쇼와 같은 Host가 나타나므로 여기를 마우스 오른쪽 버튼으로 클릭하면 SSH가 가능합니다.

    이상입니다.
    고마워요.
    뭔가 지적이 있으면 꼭 부탁드립니다.

    좋은 웹페이지 즐겨찾기