Scroll to navigation

SSH(1) General Commands Manual SSH(1)

NAME

ssh
OpenSSH SSH 客戶端 (遠程登入程式)

總覽 (SYNOPSIS)

ssh [
-l login_name
] hostname | user@hostname [
command
]
ssh [
-afgknqstvxACNTX1246
] [
-b bind_address
] [
-c cipher_spec
] [
-e escape_char
] [
-i identity_file
] [
-l login_name
] [
-m mac_spec
] [
-o option
] [
-p port
] [
-F configfile
] [
-L port:host:hostport
] [
-R port:host:hostport
] [
-D port
hostnameuser@hostname [
command
]

描述 (DESCRIPTION)

ssh (SSH 客戶端) 用於登入遠程主機, 並且在遠程主機上執行命令. 它的目的是替換 rlogin 和 rsh, 同時在不安全的網路之上, 兩個互不 信任的主機之間, 提供加密的, 安全的通信連接. X11 連接和任意 TCP/IP 端口均可以通過此安全通道轉發(forward).
當使用者通過 ssh 連接並登入主機 hostname 後, 根據所用的協議版本, 使用者必須通過下述方法之一向遠程主機証明他/她的身份:

SSH 協議第一版

第一, 如果發出登入命令的本地主機已經列在遠程主機的 /etc/hosts.equiv/etc/ssh/shosts.equiv 檔案中, 並且兩端的使用者名相同, 則立即允許該使用者登入. 第二, 如果遠程主機的使用者根目錄 (home 目錄) 下存在 .rhosts.shosts, 並且其中有一行包含了客戶機的名字和客戶機上的使用者名, 則允許該使用者登入. 一般來說, 伺服器不允許單獨使用這種認証方式, 因為它不安全.
第二種認証方法是 rhostshosts.equiv 檔案結合基於 RSA 的主機認証. 這意味著如果 $HOME/.rhosts, $HOME/.shosts, /etc/hosts.equiv, 或 /etc/ssh/shosts.equiv 允許登入, 並且如果伺服器能夠驗証客戶的主機密鑰(host key) (參見 檔案(FILE) 節的 /etc/ssh/ssh_known_hosts$HOME/.ssh/known_hosts ), 主機才允許客戶登入. 這個認証方法關閉了因 IP 欺騙, DNS 欺騙和路由欺騙造成的安全漏洞. [系統管理員注意: 一般說來 /etc/hosts.equiv, $HOME/.rhosts, 和 rlogin/rsh 協議的本質是不可靠地, 要安全就應該關掉它們.]
作為第三種認証方式, ssh 支持基於 RSA 的認証. 這種方案依托於公開密鑰算法: 密碼系統的加密和解密通過不同的密鑰完成, 無法 通過加密密鑰推導出解密密鑰. RSA 就是這種密碼系統. 每個使用者創建一對公開/私密鑰匙用於認証. 伺服器知道使用者的公鑰, 只有使用者知道他自己的私鑰. $HOME/.ssh/authorized_keys 檔案列出允許登入的(使用者的)公鑰. 當使用者開始登入, ssh 程式告訴伺服器它準備使用哪對鑰匙(公鑰)做認証. 伺服器檢查這只密鑰(公鑰)是否獲得許可, 如果許可, 伺服器向使用者 (實際上是使用者面前運行的 ssh 程式) 發出測試, 用使用者的公鑰加密一個隨機數. 這個隨機數只能用正確的私鑰解密. 隨後使用者的客戶程式用私鑰解出測試數字, 即可証明他/她掌握私鑰, 而又無需(把私鑰)暴露給伺服器.
ssh 能夠自動執行 RSA 認証協議. 使用者通過運行 ssh-keygen(1) 創建他/她的 RSA 密鑰對. 私鑰存放在使用者根目錄下的 $HOME/.ssh/identity 中, 而公鑰存放在 $HOME/.ssh/identity.pub 中. 隨後, 使用者應該把 identity.pub 複製到遠程伺服器中, 作為 $HOME/.ssh/authorized_keys 存放到他/她的使用者根目錄下 ( authorized_keys 對應傳統的 $HOME/.rhosts 檔案, 每一行只有一只密鑰, 儘管一行可以很長). 使用者無須密碼就可以直接登入. RSA 認証遠比 rhosts 認証安全.
RAS 認証最便捷的用法大概就是使用認証代理(authentication agent) 了. 詳見 ssh-agent(1) 手冊頁.
如果這些認証方式都失敗了, ssh 就提示使用者輸入口令(password), 然後把口令送到伺服器做驗証. 由於整個通信過程是 加密的, 因此別人不可能通過偵聽網路獲得這個口令.

SSH 協議第二版

當使用者以協議第二版連接時, 類似的認証方法一樣有效. 如果使用了 PreferredAuthentications 的預設內容, 客戶端首先試著用基於主機的認証方法進行連接; 如果這個方法失敗了 就用公開密鑰方法作認証; 最後, 如果它也失敗了, 就進入鍵盤操作, 試試 使用者口令認証.
這個公開密鑰方法類似於上一節描述的 RAS 認証, 並且允許使用 RAS 或 DSA 算法: 客戶端用他的私鑰 ( $HOME/.ssh/id_dsa$HOME/.ssh/id_rsa ) 對會話標識符(session identifier)簽名, 然後把結果送到伺服器. 伺服器檢查 $HOME/.ssh/authorized_keys 中是否有匹配的公鑰, 如果密鑰和簽名都正確, 訪問就可以繼續進行. 會話標識符來自共享的 Diffie-Hellman 值, 只有客戶端和伺服器端才知道這個值.
如果公鑰認証失敗或無效, 使用者口令將會加密後送到遠端主機來証明使用者的身份.
另外, ssh 支持基於主機或測試應答的認証方式.
協議第二版提供附加機制增強保密性 (數據流用 3DES, Blowfish, CAST128 或 Arcfour 加密) 和完整性 (hmac-md5, hmac-sha1). 注意, 協議第一版缺少強有力的機制確保連接的完整性.

登入會話和遠程執行

伺服器接受使用者身份後, 伺服器即可以執行給定的命令, 也可以讓使用者登入並給他 一個正常的 shell. 所有和遠端命令或 shell 的通信被自動加密.
如果分配了偽終端(pseudo-terminal)(普通的登入會話), 使用者可以使用後面將 提到的 escape 字符.
如果沒有分配偽終端, 則會話是透明的(transparent), 能夠可靠的傳送二進制數據. 大多數系統上, 即使分配了終端, 把 escape 字符設為 “none” 也可以讓會話透明.
當遠程主機上的命令或 shell 退出時, 會話即結束, 並關閉所有 X11 和 TCP/IP 連接. 遠端程式的返回碼做為 ssh 的返回碼返回.

Escape 字符

如果啟用了偽終端, ssh 能夠通過 escape 字符支持一組功能.
單獨的波浪符可以用 ~~ 送出去, 只要後面不跟下面列舉的字符, 也可以把它直接送出去. escape 字符必須接在換行(newline)後面, 這樣才具有特別含義. 在配置檔案中可以用 EscapeChar 命令更改 escape 字符, 在命令行上可以用 -e 選項更改.
已支持的 escape 命令 (假設是預設的 ‘~’) 有:
斷開連接
把 ssh 送到背景
列出轉發的連接 (forwarded connection)
當等待轉發的連接/X11會話結束時, ssh 在背景退出登入
顯示 escape 字符的列表
打開命令行 (僅用於 -L-R 選項增加端口轉發)
請求連接的重建(rekeying) (僅用於SSH協議第二版, 且對方支持)

X11 和 TCP 轉發 (forwarding)

如果 ForwardX11 變量設為 “yes” (或參見後面對 -X-x 選項的描述), 並且使用者正在使用 X11 (設置了 DISPLAY 環境變量), 和 X11 顯示器的連接將自動以這種形式轉發到遠端: 任何用 shell 或命令啟動的 X11 程式將穿過加密的通道, 從本地機器連接真正的 X 伺服器. 使用者不應該手動設置 DISPLAY. 可以在命令行上, 也可以在配置檔案中設置 X11 連接的轉發.
ssh 設置的 DISPLAY 值將指向伺服器, 但是顯示器號大於零. 這很自然, 因為 ssh 在伺服器上創建了一個 “proxy” X 伺服器, 把連接通過加密通道轉發出去.
ssh 將自動在伺服器上設置 Xauthority 數據. 目的是這樣的: SSH 生成一個隨機的授權 cookie, 存放在伺服器的 Xauthority 中. SSH 檢查並確保轉發的連接攜帶了這個 cookie, 打開連接後, 把它替換為真正的 cookie. 真正的認証 cookie 絕不會送往伺服器 (也不會有任何明文傳送的 cookie).
如果 ForwardAgent 變量設為 “yes” (或參見後面對 -A-a 選項的描述), 並且使用者正在使用認証代理(authentication agent), 則和代理的連接將自動轉發到遠程主機.
既可以在命令行上, 也可以在配置檔案中指定通過加密通道轉發的任何 TCP/IP 連接. TCP/IP 轉向的應用有, 比如說, 和電子錢包的安全連接, 或者是穿過防火牆等.

伺服器認証

ssh 自動維護並檢查一個身份數據庫, 它包含所有(成功)來訪的主機的身份數據. 主機密鑰存放在使用者根目錄下的 $HOME/.ssh/known_hosts 檔案中. 另外, SSH 自動檢查 /etc/ssh/ssh_known_hosts 裏面已知的主機. 任何新主機將被自動添加到使用者檔案中. 如果某個主機的身份發生改變, ssh 就會發出警告, 並且關閉對它的密碼認証, 以防止特洛伊木馬竊取使用者密碼. 這個機制的另一個目的是防止中間人攻擊, 否則這種攻擊可能會繞過加密系統. StrictHostKeyChecking 選項用來防止登入到主機密鑰不能識別或發生改變的那些機器.
命令行選項有:
禁止轉發認証代理的連接.
允許轉發認証代理的連接. 可以在配置檔案中對每個主機單獨設定這個參數.
代理轉發須謹慎. 某些使用者能夠在遠程主機上繞過檔案訪問權限 (由於代理的 UNIX 域 socket), 他們可以通過轉發的連接訪問本地代理. 攻擊者不可能從代理獲得密鑰內容, 但是他們能夠操作這些密鑰, 利用加載到代理上 的身份信息通過認証.
bind_address
在擁有多個接口或地址別名的機器上, 指定收發接口.
blowfish|3des|des
選擇加密會話的密碼術. 3des 是預設算法. 3des (triple-des) 用三支不同的密鑰做加密-解密-加密三次運算, 被認為比較可靠. blowfish 是一種快速的分組加密術(block cipher), 非常安全, 而且速度比 3des 快的多. des 僅支持 ssh 客戶端, 目的是能夠和老式的不支持 3des 的協議第一版互操作. 由於其密碼算法上的弱點, 強烈建議避免使用.
cipher_spec
另外, 對於協議第二版, 這裏可以指定一組用逗號隔開, 按優先順序排列的密碼術. 詳見 Ciphers.
ch|^ch|none
設置 pty 會話的 escape 字符 (預設字符: ‘~’). escape 字符只在行首有效, escape 字符後面跟一個點 (‘.’) 表示結束連接, 跟一個 control-Z 表示掛起連接(suspend), 跟 escape 字符自己 表示輸出這個字符. 把這個字符設為 “none” 則禁止 escape 功能, 使會話完全透明.
要求 ssh 在執行命令前退至背景. 它用於當 ssh 準備詢問口令或密語, 但是使用者希望它在背景進行. 該選項隱含了 -n 選項. 在遠端機器上啟動 X11 程式的推薦手法就是類似於 ssh -f host xterm 的命令.
允許遠端主機連接本地轉發的端口.
identity_file
指定一個 RSA 或 DSA 認証所需的身份(私鑰)檔案. 預設檔案是協議第一版的 $HOME/.ssh/identity 以及協議第二版的 $HOME/.ssh/id_rsa$HOME/.ssh/id_dsa 檔案. 也可以在配置檔案中對每個主機單獨指定身份檔案. 可以同時使用多個 -i 選項 (也可以在配置檔案中指定多個身份檔案).
smartcard_device
指定智能卡(smartcard)設備. 參數是設備檔案, ssh 能夠用它和智能卡通信, 智能卡裏面存儲了使用者的 RSA 私鑰.
禁止轉發 Kerberos 門票和 AFS 令牌. 可以在配置檔案中對每個主機單獨設定這個參數.
login_name
指定登入遠程主機的使用者. 可以在配置檔案中對每個主機單獨設定這個參數.
mac_spec
另外, 對於協議第二版, 這裏可以指定一組用逗號隔開, 按優先順序排列的 MAC(消息驗証碼)算法 (message authentication code). 詳情以 MACs 為關鍵字查詢.
把 stdin 重定向到 /dev/null (實際上防止從 stdin 讀取數據). ssh 在背景運行時一定會用到這個選項. 它的常用技巧是遠程運行 X11 程式. 例如, ssh -n shadows.cs.hut.fi emacs & 將會在 shadows.cs.hut.fi 上啟動 emacs, 同時自動在加密通道中轉發 X11 連接. ssh 在背景運行. (但是如果 ssh 要求口令或密語, 這種方式就無法工作; 參見 -f 選項.)
不執行遠程命令. 用於轉發端口. (僅限協議第二版)
option
可以在這裏給出某些選項, 格式和配置檔案中的格式一樣. 它用來設置那些沒有命令行開關的選項.
port
指定遠程主機的端口. 可以在配置檔案中對每個主機單獨設定這個參數.
安靜模式. 消除所有的警告和診斷信息.
請求遠程系統激活一個子系統. 子系統是 SSH2 協議的一個特性, 能夠協助 其他應用程式(如 sftp)把SSH用做安全通路. 子系統通過遠程命令指定.
強制分配偽終端. 可以在遠程機器上執行任何全螢幕(screen-based)程式, 所以非常有用, 例如選單服務. 並聯的 -t 選項強制分配終端, 即使 ssh 沒有本地終端.
禁止分配偽終端.
冗詳模式. 使 ssh 列印關於運行情況的調試信息. 在調試連接, 認証和配置問題時非常有用. 並聯的 -v 選項能夠增加冗詳程度. 最多為三個.
禁止 X11 轉發.
允許 X11 轉發. 可以在配置檔案中對每個主機單獨設定這個參數.
應該謹慎使用 X11 轉發. 如果使用者在遠程主機上能夠繞過檔案訪問權限 (根據使用者的X授權數據庫), 他就可以通過轉發的連接訪問本地 X11 顯示器. 攻擊者可以據此採取行動, 如監視鍵盤輸入等.
要求進行數據壓縮 (包括 stdin, stdout, stderr 以及轉發 X11 和 TCP/IP 連接 的數據). 壓縮算法和 gzip(1) 的一樣, 協議第一版中, 壓縮級別 “level” 用 CompressionLevel 選項控制. 壓縮技術在 modem 線路或其他慢速連接上很有用, 但是在高速網路上反而 可能降低速度. 可以在配置檔案中對每個主機單獨設定這個參數. 另見 Compression 選項.
configfile
指定一個使用者級配置檔案. 如果在命令行上指定了配置檔案, 系統級配置檔案 (/etc/ssh/ssh_config) 將被忽略. 預設的使用者級配置檔案是 $HOME/.ssh/config.
port:host:hostport
將本地機(客戶機)的某個端口轉發到遠端指定機器的指定端口. 工作原理是這樣的, 本地機器上分配了一個 socket 偵聽 port 端口, 一旦這個端口上有了連接, 該連接就經過安全通道轉發出去, 同時遠程主機和 hosthostport 端口建立連接. 可以在配置檔案中指定端口的轉發. 只有 root 才能轉發特權端口. IPv6 地址用另一種格式說明: port/host/hostport
port:host:hostport
將遠程主機(伺服器)的某個端口轉發到本地端指定機器的指定端口. 工作原理是這樣的, 遠程主機上分配了一個 socket 偵聽 port 端口, 一旦這個端口上有了連接, 該連接就經過安全通道轉向出去, 同時本地主機和 hosthostport 端口建立連接. 可以在配置檔案中指定端口的轉發. 只有用 root 登入遠程主機 才能轉發特權端口. IPv6 地址用另一種格式說明: port/host/hostport
port
指定一個本地機器 “動態的” 應用程式端口轉發. 工作原理是這樣的, 本地機器上分配了一個 socket 偵聽 port 端口, 一旦這個端口上有了連接, 該連接就經過安全通道轉發出去, 根據應用程式的協議可以判斷出遠程主機將和哪裏連接. 目前支持 SOCKS4 協議, ssh 將充當 SOCKS4 伺服器. 只有 root 才能轉發特權端口. 可以在配置檔案中指定動態端口的轉發.
強制 ssh 只使用協議第一版.
強制 ssh 只使用協議第二版.
強制 ssh 只使用 IPv4 地址.
強制 ssh 只使用 IPv6 地址.

配置檔案 (CONFIGURATION FILES)

ssh 可以從使用者級配置檔案和系統級配置檔案中獲取更多的配置數據. 配置檔案的格式及其內容參見 ssh_config(5).

環境變量 (ENVIRONMENT)

ssh 一般將設置下面的環境變量:
環境變量 DISPLAY 指出 X11 伺服器的位置. ssh 自動設置這個變量, 變量指向 “hostname:n” 格式的數據, 其中 hostname 指出運行 shell 的主機, 而 n 是大於等於 1 的整數. ssh 根據這個數據, 用安全通路轉發 X11 連接. 使用者一般不需要主動設置 DISPLAY 變量, 否則會導致 X11 連接不安全 (而且會導致使用者手動複製所需的授權 cookie).
設置為使用者根目錄的路徑.
等於 USER; 用來相容使用這個變量的系統.
設置為使用者郵箱的路徑.
設置為預設的 PATH, 如同編譯 ssh 時要求的一樣.
如果 ssh 需要一個密語(passphrase), 只要它是終端上啟動的, 它會從當前終端上讀取. 如果 ssh 沒有聯接終端, 但是設置了 DISPLAYSSH_ASKPASS 變量, ssh 就運行 SSH_ASKPASS 指定的程式, 打開一個 X11 視窗讀取密語. 當從 .Xsession 或類似的 script 中調用 ssh 時, 這個功能特別有用. (注意, 某些機器上可能需要將輸入重定向為 /dev/null 才能工作.)
標識某個 UNIX 域 socket 的路徑, 用於和代理通信.
標識連接的客戶端和伺服器端. 變量包含四個用空格隔開的字段: 客戶端IP地址, 客戶端端口號, 伺服器IP地址, 伺服器端口號.
如果強制執行了某條命令, 該變量就保存了最初的命令行. 可以用它獲取初始參數.
設置為關聯當前 shell 或命令的終端名字(設備的路徑). 如果會話沒有終端, 就不設置這個變量.
如果啟動背景進程(daemon)時設置了時區, 就設置這個時區變量, 指出現在的時區 (就是說, 背景進程會把這個變量傳給新建連接).
設置為登入的使用者名.
另外, 如果允許使用者改變他們的環境數據, 而且有 $HOME/.ssh/environment 這個檔案, ssh 將讀取其中數據, 把 “VARNAME=value” 這種格式的數據行添加進環境數據區. 另見 sshd_config(5)PermitUserEnvironment 選項.

檔案 (FILES)

$HOME/.ssh/known_hosts
主機密鑰的記錄, 記錄有使用者登入上來, 但是沒有列在 /etc/ssh/ssh_known_hosts 中的主機. 參見 sshd(8).
$HOME/.ssh/identity, $HOME/.ssh/id_dsa, $HOME/.ssh/id_rsa
包含了使用者的身份信息. 它們分別是協議第一版的 RSA, 協議第二版的 DSA, 協議第二版的 RSA. 這些檔案存有敏感信息, 只應由該使用者讀取, 不允許其他使用者 訪問(讀/寫/執行). 注意, 如果一個私鑰檔案能夠讓其他使用者訪問, ssh 將忽略這個檔案. 在生成密鑰的時候可以指定一個密語(passphrase), 用這個密語和 3DES 加密檔案的敏感部分.
$HOME/.ssh/identity.pub, $HOME/.ssh/id_dsa.pub, $HOME/.ssh/id_rsa.pub
包含認証用的公鑰 (以文字格式保存的身份檔案的公開部分). 如果使用者希望用協議第一版的 RSA 認証登入這些機器, $HOME/.ssh/identity.pub 的內容應該添加到所有機器的 $HOME/.ssh/authorized_keys 中. 如果使用者希望用協議第二版的 DSA/RSA 認証登入這些機器, $HOME/.ssh/id_dsa.pub$HOME/.ssh/id_rsa.pub 的內容應該添加到所有機器的 $HOME/.ssh/authorized_keys 中. 這些檔案沒有敏感數據, 可以(但不是必須)讓任何人讀取. ssh 絕不會自動訪問這些檔案, 它們也不是不可或缺; 只是為了使用者方便才提供這些檔案.
$HOME/.ssh/config
使用者級配置檔案. ssh_config(5) 描述了檔案格式及其配置選項.
$HOME/.ssh/authorized_keys
存放 RSA/DSA 公鑰, 使用者通過它登入機器. sshd(8) 手冊頁描述了這個檔案的格式. 最簡單的檔案格式和 .pub 身份檔案一樣. 檔案內容並非高度敏感, 但是仍然建議僅讓此檔案的使用者讀寫, 而拒絕其他使用者的訪問.
/etc/ssh/ssh_known_hosts
已知的主機密鑰的系統級列表. 系統管理員應該準備好這個檔案, 把所需主機的公鑰 保存在檔案裏面. 這個檔案應該能夠全局讀取. 檔案中一行一支公鑰, 格式是 (字段用空格隔開): 系統名字, 公鑰, 可選的注釋域. 如果同一個機器使用了多個名字, 所有名字都應該(用逗號隔開)列出來. 檔案格式在 sshd(8) 手冊頁中有描述.
登入的時候, sshd(8) 用規範的系統名字(名字伺服器返回的)確認客戶機; 其他名字也需要, 因為校驗密鑰前 ssh 不會把使用者提供的名字轉換為規範名字, 防止能夠操作名字伺服器的人欺騙主機認証.
/etc/ssh/ssh_config
系統級配置檔案. ssh_config(5) 描述了檔案格式和配置選項.
/etc/ssh/ssh_host_key, /etc/ssh/ssh_host_dsa_key, /etc/ssh/ssh_host_rsa_key
這三個檔案包含了主機密鑰的私有部分, 它們用於 RhostsRSAAuthenticationHostbasedAuthentication. 如果使用了協議第一版的 RhostsRSAAuthentication 方法, ssh 必須是 setuid root, 因為只有 root 才能讀取主機密鑰. 而對於協議第二版的 HostbasedAuthentication 方法, ssh 使用 ssh-keysign(8) 訪問主機密鑰. 這樣消除了驗証身份時對 ssh setuid root 的要求. 預設情況下 ssh 不是 setuid root.
$HOME/.rhosts
該檔案用於 .rhosts 認証, 裏面列出允許登入的主機/使用者對. (注意 rlogin 和 rsh 也使用這個檔案, 導致這個檔案的應用變得不安全) 檔案中的每一行包括一個主機名字(用名字伺服器返回的規範名字), 和主機上的 使用者名字, 用空格隔開. 某些機器上, 如果使用者根目錄位於 NFS 分區, 這個檔案可能需要全局可讀, 因為 sshd(8) 以 root 身份讀它. 此外, 該檔案必須屬於這個使用者, 其他人不允許持有寫權限. 對大多數機器推薦的訪問權限是, 它的使用者可以讀寫, 而不讓其他人訪問.
注意, 預設情況下會安裝 sshd(8) , 因此在允許 .rhosts 認証前, sshd(8) 要求成功進行了 RSA 主機驗証. 如果沒有 /etc/ssh/ssh_known_hosts 檔案存放客戶的主機密鑰, 密鑰可以存放在 $HOME/.ssh/known_hosts 中. 最簡單的做法是用 ssh 從伺服器回連客戶機; 這樣會自動把主機密鑰添加到 $HOME/.ssh/known_hosts.
$HOME/.shosts
這個檔案的用法和 .rhosts 完全一樣. 它的目的是允許 ssh 做 rhosts 認証的同時防止 rloginrsh(1) 登入.
/etc/hosts.equiv
.rhosts 認証 使用這個檔案. 它包含規範的主機名字, 一行一個( sshd(8) 手冊頁描述了完整的格式). 如果檔案中發現了客戶機的名字, 而且客戶機和伺服器的使用者名相同, 則自動允許登入. 另外, 一般情況下要求 RSA 主機認証成功. 這個檔案只應該讓 root 可寫.
/etc/ssh/shosts.equiv
這個檔案的用法和 /etc/hosts.equiv 完全一樣. 用於允許 ssh 登入, 但不允許 rsh/rlogin 的時候.
/etc/ssh/sshrc
當使用者登入後, 運行 shell (或命令)前, ssh 執行這個檔案中的命令. 詳見 sshd(8) 手冊頁.
$HOME/.ssh/rc
當使用者登入後, 運行 shell (或命令)前, ssh 執行這個檔案中的命令. 詳見 sshd(8) 手冊頁.
$HOME/.ssh/environment
含有關於環境變量的附加定義, 另見前面的 ENVIRONMENT 節.

診斷 (DIAGNOSTICS)

ssh 結束時的狀態碼就是遠端命令結束時的返回碼, 如果發生了錯誤就返回255.

作者 (AUTHORS)

OpenSSH 源自最初 Tatu Ylonen 發表的自由 ssh 1.2.12. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt 和 Dug Song 消除了許多 BUGS, 增加新的特征, 從而創建了 OpenSSH. Markus Friedl 貢獻了對 SSH 協議1.5版和2.0版的支持.

另見 (SEE ALSO)

rsh(1), scp(1), sftp(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), telnet(1), ssh_config(5), ssh-keysign(8), sshd(8) T. Ylonen, T. Kivinen, M. Saarinen, T. Rinne, and S. Lehtinen, SSH Protocol Architecture, draft-ietf-secsh-architecture-12.txt, January 2002, work in progress material.

[中文版維護人]

徐明 <xuming@users.sourceforge.net>

[中文版最新更新]

2004/06/11 第一版

《中國Linux論壇man手冊頁翻譯計劃》

http://cmpp.linuxforum.net
September 25, 1999 Debian