services.msc
실행SSH Server Broker
, SSH Server Proxy
서비스가 있을 경우 중지하고 사용 안함 처리sudo apt-get install openssh-server
# 모든 다른 IP에서의 요청 받음 ListenAddress 0.0.0.0 # wsl이 chroot() 호출을 지원하지 않기 때문 UsePrivilegeSeparation no # 비밀번호 기반 인증 활성화 PasswordAuthentication yes
sudo service ssh start
를 하면 되지만, 이 경우 WSL은 백그라운드 프로세스 돌리는 것을 지원하지 않기 때문에 bash 가 종료되면 서비스도 자동 종료되어 버린다. 따라서 Windows 부팅시에 bash 창과 함께 ssh 서버를 띄우고 창을 그대로 놔두는 방식을 사용해야 한다.# sudo 없이 실행가능하게 처리 # /etc/sudoers 에서 NOPASSWD 옵션을 주는 방식으로 해도 되긴 함. 이 경우 sshd 명령 앞에 sudo 추가 필요. sudo chmod 4755 /usr/sbin/sshd
C:\Windows\system32\bash.exe-c “/usr/sbin/sshd -D”
를 시작 프로그램에 등록하면 됨. 하지만 bash 창이 계속 떠있게 되어 보기에 안 좋다.start_sshd.vbs
파일 생성. 여기서 ws.run
의 마지막 인자 0
이 창을 숨기는 역할을 한다.set ws=wscript.createobject("wscript.shell") REM ws.run "C:\Windows\System32\bash.exe -c '/usr/sbin/sshd -D'",0 -- 처음에는 이걸로 해서 됐으나 Ubuntu 18.x 후 버전업 후에 안돼서 아래로 변경 ws.run "C:\Windows\System32\bash.exe -c 'sudo service ssh start'",0
shell:startup
을 실행하여 뜬 폴더에 저장하면 부팅시 시작된다.sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
~/.ssh/authorized_keys
파일에 로그인에 사용할 public key를 등록해둔다.chmod 600 ~/.ssh/authorized_keys
로 권한 설정해둔다.pageant
에 해당 키의 private key를 등록해두면 putty로 로그인 없이 접근가능해진다.