CopSSH - 架設 OpenSSH Server

1、前言

CopSSH 可將您的 Windows 變成 SSH Server 及 Client 的軟體,它是將 OpenSSH 及 Cygwin 還有一些熱門的工具所打包起來的,由於 OpenSSH 可以提供 SSH Protocol,因此您可將 CopSSH 安裝於遠端機器上並且透過 SSH Protocol 來達到安全管理 (ex. SSH Public Key Authentication)。


CopSSH 支援的 Windows 平台如下:

  • Windows NT
  • Windows 2000
  • Windows XP
  • Windows 2003
  • Windows Vista
  • Windows 2008





文章目錄

1、前言
2、實作環境
3、安裝及設定
4、SSH Server (Windows XP)
          步驟1.下載 copssh
          步驟2.新增/刪除帳號
5、SSH Client (CentOS)
          登入 SSH Server
6、參考





2、實作環境

  • Windows XP Professional (SSH Server)
  • CentOS 5.1 Linux 2.6.18-53.1.4.el5 (SSH Client)
  • Copssh_2.1.0_Installer.zip





3、安裝及設定

4、SSH Server (Windows XP)

步驟1.下載 copssh

下載 Copssh_2.1.0_Installer.zip 解壓縮後執行安裝步驟,安裝完成後確定 Windows 機器是否啟動 OpenSSH 服務 (聆聽 Port 22)。
  • 預設安裝路徑: Program Files\ICW 資料夾 (ex. C:\Program Files\ICW)
  • 預設建立的服務帳戶: SvcCOPSSH (此帳號會加入 Administrators 群組)
C:\> netstat -na | find ":22"
Proto  Local Address       Foreign Address     State
TCP    0.0.0.0:22          0.0.0.0:0           LISTENING   //OpenSSH 服務啟動成功




步驟2.新增/刪除帳號

安裝完 CopSSH 後 預設 沒有任何帳戶可以連線至此 SSH Server (包含系統的 Administrator),我們可透過 CopSSH 所提供的 UI 介面來設定新增 / 刪除可連結到此 SSH Server 的帳號 (此帳號必須存在於該 Windows 機器內)。

新增帳號 (Activate a user)

1. 點選左下角【開始】。
2. 選擇【所有程式】。
3. 選擇【Copssh】 >> 【01. Activate a user】。
4. 選擇欲新增可連線至 SSH Server 的帳號 (可發現只有存在於 Windows 機器內的帳號可選),此例新增帳號為 weithenn。
5. 選擇該帳號所使用的 Shell (ex. /bin/bash...等)。
6. 輸入該帳號的 SSH Public Key Authentication 保護密碼。

上述設定完成後使用者家目錄及 SSH Public Key Authentication 路徑如下

  • 使用者帳號 weithenn 的家目錄將建立於 C:\Program Files\ICW\home\weithenn
  • SSH Public Key Authentication 將產生於 C:\Program Files\ICW\home\weithenn\weithenn.key.pub
  • SSH Private Key Authentication 將產生於 C:\Program Files\ICW\home\weithenn\weithenn.key

刪除帳號 (Deactivate a user)

1. 點選左下角【開始】。
2. 選擇【所有程式】。
3. 選擇【Copssh】 >> 【02. Deactivate a user】。
4. 選擇欲刪除可連線至 SSH Server 的帳號。





5、SSH Client (CentOS)

登入 SSH Server

上述 SSH Server 設定完成後我們可嘗試從 CentOS 利用 SSH 連線至 Windows 機器,以下先說明實作條件:
  • OpenSSH Server (Windows) 主機名稱為 Weithenn-ssh
  • Activate a user 帳號 weithenn
  • Windows 主機其本機磁碟機有 C: 及 D:
  • SSH Client 為 CentOS

從 CentOS 使用 ssh 指令來登入 OpenSSH Server (Windows)
ssh weithenn@Weithenn-ssh         //登入 OpenSSH Server
weithenn@Weithenn-ssh's password:      //輸入 weithenn 帳戶密碼
weithenn@Weithenn-ssh ~               //登入成功
ls                                   //輸入指令 ls 查看可發現個人 SSH Authentication Key
weithenn.key  weithenn.key.pub

可使用 mount 指令來了解 copssh 所建立的檔案系統
mount
 C:\Program Files\ICW\bin on /usr/bin type system (binmode) //說明 /usr/bin 對應於 Windows 的路徑
 C:\Program Files\ICW on / type system (binmode)            //說明根目錄 (/) 對應於 Windows 的路徑
 c: on /cygdrive/c type system (binmode,noumount)           //說明 /cygdrive/c 對應於 Windows 的 C:
 d: on /cygdrive/d type system (binmode,noumount)           //說明 /cygdrive/d 對應於 Windows 的 D:

所以從上述我們可知能使用於 CopSSH 內的指令都在 /usr/bin (C:\Program Files\ICW\bin) 資料夾下,一些在 Linux 中常用的指令都可使用 例如: cat、chmod、cp、mv、rm、scp、sed...等,相信對於遠端管理上有一定的幫助 例如:可利用 copssh + cwrsync 來達成異地備份。





6、參考