SSH服務(一)

1、初始SSH安全

        SSH是標準的網絡協議,可用於大多數UNIX操做系統,可以實現字符界面的遠程登陸管理,它默認使用22號端口,採用密文的形式在網絡中傳輸數據,相對於經過明文傳輸的Telnet,具備更高的安全性。服務器

       SSH提供了口令和祕鑰兩種用戶驗證方式,這二者都是經過密文傳輸數據的。網絡

       不一樣的是,口令用戶驗證方式傳輸的是用戶和密碼,這要求輸入的密碼具備足夠的複雜度才能具備更高的安全性。ssh

       而基於密鑰的安全驗證必須爲用戶本身建立一對密鑰,並把共有的密鑰放在須要訪問的服務器上,當須要鏈接SSH服務器上時,客戶端軟件會向服務器發出請求,請求使用客戶端的密鑰進行安全驗證。服務器收到請求以後,先在該用戶的根目錄下尋找共有密鑰,而後把它和發送過來的公有密鑰進行比較。若是兩個密鑰一致,服務器就用公有的密鑰加密「質詢」,並把它發送給客戶端軟件。客戶端收到質詢以後,就能夠用本地的私人密鑰再把它發送給服務器。這種方式是至關安全的。測試

2、檢測與安裝SSH加密

2.一、查看是否已安裝SSH服務spa

          #rpm -qa|grep -E openssh操作系統

2.二、安裝SSH(若是未安裝可執行此步驟)rest

         #yum -y install openssh-serverserver

2.三、SSH服務狀態

         啓動:# systemctl start sshd.service

          中止:# systemctl stop sshd.service

          重啓:# systemctl restart sshd.service

          開機啓動:# systemctl enable sshd.service

          說明:在雲服務器 ECS Linux CentOS 7 下重啓服務再也不經過 service  操做,而是經過 systemctl 操做。

3、啓動SSH服務

3.一、注意:

       CentOS 7.1安裝完後默認已經啓動了ssh服務咱們能夠經過如下命令來查看ssh服務是否啓動。

3.二、查看22端口是否開放

         #netstat -tnl

         

3.三、查看ssh服務是否啓動

         #systemctl status sshd.service

         

4、SSH客戶端鏈接服務器(口令認證)

4.一、直接鏈接對方的主機,這樣登陸服務器的默認用戶

         # ssh 192.168.207.128

4.二、使用帳號登陸對方主機ly用戶

         # ssh ly@192.168.207.128

5、SSH客戶端鏈接服務器(密鑰認證)

       這種認證方式是比較安全的。

密鑰認證步驟:

一、生成公鑰和私鑰,生成的密鑰默認在/root/.ssh/文件夾裏面

      # ssh-keygen(直接所有回車)

      或

      # ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa(非交互式生產密鑰)

      

      Enter file in which to save the key (/root/.ssh/id_rsa):   //設置鑰匙的名稱,默認爲id_rsa


      Enter passphrase (empty for no passphrase):   //設置保護私鑰文件的密碼,即密鑰登陸時的密碼(若是設置了密碼,去除辦法:ssh-keygen -p命令把密碼改成空便可)


      Enter same passphrase again:  //再次輸入保護私鑰文件的密碼

     

      id_rsa     //建立的私鑰

      id_rsa.pub  //建立的公鑰

二、把生成的公鑰發送到對方的主機上去,用ssh-copy-id命令,自動保存在對方主機的~/.ssh/authorized_keys文件中去。

     # ssh-copy-id -i /root/.ssh/id_dsa.pub ly@192.168.207.143

     

三、免密碼登入測試

     # ssh ly@192.168.207.143

     

     說明:ssh服務端.ssh目錄權限爲700,.ssh/authorized_keys的權限爲600。

相關文章
相關標籤/搜索