ssh命令詳解

2021-08-29 11:57:52 字數 3333 閱讀 4218

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伺服器接受從有ssh的客戶機的連線,允許操作者象在本地一樣地登入系統。你可以用ssh從遠端執行shell和x程式。1 安裝ssh伺服器 加入universe和multiverse源後,用新立得安裝ssh和openssh server 網...

詳解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 ...