[ Window WSL2 ] Ubuntu 22.04.3 LTS 설치 및 리눅스 기본/ssh 연결 설정법

식빵·2024년 6월 8일
0

WSL2 설치

참고로 WSL2 를 이용하기 위해선 Windows 10 version 2004(Build 19041) 보다
높은 버전을 사용하거나 Windows 11 을 사용해야 합니다.


PowerShell 을 관리자 권한으로 실행하고 아래처럼 명령어를 입력합니다.
이러면 WSL2 설치는 끝입니다.

wsl --install

이후에 반드시 컴퓨터를 reboot 하고, wsl2 가 잘 설치되었는지 확인해준다.
확인법은 powershell 에서 아래처럼 명령어를 입력하면 됩니다.

wsl --status
# 아래와 같이 wsl 버전 정보가 2로 잘 찍히면 성공한겁니다.
# Default Version: 2




Microsoft Store - Ubuntu 22.04.3 LTS 다운로드


window 검색창을 사용해서 Microsoft Store 를 검색하고 클릭


상단 검색 bar 에 ubuntu 라고 입력하고 Enter.
이후에 검색 결과 나오면 그중에서 상단에 있는
Ubuntu 22.04.3 LTS 의 다운로드 버튼 클릭.


참고로 마우스를 가까이 대면 다운로드 버튼이 생깁니다.


이후에 설치 진행이 되고, 설치가 완료되면 윈도우 검색창에
Ubunutu 22.04.3 을 검색하고 Enter.


이후에 까만색 화면이 나오고, 만약 설치가 아직 진행 중이면
installing 이라는 문구가 보일 겁니다.

설치가 완료되면 Unix Name 을 지정하라고 나옵니다.
원하시는 호스트명을 지정하고 Enter 를 누릅니다.

이어서 password 를 지정하라는 문구가 나옵니다.
원하시는 비밀번호를 입력하고 Enter 하면 됩니다.




기본 설정


# 패키지 업데이트
sudo apt-get update && sudo apt-get upgrade -y

#한국어 설정
sudo apt-get install language-pack-ko -y
sudo vi /etc/default/locale
# vi 켜지면 기존 내용 지우고 아래처럼 2줄 작성
# LANG="ko_KR.UTF-8"
# LANGUAGE="ko_KR:ko:en_US:en"

# 시간설정
timedatectl set-timezone Asia/Seoul




로컬 PC 내에서 ssh 연결 설정


# 혹시 default 로 깔리는 게 있고, 그게 문제를 일으킬까봐 지우는 겁니다.
sudo apt remove openssh-server

# 이후 net-tools 까지 포함해서 재설치를 해주세요.
sudo apt upgrade && sudo apt install openssh-server net-tools

# ssh 설정파일을 변경해줍시다.
sudo vim /etc/ssh/sshd_config
# 주의!!! 파일 이름이 sshd_config 입니다. ssh_config 아닙니다!!!

처음 vim 으로 페이지를 열여보면 아래 그림과는 다르게
빨간 박스 친부분이 주석 표시가 되어 있을 겁니다.
주석을 풀어줍시다. 또한 value 도 조금 다를 수 있는데 그림과
동일하게 바꿔주면 됩니다.


이후에 ifconfig 를 통해서 아이피를 확인합니다.

이후에 putty 든 뭐든 ssh 연결 프로그램을 통해서
wsl 에 설치된 ubuntu 22.04 로 앞서 본 IP 로 로그인을 시도하면 됩니다.
참고로 id 와 password 는 Ubuntu 설치 시에 지정했던 Unix NamePassword 입니다.

주의사항 : 설치한 ubuntu 20.04.3 을 켜놓은 상태로 SSH 연결을 시도해야 합니다.

참고 : 뭔가 잘 안되면 설치한 ubuntu 에서 ssh 재실행을 해주세요
명령어: sudo service ssh restart




LAN 외부에서 ssh 연결을 하기 위한 설정법

만약에 자신의 LAN 환경을 벗어난 곳에서 WSL Ubuntussh 통신을 원하시면

  1. 공유기의 포트 포워딩 을 통해 자신의 HOST PC 로 연결할 Port 번호 지정
  2. Powershell관리자 권한으로 실행하고 아래처럼 명령어를 입력
netsh interface portproxy add v4tov4 `
listenport='<호스트 PC 에서 외부 요청을 받을 Port 번호>' `
listenaddress='0.0.0.0' `
connectport='<sshd_config 파일에서 지정했던 Port 번호>' `
connectaddress='<wsl linux 의 ifconfig 치면 나오는 것 중 eth0 의 ip 입력>'

명령어가 굉장히 직관적이죠?

참고로 v4tov4 외에도 아래와 같은 ip 버전별 매핑 방식이 제공되니
원하시는 방식을 잘 정하시기 바랍니다.

profile
백엔드를 계속 배우고 있는 개발자입니다 😊

0개의 댓글