先在 https://github.com/PowerShell/Win32-OpenSSH/releases
下載對應版本的 OpenSSH
在 PowerShell 的「以系統管理員開啟」輸入下列指令:
powershell.exe -ExecutionPolicy Bypass -File X:\OpenSSH\install-sshd.ps1
記得把 OpenSSH 安裝目錄加到環境變數裡
開啟「電腦管理」的「服務」的「OpenSSH SSH Server」並設定為「自動」
利用 netstat -aon | findstr “22” 檢查一下是否被佔用
看起來 4852 正佔用著 Port 22
利用 tasklist | findstr “4852” 檢查一下那個程式佔用
發現是 sshd.exe 所以 OpenSSH 已經開啟了
萬一是其他程式
你也可以利用
taskkill /pid 4852 /F
將 4852 給砍了
記得到防火牆 firewall.cpl 公用網路新增輸入規則開通 Port 22
利用 ssh 指令,如下:
ssh 使用者名稱@IP
IP 可以利用 ipconfig /all 查詢
應該就能連上 Windows Server 2016
例如:
ssh Administrator@2x.2xx.2xx.2xx
連上輸入密碼,就能連上了。
不想輸入密碼
可以建立 authorized_keys 檔案並複製貼上加入公鑰
儲存在 C:\Users\Administrator\.ssh 目錄裡
修改 C:\ProgramData\ssh\sshd_config
註解最後兩行
#Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
即可免輸入密碼登入
C:\Users\Administrator\.ssh 目錄裡的 id_rsa 私鑰不能直接使用
需要透過 PuTTYgen 轉成 Windows 可使用的格式
才能正常使用
沒有留言:
張貼留言