在 Windows 上正確設定 OpenSSH Server 和 Guacamole SFTP
前情提要 我最近有遇到一個問題就是我 Windows 10 要使用 share devices 然後給外包廠商上傳檔案在 Guacamole 那麼我知道 Guacamole 有 SFTP 的服務可以串接讓外包廠商上傳檔案,但是中間一直連線失敗有點弄到快爆氣哈哈哈...,但是後面發現滿蠢的哈哈哈哈,廢話不多說開始吧。
前情提要
我最近有遇到一個問題就是我 Windows 10 要使用 share devices 然後給外包廠商上傳檔案在 Guacamole 那麼我知道 Guacamole 有 SFTP 的服務可以串接讓外包廠商上傳檔案,但是中間一直連線失敗有點弄到快爆氣哈哈哈…,但是後面發現滿蠢的哈哈哈哈,廢話不多說開始吧。
<!–more–>

Windows 10 / Windows Server 2019 安裝內建的 OpenSSH 工具
-
可以先用以下指令確認有哪些內建的 OpenSSH 工具
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'-
輸出內容 :
Name : OpenSSH.Client~~~~0.0.1.0 State : Installed Name : OpenSSH.Server~~~~0.0.1.0 State : Installed
-
-
安裝 OpenSSH-Client,這個預設有些是安裝的
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 -
安裝 OpenSSH-Server,這樣的話就 Windows 就會有這個 Service
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 -
可以使用
win+r然後輸入services.msc-
檢查是否有
OpenSSH SSH Server這個Service
-
然後開啟 Serivce 和調整成 Automatic,那麼有兩種啟動方式一種是 powershell 的方式,和 GUI 的方式
#啟動 sshd service Start-Service sshd # setting sshd Automatic start Set-Service -Name sshd -StartupType 'Automatic'
{width=50%}
-
-
再來確定防火牆規則吧!
Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled-
輸出內容 :
Name Enabled ---- ------- OpenSSH-Server-In-TCP True
-
-
可以先手動連線一下
-
先測試是否可以連線
ssh [email protected] -
再來測試是否可以使用 sftp,並且確認是否有檔案到該使用者桌面
scp test.txt [email protected]:~/Desktop
-
Guacamole SFTP 設定
那這邊的設定及其簡單,但是讓我崩潰的點可能是我的網路太慢了,所以導致我連線的時候會一直連線不上,但是不要慌去連接一個好網路就好了,這個問題我還特別去翻了 Windows Event 看 SSH 有沒有連線成功,但是都顯示連線成功,那時候真的就通靈了哈哈哈。
-
設定 Guacamole SFTP 那麼 hostname 當然要用自己需要遠端的 IP Address,至於我不用是因為我把它塗掉了。

-
設定成功後會按下 command + ctrl + shift + esc (mac),就會有 share devices,圖示了那麼就可以上傳檔案到這台電腦了
