이전 포스팅에서 다뤘던
[WSL(Windows Subsystem for Linux) 설치 및 설정]
내용을 참고하시면, 이번 주제에 대한 배경 지식이나 기초 정보를 확인하실 수 있습니다!
🖥️ WSL에서 SSH 설정하기
WSL에서 SSH를 사용하려면 SSH 서버를 활성화하고, SSH를 통해 외부에서 접속 가능하도록 설정해야 합니다. 아래 단계에 따라 설정하면 됩니다.
🚀 1. SSH 설치 확인
WSL에서 SSH를 사용하려면 SSH 서버가 설치되어 있어야 합니다. Ubuntu 등 WSL 배포판을 사용하고 있다면, 다음 명령어로 SSH 설치 여부를 확인합니다.
sudo apt update && sudo apt install openssh-server -y
🔍 2. SSH 서버 포트 확인하기
기본적으로 SSH 서버는 22번 포트를 사용합니다. SSH 서버가 올바르게 설치된 후에는 ss
명령어로 포트 상태를 확인할 수 있습니다.
sudo ss -tuln | grep 22
이 명령어는 현재 열려 있는 포트를 확인하고, 22번 포트가 열려 있는지 확인해줍니다. 만약 이 명령어의 출력에 22번 포트가 표시된다면, SSH 서버가 올바르게 작동 중이라는 의미입니다.
🟢 3. SSH 서버 상태 확인
이제 SSH 서버가 실행 중인지 확인해야 합니다. 다음 명령어를 사용하면 SSH 서버의 현재 상태를 알 수 있습니다.
sudo service ssh status
- 상태가 active(running)으로 표시된다면, SSH 서버가 정상적으로 실행 중인겁니다.
- 만약 inactive이나 stopped 상태로 표시되면 SSH 서버를 시작해야 합니다.
▶️ 4. SSH 서버 시작하기
SSH 서버가 비활성화 상태라면 다음 명령어로 시작할 수 있습니다.
sudo service ssh start
이제 SSH 서버가 실행되었고, 외부에서 접근할 수 있는 상태가 되었습니다. 그러나, 기본 설정으로는 비밀번호 인증이 비활성화되어 있을 수 있습니다. 이를 활성화해야 외부에서 비밀번호를 사용해 접속할 수 있습니다.
🔐 5. 비밀번호 인증 설정
SSH 서버에서 비밀번호 인증을 활성화하려면 SSH 설정 파일을 수정해야 합니다.
- SSH 설정 파일을 엽니다.
sudo vi /etc/ssh/sshd_config
- 파일을 열었다면,
PasswordAuthentication
옵션을 찾고, 해당 라인을 수정합니다.
- 만약 이 옵션이 주석 처리되어 있다면 주석을 제거합니다.
PasswordAuthentication
값을yes
로 설정합니다.
PasswordAuthentication yes
- 설정을 변경했으면 파일을 저장하고 종료합니다. vi 편집기에서 저장 후 종료하려면,
Esc
키를 누른 후:wq
를 입력.
🔄 6. SSH 서버 재시작
설정 변경 사항을 적용하려면 SSH 서버를 다시 시작해야 합니다.
sudo service ssh restart
이제 SSH 서버가 비밀번호 인증을 허용하며, 외부에서 접속 가능해졌습니다.
🔄 7. WSL 실행 시 SSH 서버 자동 시작 설정
WSL이 시작될 때마다 SSH 서버를 자동으로 시작하려면 ~/.bashrc
파일에 SSH 서버 시작 명령을 추가해야 합니다.
~/.bashrc
파일을 엽니다.
vi ~/.bashrc
- 파일 맨 아래에 다음 줄을 추가합니다.
sudo service ssh start
- 이 명령어는 WSL이 실행될 때마다 SSH 서버를 자동으로 시작합니다.
- 파일을 저장하고 나가려면
Esc
를 누르고:wq
를 입력합니다.
- 추가 설정을 적용하려면 터미널을 새로 열거나 아래 명령어로
.bashrc
파일을 다시 로드합니다.
source ~/.bashrc
이제 WSL을 실행할 때마다 자동으로 SSH 서버가 시작됩니다.
🌐 8. SSH로 접속 테스트하기
설정을 마쳤다면, 이제 원격에서 접속을 테스트할 수 있습니다. SSH 클라이언트가 있는 다른 장치에서 다음 명령어를 사용하여 접속합니다.
ssh username@server-ip
위 명령어에서 username
은 WSL 환경의 사용자 이름으로, server-ip
는 WSL이 설치된 장치의 IP 주소로 교체합니다.
⚠️ 주의 사항
로컬 네트워크 외부에서 SSH 접속을 시도할 경우, 라우터에서 포트 포워딩 설정이 필요할 수 있습니다.
SSH 보안을 위해 추가적으로 방화벽 설정을 검토하세요.
'IT 지식' 카테고리의 다른 글
WSL에서 Docker 컨테이너 내부에서 외부 호출이 불가능한 문제 해결하기 (0) | 2024.11.21 |
---|---|
[Jenkins] Jenkins Docker 컨테이너에서 Docker를 사용해 Git 소스 배포하기 (2) | 2024.11.16 |
[Kubernetes] 쿠버네티스(Kubernetes)란 무엇인가 (2) | 2024.11.12 |
[Jenkins] Jenkins에서 GitHub 및 GitLab 인증 연동하기 (0) | 2024.11.09 |
[Jenkins] CI/CD 환경 구축하기 (8) | 2024.11.08 |