星期六, 5月 28, 2022

在Windows 2019 安裝 OpenSSH server

資料來源:微軟-安裝 OpenSSH

我找不到 GUI 怎麼裝,最後是開 PowerShell 終端機來安裝

檢查是否有安裝

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

安裝

預設就會安裝 OpenSSH client 了,執行這兩行會需要一點時間,我有遇到錯誤訊息,說安裝失敗,但再執行一次就可以了。

# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

啟動、設定與開防火牆

用 Start-Service 就可以啟動,用 Set-Service 設定為自動啟動,後面落落長的 if 是檢查,這段檢查,可以開設定裡的防火牆來看,不用執行也可以。

# Start the sshd service
Start-Service sshd

# OPTIONAL but recommended:
Set-Service -Name sshd -StartupType 'Automatic'

# Confirm the Firewall rule is configured. It should be created automatically by setup. Run the following to verify
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) {
    Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..."
    New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
} else {
    Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists."
}

ssh 與 scp

若要連進來,用 ssh 即可,這邊要注意,當 ssh 進去以後,打的指令不是 linux 指令喔,是 windows 指令。

ssh <user>@<windows-2019>

因為 Windows 路徑跟 Linux 不一樣,所以不能用之前 linux 的方式來複製,得這樣用

scp my_file "john@<windows-2019>:C:\\Users\\John\\"

結語

有了 OpenSSH server ,要遠端管理或複製檔案變得方便許多,以後安裝完 Windows 要順手裝上。

沒有留言: