linux中的ssh服務管理(用ssh登陸到另外一臺遠程主機)

Linux 遠程登陸服務:ssh
  ·SSH是標準的網絡協議,可用於大多數UNIX操做系統,可以實現字符界面的遠程登陸管理,它默認使用22號端口,採用密文的形式在網絡中傳輸數據,相對於經過明文傳輸的Telnet,具備更高的安全性。
  ·SSH提供了口令和密鑰兩種用戶驗證方式,這二者都是經過密文傳輸數據的。
  ·不一樣的是,口令用戶驗證方式傳輸的是用戶的帳戶名和密碼,這要求輸入的密碼具備足夠的複雜度才能具備更高的安全性。
  ·而基於密鑰的安全驗證必須爲用戶本身建立一對密鑰,並把共有的密鑰放在須要訪問的服務器上。當須要鏈接到SSH服務器上時,客戶端軟件就會向服務器發出請求,請求使用客戶端的密鑰進行安全驗證。服務器收到請求以後,先在該用戶的根目錄下尋找共有密鑰,而後把它和發送過來的公有密鑰進行比較。若是兩個密鑰一致,服務器就用公有的密鑰加密「質詢」,並把它發送給客戶端軟件。客戶端收到質詢以後,就能夠用本地的私人密鑰解密再把它發送給服務器。這種方式是至關安全的。
  Linux下搭建ssh服務器
  本人實驗平臺是Fedora14 2.6.35.6
  1、安裝ssh
  ssh軟件由兩部分組成:ssh服務端和ssh客戶端。
  ssh的配置文件在/etc/ssh/目錄下,其中服務端的配置文件是sshd_config,客戶端的配置文件是ssh_config.
  安裝ssh,在這裏,只講述經過yum安裝的方法(前提是你的yum源配置正確,而且能使用):
  # yum install openssh-* -y
  //yum會自動安裝全部openssh相關的軟件包
  2、配置ssh服務器
  根據ssh的兩種驗證方式,配置兩種不能安全級別的登陸方式。
  ·經過口令驗證方式登陸
  1.用vim編輯器打開sshd_config配置文件
  # vim /etc/ssh/sshd_config
  2.對配置文件進行以下修改(根據自身實際狀況可有所調整):
  Port 22  //默認使用22端口,也能夠自行修改成其餘端口,但登陸時要打上端口號
  #ListenAddress   //指定提供ssh服務的IP,這裏我註釋掉。
  PermitRootLogin   //禁止以root遠程登陸
  PasswordAuthentication  yes  //啓用口令驗證方式
  PermitEmptyPassword   //禁止使用空密碼登陸
  LoginGraceTime  1m   //重複驗證時間爲1分鐘
  MaxAuthTimes   3    //最大重試驗證次數
  保存修改好的配置,退出。
  3.重啓sshd服務
  # service sshd restart
  ·經過密鑰對驗證方式登陸
  1.在客戶端生成密鑰對
  注:生成密鑰對前,需切換相應用戶身份。例如:當user1須要登陸到服務端時,user1必須在客戶端生成本身的密鑰文件。其餘用戶也同樣。
  # su - user1
  # ssh-keygen -t rsa    //生成密鑰文件
  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:
  33:ee:01:7d:c3:74:83:13:ef:67:ee:d7:60:2d:e1:16 root@localhost
  # ll -a .ssh/
  總計 24
  drwxrwxrwx 2 root root 4096 10-08 19:29 .
  drwxr-x--- 21 root root 4096 10-08 19:25
  -rw------- 1 root root 1743 10-08 19:29 id_rsa     //建立的私鑰
  -rw-r--r-- 1 root root 396 10-08 19:29 id_rsa.pub  //建立的公鑰
  -rw-r--r-- 1 root root 790 2015-11-04 known_hosts
  2.上傳公鑰文件到服務器或者用U盤拷貝到服務器裏
  # scp .ssh/id_rsa.pub user1@192.168.1.100:/home/user1/
  3.在服務器端,將公鑰文件添加到相應用戶的密鑰庫裏
  # mkdir -p /home/user1/.ssh/       //注意,這裏建立的。ssh目錄權限必需是除本身外,對其餘用戶只讀,也就是權限位設置爲644,所屬者與所屬者組都是其用戶
  # mv /home/user1/id_rsa.pub /home/user1/,ssh/authorized_keys   //因爲生成的公鑰名稱與指定的公鑰名稱不符,所以須要將生成的文件名換成authorized_keys便可。
  4.修改sshd_config配置文件:
  # vim /etc/ssh/sshd_config
  PasswordAuthentication  no  //禁用口令驗證方式,不能把原有的PasswordAuthentication  yes註釋掉,註釋後,就算沒有公鑰也能經過口令登陸,這樣不安全,並且失去了密鑰驗證的意義。
  RSAAuthentication yes   //啓用RSA驗證
  PubkeyAuthentication yes  //啓用公鑰驗證
  AuthorizedKeysFile     .ssh/authorized_keys   //啓用公鑰文件位置,後面的路徑是設置公鑰存放文件的位置
  保存修改好的配置,退出。
  5.重啓sshd服務
  # service sshd restart
  3、登陸服務器
  1.Linux客戶機
  # ssh 192.168.1.100   //輸入服務器IP登陸,不加用戶名默認以root身份登陸
  或者
  # ssh user1@192.168.1.100   //以user1身份登入服務器
  2.windows下使用遠程登陸客戶端登陸
  時下最流行的是putty這款登陸軟件,無需安裝,下載下來就可使用,簡單、方便、安全!
  ·當服務器使用口令驗證方式時,只需輸入用戶名和密碼便可
  ·當服務器使用密鑰驗證方式時,須要做如下幾步操做:
  1.下載puttygen軟件,這個軟件用來生成密鑰對
  2.打開puttygen,在"生成的密鑰類型"欄裏點選「SSH-2 RSA」
  3.點擊「生成」,軟件自動生成密鑰
  4.輸入密鑰密碼,點擊「保存私鑰」。這個私鑰是之後做爲putty登陸所必需加載的密鑰信息,慎防丟失
  5.複製公鑰信息,在windows下新建記事本進行保存
  6.將保存有公鑰信息的記事本文件上傳到服務器上,再用vim檢查裏面的信息是否都排成一行(注意,裏面的公鑰信息必需是一行,信息必需完整)
  7.將其文件命名爲authorized_keys,並拷貝到相應用戶家目錄下的。ssh/目錄裏vim

 

 ssh命令登陸服務器格式windows

        ssh -p 端口號 用戶名@IP 地址安全

相關文章
相關標籤/搜索