linux 命令SSH

SSH:
1、查看SSH客戶端版本
有的時候需要確認一下SSH客戶端及其相應的版本號。使用ssh -V命令可以得到版本號。,Linux一般自帶的是OpenSSH: 下面的例子即表明該系統正在使用OpenSSH:
$ ssh -V
OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2003
下面的例子表明該系統正在使用SSH2:
$ ssh -V
ssh: SSH Secure Shell 3.2.9.1 (non-commercial version) on i686-pc-linux-gnu
2、連接到遠程主機:
命令格式 :
ssh name@remoteserver 或者
ssh remoteserver -l name
說明:以上兩種方式都可以遠程登錄到遠程主機,server代表遠程主機,name為登錄遠程主機的用戶名。
3、連接到遠程主機指定的端口:
命令格式:
ssh name@remoteserver -p 2222 或者
ssh remoteserver -l name -p 2222
說明:p 參數指定端口號,通常在路由里做端口映射時,我們不會把22端口直接映射出去,而是轉換成其他端口號,這時就需要使用-p端口號命令格式。

SSH 是什么

SSH(全稱 Secure Shell)是一種加密的網絡協議。使用該協議的數據將被加密,如果在傳輸中間數據泄漏,也可以確保沒有人能讀取出有用信息。要使用 SSH,目標機器應該安裝 SSH 服務端應用程序,因為 SSH 是基于客戶-服務模式的。 當你想安全的遠程連接到主機,可中間的網絡(比如因特網)并不安全,通常這種情況下就會使用 SSH。
安裝 SSH
如果碰巧你的機器沒裝,我們可以手工來安裝一下。最簡單的方式就是使用 Linux 包管理器。
基于 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 來檢查下安裝的是否正常。



使用 SSH

提供了許多可使用的選項。這篇文章會介紹一些我們在日常操作中經常使用的選項。

  1. 無選項參數運行 SSH
    通常使用 SSH 的方式就是不加任何選項參數,僅僅輸入 "ssh"。下面是示例:
    $ ssh 192.168.0.103



    第一次連接目標主機時,ssh 會讓你確認目標主機的真實性。如果你回答的是 NO,SSH 將不會繼續連接,只有回答 Yes才會繼續。



    下一次再登陸此主機時,SSH 就不會提示確認消息了。對此主機的真實驗證信息已經默認保存在每個用戶的 /home/user/.ssh 文件里。
  2. 指定登陸用戶
    默認的,ssh 會嘗試用當前用戶作為用戶名來連接。在上面的示例命令中,ssh 會嘗試用用戶名叫 pungki 的用戶身份來登入服務器,這是因為用戶 pungki 正在客戶機上使用 ssh 客戶端軟件。
    假如目標主機上沒有叫 pungki 的用戶呢?這時你就必須提供一個目標主機上存在的用戶名。從一開始就要指定用戶名的,可以使用 -l 選項參數。
    $ ssh -l leni 192.168.0.103



    我們也可以這樣輸入:
    $ ssh leni@192.168.0.0103


  3. 指定端口
    SSH 默認使用的端口號是 22。大多現代的 Linux 系統 22 端口都是開放的。如果你運行 ssh 程序而沒有指定端口號,它直接就是通過 22 端口發送請求的。
    一些系統管理員會改變 SSH 的默認端口號。讓我們試試,現在端口號是 1234.要連上那主機,就要使用 *-p 選項,后面在加上 SSH 端口號。
    $ ssh 192.168.0.103 -p 1234
    要改變端口號,我們需要修改 /etc/ssh/ssh_config 文件,找到此行:
    Port 22
    把它換成其他的端口號,比如上面示例的 1234 端口,然后重啟 SSH 服務。
    4.對所有數據請求壓縮
    有了這個選項,所有通過 SSH 發送或接收的數據將會被壓縮,并且任然是加密的。要使用 SSH 的壓縮功能,使用 -C 選項。
    $ ssh -C 192.168.0.103
    如果你的連網速度很慢的話,比如用 modem 上網,這個選項非常有用。但如果你使用的是像 LAN 或其它更高級網絡的話,壓縮反而會降低你的傳輸速度。可以使用 -o 選項加上壓縮級別參數來控制壓縮的級別,但這個選項僅僅只在 SSH-1 下起作用。
  4. 指定一個加密算法
    SSH 提供了一些可用的加密算法。可以在 */etc/ssh/ssh_config or ~/.ssh/config * 文件中看到(如果存在的話)。



    讓我們試試比如你想使用 blowfish 算法來加密你的 SSH 會話,那么你只要把這一行加入你的/etc/ssh/ssh_config or ~/.ssh/config 文件就可以:
    Cipher blowfish
    默認的,SSH 會使用 3des 算法。

  5. 打開調試模式
    因為某些原因,我們想要追蹤調試我們建立的 SSH 連接情況。SSH 提供的 -v 選項參數正是為此而設的。
    $ ssh -v 192.168.0.103


  6. 綁定源地址
    如果你的客戶端有多于兩個以上的 IP 地址,你就不可能分得清楚在使用哪一個 IP 連接到 SSH 服務器。



    為了解決這種情況,我們可以使用 -b 選項來指定一個IP 地址。這個 IP 將會被使用做建立連接的源地址。
    $ ssh -b 192.168.0.200 -l leni 192.168.0.103
    服務端,我們可以使用 netstat 命令來檢查到服務的連接是否建立。可以看到 IP 為 192.168.0.200 的連接已經建立。


  7. 使用其他配置文件
    默認情況下,ssh 會使用位于 /etc/ssh/ssh_config 的配置文件。這個配置文件作用于系統的所有用戶。但你想要為特定的用戶指定特殊的設置的話,可以把配置放入 ~/.ssh/config 文件中。如果此文件不存在,可以手工創建一個。
    下面是一個通用 ssh_config 文件配置的例子。這配置文件位于 /home/pungki 目錄下。
    Host 192.168.0.*ForwardX11 yesPasswordAuthentication yesConnectTimeout 10Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbcProtocol 2HashKnownHosts yes
    要使用指定的配置文件,可以使用 -F 選項。
    $ ssh -F /home/pungki/my_ssh_config 192.168.0.101


  8. 使用 SSH X11 Forwarding
    某些時候,你可能想把服務端的 X11 應用程序顯示到客戶端計算機上,SSH 提供了 -X 選項。但要啟用這功能,我們需要做些準備,下面是它的設置:
    在服務器端,你需要使 /etc/ssh/ssh_config 文件中的行設置成 ForwardX11 yes 或者 X11Forwad yes,以啟用 X11 Forwarding,重啟 SSH 服務程序。
    然后在客戶端,輸入 ssh -X user@host:
    $ ssh -X leni@192.168.0.101
    一旦登陸,可以輸入:
    $ echo $DISPLAY
    來檢查,你應該可以看到向如下所示的
    localhost:10:0
    隨后就可以運行應用了,僅僅只能輸入應用程序的命令。讓我們試試,比如想運行 xclock 程序,輸入:
    $ xclock
    它就運行起來了,xclock 確實是運行在遠端系統的,但它在你的本地系統里顯示了。


最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,837評論 18 139
  • 一、SSH 是什么 SSH(全稱 Secure Shell)是一種加密的網絡協議。使用該協議的數據將被加密,如果在...
    wangminglang閱讀 6,548評論 0 4
  • 本文整理了在實踐過程中使用的Linux網絡工具,這些工具提供的功能非常強大,我們平時使用的只是冰山一角,比如lso...
    老夫劉某閱讀 3,562評論 0 7
  • CA和證書安全協議(SSL/TLS)OpenSSH 一、CA和證書 (一) PKI(Public Key Infr...
    哈嘍別樣閱讀 1,409評論 0 0
  • 入夜的街上,剛跟朋友們分別的你一個人漫步在街頭。酒量不錯,喝了那么多酒沒有一點醉的感覺!短暫的激情后終歸平靜!看著...
    不暖暖的雪兒閱讀 164評論 0 0