====== WSL Ubuntu Linux OpenSSH Server ====== * [[windows:wsl|Windows Subsystem For Linux]]에서 OpenSSH Server를 띄우기 * [[https://youngminz.github.io/main/2016/09/16/using-sshd-on-bash-on-windows.html|Bash on Windows에서 SSH 데몬 설치]] * [[http://blog.hazard.kr/archives/845|WSL(윈도우 내 리눅스) 에서 데몬 유지 및 sshd 서버 돌리기 | 위험한 블로그]] * [[https://gist.github.com/dentechy/de2be62b55cfd234681921d5a8b6be11|A step by step tutorial on how to automatically start ssh server on boot on the Windows Subsystem for Linux]] ===== Windows 10의 SSH 서비스 중지 ===== * ''services.msc'' 실행 * ''SSH Server Broker'', ''SSH Server Proxy'' 서비스가 있을 경우 중지하고 **사용 안함** 처리 ===== Linux에서 openssh-server 설치 ===== sudo apt-get install openssh-server ===== /etc/ssh/sshd_config 설정 ===== # 모든 다른 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 * 위 vbs 파일을 ''shell:startup''을 실행하여 뜬 폴더에 저장하면 부팅시 시작된다. ===== Locale 지정 ===== * ssh 접속시 한글 등 유니코드가 올바로 보이지 않았다. 아래 작업 후 재접속하면 유니코드가 올바로 표기된다. sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 ===== public key 등록 ===== * ''~/.ssh/authorized_keys'' 파일에 로그인에 사용할 public key를 등록해둔다. * ''chmod 600 ~/.ssh/authorized_keys'' 로 권한 설정해둔다. * [[windows:ssh:putty|Putty]] ''pageant'' 에 해당 키의 private key를 등록해두면 putty로 로그인 없이 접근가능해진다.