創用 CC 授權條款
除非另有註明,本網站的著作Fygul Hether製作,以創用CC 姓名標示-非商業性-禁止改作 4.0 國際 授權條款釋出。

2020年11月22日 星期日

Windows機器安裝與設置OpenSSH Server

概要

Linux與Windows機器之間的資料連線若不想再使用SAMBA,改用SSH的方式會更單純,而且設置也相較簡單許多。本文記錄Windows機器安裝與簡易設置自由與開源軟體OpenSSH Server的方法。

Windows安裝與設置OpenSSH Server

以下的手工安裝方式適用於Windows 10之前的Windows版本;也可適用於Windows 10近兩年來的版本,在這些較新的Windows版本上,有其他看來較簡便的安裝方式[1],而此法則可用在安裝比系統提供的還新版本的OpenSSH Server。

安裝OpenSSH Server

  1. 自行下載最新版的二進制包裝檔(OpenSSH-Win64.zip或OpenSSH-Win32.zip)
  2. 以管理員權限把上述壓縮檔解開放進 C:\Program Files\OpenSSH
  3. 以管理員權限,開個命令行視窗,進入上述目錄,安裝sshd與ssh-agent服務:

    
    powershell powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1
    

完成後會以系統服務的方式來執行sshd。而設置檔 sshd_config 與 host keys 在sshd服務第一次啟動時會安裝到 %ProgramData%\ssh 。

移除OpenSSH Server

以管理員權限,開個命令行視窗,進入上述目錄,執行其中的反安裝腳本:


powershell.exe -ExecutionPolicy Bypass -File uninstall-sshd.ps1

設置OpenSSH Server

  1. sshd會從 %programdata%\ssh\sshd_config 讀取設置資料,如果該檔不存在,sshd會在服務啟動時以預設設置來產生它。此設置檔案是純文字檔,可視需要自行修改必要的選項,像通訊埠Port。較詳細的說明可見參考[3]。
  2. sshd是以服務的方式執行,預設是以手動來啟動,若要自動啟動,進入系統管理工具,在服務項目中找到 OpenSSH SSH Server,改成自動啟動。
  3. 記得調整防火牆放行sshd或是服務的通訊埠,讓ssh client能連線進入。依所用的防火牆軟體,有不同方式,如下圖:

限制

移植到Windows上的OpenSSH因某些因素缺了部分功能[4]而有些限制。不過對於一般的簡易用途而言,還不致於有太大影響。

結語

以上只是在Windows上OpenSSH的簡單安裝與設置方式,可適用於內部網路與Unix機器進行資料傳輸,以取代以往傳統上使用SAMBA的方式,不僅更方便,安全性也較好。機器如果要放在公眾網路上,最好對OpenSSH Server做較嚴謹的設置,像是儘量別用預設的22埠、限制可連線的帳號/群組,以減少被有心人士有機可趁的機會。

參考與連結

  1. Installing SFTP/SSH Server on Windows using OpenSSH
  2. Install Win32 OpenSSH
  3. sshd_config
  4. Project Scope

沒有留言:

張貼留言