SSH를 사용하여 원격 컴퓨터의 PowerShell에 원격접속하기

KiJungKong·2024년 1월 17일
0
post-thumbnail

굳이 원격 컴퓨터의 파워쉘에 접속해야됬던 이유

  • 원격 컴퓨터의 Nvidia 그래픽 카드를 이용해서 딥러닝 돌리고 싶음
  • vscode의 Remote-SSH와 주피터 노트북 extension을 통해 원격 컴퓨터의 주피터 노트북을 열어서 원격 컴퓨터 안에서 돌리는 것이 가능하기 때문
  • 주피터 노트북 서버를 외부에서 접속 가능하도록 할 수는 있지만 에디터가 플러그인으로 vi editor를 지원 하는 기능이 없는등 구리다고 생각함

우선 원격컴퓨터에 OpenSSH를 설치합니다.

그 다음에 원격 컴퓨터의 HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSHDefaultShell에
파워쉘 실행파일의 경로를 등록해야 합니다.

윈도우를 깔면 기본적으로 내장된 파워쉘을 SSH로 연결하고 싶을 경우엔 아래의 명령어을 원격 컴퓨터에 칩니다.

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -Force

# 출처: https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_server_configuration

만약 마이크로소프트 스토어에서 설치한 최신버전의 powershell일 경우에는 everything이라는 프로그램을 사용해서 직접 파워쉘 실행파일의 경로를 찾는것을 추천드립니다.

제 경우에는

C:\Program Files\PowerShell\7\pwsh.exe인 것을 볼 수 있습니다. 따라서

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Program Files\PowerShell\7\pwsh.exe" -PropertyType String -Force

이 명령어를 칩니다.

그리고 나서

notepad C:\ProgramData\ssh\sshd_config

C:\ProgramData\ssh\sshd_config 파일을 수정합니다.

# 51번째 줄에
#PasswordAuthentication yes

이 부분의 주석을 해제해 줍니다.

# 51번째 줄에
PasswordAuthentication yes

출처: https://learn.microsoft.com/en-us/powershell/scripting/learn/remoting/ssh-remoting-in-powershell?view=powershell-7.4

그리고 나서

Restart-Service sshd

ssh서버를 재시작 합니다.

만약 컴퓨터를 켰을때 자동 실행 되도록 하고 싶다면

Set-Service -Name sshd -StartupType 'Automatic'
profile
공기정

0개의 댓글

관련 채용 정보