ssh簡介

簡介:

ssh 全稱Secure Shell Protocol
默認端口默認22服務處於監聽狀態,用於遠程鏈接,早期使用telnet;
主要功能  遠程連機和sftp 功能
版本兩個不兼容的ssh協議版本,分別是1.x和2.x;服務端默認是2.xssh2同時支持RSA和DSA密鑰,但是ssh1僅僅支持RSA密鑰;
ssh服務端軟件OpenSSH(負責加密)和客戶端SSH組成;
工作機制   本地的ssh客戶端發送一個鏈接請求到遠程的ssh服務端,服務端檢查鏈接的客戶端發送的數據包和ip地址,如果確認合法,就會發送密鑰給ssh的客戶端,此時,客戶端本地的再將密鑰發送給服務端,自此鏈接建立。備註:連不上的情況
防火牆
端口是否修改
客戶端線路有問題

ssh1.x的整個聯機加密步驟:

#每一臺ssh服務主機都可以使用RSA加密方式來產生一個1024-bit的RSAkey,這個RSA的加密方式就是用來生產公鑰和私鑰的算法之一。

1、當ssh服務啓動時,就會產生一個768-bit 的臨時公鑰:
      grep -i serverkey /etc/ssh/sshd_config
        #ServerKeyBits 1024
         注意(centos 是768)

2、 當client端SSH聯機請求傳送過來時,Server就會將這個1024-bit的公鑰傳給Client端,此時Client會將此公鑰與先前存儲的 公鑰進行比對,看是否標準。判斷標準是:Client 端聯機用戶目錄下~/.ssh/known_hosts文件的內容(linux客戶端)

    在Client端接受到這個1024-bit的Server後,Client本地也會隨機產生一個246-bit的私鑰(Private key或hostkey),並且以加密的方式(具體的加密算法由客戶端在服務器提供的所有可用算法中選擇,默認爲3DES算法)將Server key和host key 整合成一對完整的key pair,並將這個keypair在傳給server。


 3、當客戶端完成後,Server與Client端在這次的聯機中,就以這一對1024-bit的keypair進行數據傳輸
ssh version2 多加了一個確認聯機正確性的Diffie-Hellman機制,每次數據傳輸中,server都會以該機制檢查數據的來源是否正確,這樣,避免聯機過程中被插入惡意程序代碼的問題,是比較安全的。



ssh服務的認證類型
ssh服務主要提供兩種級別的安全驗證:
基於口令的安全驗證 : ssh -p52113 [email protected]
基於密鑰的安全認證 :cat  ~/.ssh/known_hosts       
[10.10.70.11]:52113 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtjcHQwK/He9lYMFkZm9VhJEUOyby5t6EafXguptVd71TKJJ+SLGebJq3gX8BCLE7VLxDQDPZ/v57AmHFg72Vh4FTbDnhgcD0rgFAwShRIv+R3vCiZTbTW3tsjuIpEC6VlMaTxe5mfGk9hC7X0S2vC3eLV11kJTsNztlhjkikUTwu9qJ9jKL3uVVe6L8+u7Q3pjL1ORwKxqlNMs5lDoZ4V3PP3MfC2PNcrr1IIhJZCaRKmHVc0v2ba2yGnvWzZcd/KRVirlSixyL7Ibka07NsShVrBROkiVcWDf9Yc+xI5D9WkBJncgJEetUQ07bRUZsC/LYUg8On6XcU0lhYw1Al2w==



安裝:

#默認安裝就已包含ssh服務所需要的軟件OpenSSL和OpenSSH
 1、開機自啓動;
 2、服務端文件: /etc/ssh/sshd_config 

  #服務端包含兩個服務功能ssh遠程鏈接。SFTP服務

    客戶端文件:/etc/ssh/ssh_config
  #ssh客戶端:包含ssh以及像scp(遠程拷貝)、slogin(遠程登錄)、sftp(安全FTP文件傳輸)等應用程序


ssh密鑰生成 :

工具:ssh-keygen #是一個腳本
#密鑰生成的時候儘量不使用root用戶
A、

    ssh-keygen  -t dsa (指定算法)
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_rsa):  指定地址 默認是家目錄
    Enter passphrase (empty for no passphrase):  輸入密碼  不給
    Enter same passphrase again:    回車到底
    Your identification has been saved in /root/.ssh/id_rsa.
    Your public key has been saved in /root/.ssh/id_rsa.pub.
    The key fingerprint is:
    4b:73:39:13:6d:f6:9d:e2:2f:5e:1c:23:37:ea:37:94 root@moban2
    The key's randomart p_w_picpath is:
    +--[ RSA 2048]----+
    |                 |
    |           .     |
    |          . +    |
    |           = . ..|
    |        S =  o.*o|
    |       . + o. *E+|
    |        .    o.o |
    |            ..oo |
    |            .oo..|
    +-----------------+

   # -t 指定算法   默認rsa ;  dsa 一般用於數字簽名 (一般使用dsa)

 B、檢查
     ls  ~/.ssh/
     id_dsa  id_dsa.pub   

     #id_dsa(私鑰 :鑰匙) 權限 :小   分發服務器: 保留本地
      id_dsa.pub(公鑰:鎖)

 C、進行公鑰分發 :

    工具:ssh-copy-id

    ssh-copy-id -i  id_dsa.pub "-p 52113 [email protected]"
    #ssh-copy-id 是一個腳本;默認端口是22 ;如果不是默認需要使用-p指定 ,且需要使用雙引號;只能分發公鑰;

    範例: ssh-copy-id -i  id_dsa.pub "-p 52113 [email protected]"
            [email protected]'s password:
            Now try logging into the machine, with "ssh '-p 52113 [email protected]'", and check in:

            .ssh/authorized_keys 成功了
             to make sure we haven't added extra keys that you weren't expecting.



  D、檢查分發主機:    

        ll  ~/.ssh/authorized_keys
         -rw------- 1 root root 596 Jan 30 21:51 /root/.ssh/authorized_keys
     驗證:
     ssh  10.10.70.12
     Last login: Fri Jan 30 22:50:07 2015 from 10.10.70.11



配置文件:

    #sshd_config服務端;ssh_config客戶端

     網友詳解:http://bbs.linuxtone.org/thread-5487-1-1.html 

     Port 52113             #→ssh連接默認的端口修改
     PermitRootLogin no         #→root禁止遠程登陸。
     PermitEmptyPasswords no    #→禁止空密碼登陸
     UseDNS no                  #→不使用DNS
     GSSAPIAuthentication no    #一般爲NO


ssh 連接慢 排查:

1、在ssh服務端上更改/etc/ssh/sshd_config文件中的配置爲如下內容:
UseDNS no
# GSSAPI options
GSSAPIAuthentication no
然後,執行/etc/init.d/sshd restart重啓sshd進程使上述配置生效,在連接一般就不慢了。

2、檢查ssh服務端上/etc/hosts文件中,127.0.0.1對應的主機名是否和uname -n的結果一樣,或者把本機ip和hostname(uname -n結果)加入到/etc/hosts裏。

3、利用ssh -v的調試功能查找慢的原因


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章