詳解ssh命令

2022-08-27 13:45:13 字數 3535 閱讀 4842

ssh 的詳細使用方法如下: 

ssh [-l login_name] [hostname | user@hostname] [command] ssh

[-afgknqtvxcpx246] [-c blowfish | 3des] [-e escape_char] [-i

identity_file] [-l login_name] [-o option] [-p port] [-l

port:host:hostport] [-r port:host:hostport] [hostname |

user@hostname] [command] 

sshd 

為執行 ssh 的 daemon,在讀者使用 ssh 之前必須去啟用 sshd,在此建議把它加在 /etc/init/rc.local

中,在每次開機時啟用。 

在執行 sshd 之前可以指定它的 port,例如:sshd –p 999 

若有安裝 ssl,可以指定 ssl 的 port 443,例如:sshd –p

443 

這樣就可以經過 ssl 及 ssh 雙重的保護,但必須去指明使用的 port 

ssh –l user –p 443 mouse.oit.edu.tw 才行,若不指明則仍然使用預設的port

22 ssh 

選項: 

-l login_name 

指定登入於遠端機器上的使用者,若沒加這個選項,而直接打 ssh lost 也是可以的,它是以讀者目前的使用者去做登入的動作。 例如:

ssh –l shie mouse.oit.edu.tw 

-c blowfish|3des 

在期間內選擇所加密的密碼型式。預設是3des,3des(作三次的資料加密) 是用三種不同的密碼鍵作三次的加密-解密-加密。

blowfish 是乙個快速區塊密碼編制器,它比3des更安全以及更快速。 

-v verbose 模式。使ssh 去印出關於行程的除錯訊息,這在連線除錯,認

證和設定的問題上有很的幫助。 

-v 顯示版本。 

-a 關閉認證**聯機。 

-f 要求ssh 在背景執行命令,假如ssh要詢問密碼或通行證,但是使用者 想要它在幕後執行就可以用這個方式,最好還是加上-l user

例如在遠端場所上啟用 x11,有點像是 ssh –f host xterm 。 

-e character 

設定跳脫字元。 

-g 允許遠端主機去連線本地指派的 ports。 

-i identity_file 

選擇所讀取的 rsa 認證識別的檔案。預設是在使用者的家目錄 中的 .ssh/identity

。 -n 

重導 stdin 到 /dev/null (實際上是避免讀取 stdin)。必須當 ssh 在幕後執

行時才使用。常見的招數是使用這選項在遠端機器上去執行 x11 的程式 例如,ssh -n shadows.cs.hut.fi

emacs &,將在 shadows.cs.hut.fi 上啟用 emace,並且 x11

連線將自動地在加密的通道上傳送。ssh 程式將把它放

在幕後。(假如ssh需要去詢問密碼時,這將不會動作) 

-p port 

連線遠端機器上的 port。 

-p 使用非特定的 port 去對外聯機。如果讀者的防火牆不淮許從特定的 port去聯機時,就可以使用這個選項。注意這個選項會關掉

rhostsauthentication 和

rhostsrsaauthentication。 

-q 安靜模式。把所有的警告和訊息抑制,只有嚴重的錯誤才會被顯示。 

-t 強制配置 pseudo-tty。這可以在遠端機器上去執行任意的 screen-based 程 式,例如操作 menu

services。 

-c 要求壓縮所有資料(包含 stdin, stdout,stderr 和 x11 和 tcp/ip 連線) 壓縮演算規則與 gzip

相同,但是壓縮的等級不能控制。在數據機或 聯機速度很慢的地方,壓縮是個很好的選擇,但如果讀者的網路速路很

快的話,速度反而會慢下來。 

-l listen-port:host:port 

指派本地的 port 到達端機器位址上的 port。 

-r listen-port:host:port 

指派遠端上的 port 到本地位址上的 port。 

-2 強制 ssh 去使用協議版本 2。 

-4 強制 ssh 去使用 ipv4 位址。 

-6 強制 ssh 去使用 ipv6 位址。 

scp 

使用 scp 在遠端機器上 copy 檔案 

例如: 

copy 本地的檔案到遠端的機器上 

scp /etc/lilo.conf [email protected] :/home/k 

會將本地的 /etc/lilo.conf 這個檔案 copy 到 net67.ee.oit.edu.tw,使用者 k

的家目錄下。 

copy遠端機器上的檔案到本地來 

scp [email protected] :/etc/lilo.conf

/etc 

會將 net67.ee.oitdu.tw 中 /etc/lilo.conf 檔案 copy 到本地的 /etc

目錄下。 

保持從** host 檔案的屬性 

scp –p [email protected] :/etc/lilo.conf

/etc 

在此必須注意使用者的許可權是否可讀取遠端上的檔案,若想知道更多關於 scp 的使用方法,可去看看 scp

的使用手冊。 

ssh-keygen 

產生公開鑰 (pulib key) 和私人鑰 (private key),以保障 ssh 聯機的安性, 當 ssh 連 shd

伺服器,會交換公開鑰上,系統會檢查 /etc/ssh_know_hosts 內儲存的 key,如果找到客戶端就用這個 key

產生乙個隨機產生的session key 傳給伺服器,兩端都用這個 key 來繼續完成 ssh

剩下來的階段。 

它會產生 identity.pub、identity 兩個檔案,私人鑰存放於identity,公開鑰 存放於 identity.pub

中,接下來使用 scp 將 identity.pub copy 到遠端機器的家目錄下.ssh下的authorized_keys。

.ssh/authorized_keys(這個 authorized_keys 檔案相當於協議的 rhosts 檔案),

之後使用者能夠不用密碼去登入。rsa的認證絕對是比 rhosts

認證更來的安全可靠。 

執行: 

scp identity.pub [email protected] :.ssh/authorized_keys 

若在使用 ssh-keygen 產生鑰匙對時沒有輸入密碼,則如上所示不需輸入密碼即可從 net67.ee.oit.edu.tw 去登入

linux1.ee.oit.edu.tw。在此,這裡輸入的密碼可以跟帳號的密碼不同,也可以不輸入密碼。

SSH命令詳解

ssh 的詳細使用方法如下 ssh l login name hostname user hostname command ssh afgknqtvxcpx246 c blowfish 3des e escape char i identity file l login name o option ...

ssh命令詳解

ssh 的詳細使用方法如下 ssh l login name hostname user hostname command ssh afgknqtvxcpx246 c blowfish 3des e escape char i identity file l login name o option ...

ssh命令詳解

ssh是一種以安全 加密方式連線遠端主機或伺服器 的方法。ssh伺服器接受從有ssh的客戶機的連線,允許操作者象在本地一樣地登入系統。你可以用ssh從遠端執行shell和x程式。1 安裝ssh伺服器 加入universe和multiverse源後,用新立得安裝ssh和openssh server 網...