WSL2로 리눅스 VM을 구축한 경우, 다음과 같이 연결한다.
VSCODE설정: WSL 설치

이제 리눅스 환경에서 code 명령어로 간단하게 VS code와 연결할 수 있다.
먼저 우분투 셸을 열고 VS code에서 열고싶은 디렉토리로 이동한다. 그 다음, 아래 명령어를 실행한다.
리눅스VM에 ssh 설치 (나는 칼리 리눅스에 설치함)
리눅스 vm에서 vs code 편집기를 사용한다는 것은 호스트 머신에서 리눅스에 원격으로 접속한 상태로 VS code를 사용한다는 것과 같다. 원격 접속을 하기 위해서는 ssh를 이용한다.
sudo apt-get install openssh-server
리눅스VM 포트 포워딩
현재 호스트와 게스트의 네트워크가 다르기때문에 포트 포워딩이 필요하다. 포트 포워딩이란 호스트에서 특정 포트로 접속하면 가상 환경으로 연결해주는 것을 말한다.

머신 > 설정에 들어가서 네트워크 > 고급 > 포트 포워딩 클릭

오른쪽의 + 규칙 추가 버튼 클릭

프로토콜은 TCP, 호스트 포트는 22, 게스트 포트는 22를 입력한 뒤, 확인 버튼을 눌러 저장한다.
· 호스트 포트는 호스트에서 리눅스에 접속할 때 사용하는 포트이다. 22가 아니라 다른 포트 번호로 작성해도 무방하다.
· 게스트 포트는 ssh 서버가 사용하는 포트인 22로 작성해야한다.
이제 VSCode에서 리눅스 ssh 서버로 접속하기 위한 설정을 진행한다.
Remote - SSH extensions을 설치한다.

이제 Remote - SSH의 기능을 실행할 수 있다. 리눅스 ssh 서버로의 연결을 등록하기 위해 Ctrl+Shift+P로 Figure10 같이 커맨드 팔레트를 열고, ssh를 검색한다.


목록에서 Remote-SSH: Open SSH Configuration File…을 클릭한 뒤 기본 config 파일 경로인 ~/.ssh/config를 선택하여 ssh config 파일을 연다.
config 파일은 여러 ssh 서버에 간편하게 접속할 수 있도록 호스트, 포트, 키 파일 등의 옵션을 미리 지정해 두는 파일이다. 기본 config 파일은 ~/.ssh/config 경로에 존재하지만, 만약 config 파일이 없다면 해당 경로에 생성하면 된다.
접속할 호스트를 등록하는 기본 구성은 다음과 같다.
Host [접속할 호스트 이름]
HostName [호스트 IP 주소]
Port [접속할 포트]
User [호스트 사용자 이름]
IdentityFile [접속시 사용할 개인 키 파일 경로]
ssh 개인 키(private key) 파일은 ssh-keygen 등을 이용하여 생성할 수 있다. 현재 ~/.ssh 경로 아래 개인 키 파일이 존재한다고 가정하며, 키 파일 생성 과정은 다음과 같다.

ssh-keygen 명령어 입력하고 나머지는 다 enter 치고 넘어갔다.
/home/kali/.ssh 위치로 가면

id_ed25519라는 private key와 id_ed25519.pub라는 public key가 생성되었다.
아래와 같이 config 파일을 작성한다.
Host kalivm
HostName 127.0.0.1
Port 22
User user
IdentityFile ~/.ssh/id_ed25519

VS code 설정: 리눅스 ssh 서버 연결
이제 생성한 호스트에 접속하기 위해 커맨트 팔레트에서 Remote-SSH: Connect to Host를 클릭하고, 앞서 작성한 Host 이름을 클릭한다.


새 윈도우가 열리고 윈도우 상단에 사용자 암호를 입력하는 창이 뜨면 리눅스 사용자의 암호를 입력하고 엔터를 눌러 접속을 완료 --> 아 왜 안되는데ㅠ(time out)
'공부중 > 시스템 해킹' 카테고리의 다른 글
| [Dreamhack] Linux memory Layout (0) | 2024.09.09 |
|---|---|
| [Dreamhack]x86-64 아키텍처 (0) | 2024.09.09 |
| 윈도우 환경 구축/WSL2 (0) | 2024.07.13 |
| 메모리 구조 이해하기 (0) | 2024.03.02 |
| 레지스터의 용도와 시스템콜 이해하기 (0) | 2024.02.02 |
댓글