ssh命令

Debian / Ubuntu:

#安裝ssh-client
$ sudo apt-get install openssh-client

#安裝ssh-server
$ sudo apt-get install openssh-server

RedHat / CentOS

# yum install openssh-server openssh-clients

一旦安裝上,我們就可以在終端輸入 ssh 來檢查下安裝是否正常

使用ssh

  1. 無選項(xiàng)參數(shù)運(yùn)行
    通常使用SSH的方式就是不加任何選項(xiàng)參數(shù),僅僅輸入“SSH”
$ ssh 192.168.1.1
  1. 指定登陸用戶

默認(rèn)的,ssh會嘗試用當(dāng)前用戶作為用戶名來連接。因?yàn)槭窃诋?dāng)前用戶客戶機(jī)上使用ssh客戶端。

$ ssh -l leni 192.168.1.1
#等價于
$ ssh leni@192.168.1.1
  1. 指定端口

SSH默認(rèn)端口是22。大多現(xiàn)代的Linux系統(tǒng)22端口是開放的。如果你運(yùn)行ssh程序而沒有指定端口號,它直接就是通過22端口發(fā)送請求。

一些系統(tǒng)管理員會改變SSH的默認(rèn)端口號。讓我們試試,現(xiàn)在端口號是1234。要連上主機(jī),就要使用-p選項(xiàng),后面再加上SSH端口

$ ssh 192.168.1.1 -p 1234

要改變端口號,我們需要修改/etc/ssh/ssh_config文件,找到此行:

Port 22

把它換成其他端口號,比如上面的1234.然后重啟SSH服務(wù)。

  1. 對所有數(shù)據(jù)請求壓縮
    有了這個選項(xiàng),所有通過SSH發(fā)送或接受的數(shù)據(jù)將會被壓縮,并且仍然是加密的。要使用SSH的壓縮功能,使用-C選項(xiàng)
$ ssh -C 192.168.1.1

如果你的聯(lián)網(wǎng)速度很慢的話,這個選項(xiàng)非常有用。但如果你網(wǎng)速很快的話,壓縮反而會降低你的速度。可以使用-o選項(xiàng)加上壓縮級別參數(shù)來控制壓縮的級別,但這個選項(xiàng)僅僅在SSH -1下起作用。

  1. 指定一個加密算法。
    ssh 提供了一些可用的加密算法。可以在 /etc/ssh/ssh_config or ~/.ssh/config文件中看到(如果存在的話)

  2. 打開調(diào)試模式
    因?yàn)槟承┰颍覀兿胍粉櫿{(diào)試我們建立的SSH連接情況。SSH提供的-v選項(xiàng)參數(shù)正是為此而設(shè)的。

$ ssh -v 192.168.1.1
  1. 綁定源地址
    如果你的客戶端有多余兩個以上的IP地址,你就不可能分得清楚在使用哪個IP連接到SSH服務(wù)器。

為了解決這種情況,我們可以使用-b選項(xiàng)來指定一個地市。這個IP將會被使用做建立連接的源地址。

$ ssh -b 192.168.1.1 -l leni 192.168.1.100

服務(wù)端,我們可以使用netstat命令來檢查到服務(wù)的連接是否建立。可以看到IP為192.168.1.1的連接已經(jīng)建立。

  1. 使用其他配置文件
    默認(rèn)情況下,ssh 會使用位于 /etc/ssh/ssh_config的配置文件。這個配置文件作用于系統(tǒng)的所有用戶。但你想要為特定的用戶指定特殊的設(shè)置的話,可以把配置文件放入 ~/.ssh/config 文件中。如果此文件不存在,可以手工創(chuàng)建一個。
#要使用指定配置文件,可以使用-F選項(xiàng)
$ ssh -F /apple/ssh/my_ssh_config 192.168.1.1
  1. 使用SSH X11 Forwarding
    某些時候,你可能想把服務(wù)端的 X11 應(yīng)用程序顯示到客戶端計(jì)算機(jī)上,SSH 提供了 -X 選項(xiàng)。但要啟用這功能,我們需要做些準(zhǔn)備,下面是它的設(shè)置:

在服務(wù)器端,你需要使/etc/ssh/ssh_config文件中的行設(shè)置成 ForwardX11 yes 或者 X11Forwad yes,以啟用 X11 Forwarding,重啟 SSH 服務(wù)程序。

然后在客戶端,輸入 ```ssh -X user@host:``

$ ssh -X leni@192.168.0.101

一旦登陸,可以輸入:

$ echo $DISPLAY

來檢查,你應(yīng)該可以看到向如下所示的

localhost:10:0

隨后就可以運(yùn)行應(yīng)用了,僅僅只能輸入應(yīng)用程序的命令。讓我們試試,比如想運(yùn)行 xclock 程序,輸入:

$ xclock

它就運(yùn)行起來了,xclock 確實(shí)是運(yùn)行在遠(yuǎn)端系統(tǒng)的,但它在你的本地系統(tǒng)里顯示了。

總結(jié)

#不指定用戶
ssh 192.168.1.1

#指定用戶
ssh -l root 192.168.1.1
ssh root@192.168.1.1

#如果修改過ssh登陸端口
ssh -p 12333 192.168.1.1
ssh -l root -p 12333 192.168.1.1
ssh -p 12333 root@192.168.1.1

#另外修改配置文件/etc/ssh/sshd_config,可以改ssh登錄端口和禁止root登錄。改端口可以防止被端口掃描。

#編輯配置文件:
vim /etc/ssh/sshd_config

#找到#Port 22,去掉注釋,修改成一個五位的端口:
Port 12333

 

#找到#PermitRootLogin yes,去掉注釋,修改為:
PermitRootLogin no

#重啟sshd服務(wù):
service sshd restart
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 一、SSH 是什么 SSH(全稱 Secure Shell)是一種加密的網(wǎng)絡(luò)協(xié)議。使用該協(xié)議的數(shù)據(jù)將被加密,如果在...
    wangminglang閱讀 6,556評論 0 4
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,973評論 19 139
  • OpenSSH是SSH連接工具的免費(fèi)版本。telnet,rlogin和ftp用戶可能還沒意識到他們在互聯(lián)網(wǎng)上傳輸?shù)?..
    醋留香閱讀 12,122評論 0 33
  • SSH:1、查看SSH客戶端版本有的時候需要確認(rèn)一下SSH客戶端及其相應(yīng)的版本號。使用ssh -V命令可以得到版本...
    faraway_com閱讀 1,381評論 0 6
  • 在過去的一段時間里,我讀了很多很多時間管理的書籍。可是對于時間管理這個命題,我卻依舊掌握的一塌糊涂。每天都感覺自己...
    榮耀小悅悅閱讀 254評論 0 0