2013年3月5日 星期二

CentOS 實作SSH連線

實作過程:
  1. 以一個使用者(asami)的身分產生密鑰在/home/asami/.ssh/底下 (/ssh-keygen -t rsa)
  2. id_rsa id_rsa.pub
  3. 將密鑰灌進去 authorized_keys (cat id_rsa.pub >> authorized_keys) =>灌公鑰進去。
  4. 然後chmod 400 authorized_keys,稍微保護一下。
  5. 設定sshd_config  (vim /etc/ssh/sshd_config)

    /etc/ssh/sshd_config
    Protocol 2
    ServerKeyBits 1024
    PermitRootLogin no  # 禁止root登錄。

    #以下三行沒什麼要改的,把默認的#註釋去掉就行了
    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile    .ssh/authorized_keys

    PasswordAuthentication no # 如果不用key登入,一定要設yes,KEY與密碼一定要二選一
    PermitEmptyPasswords no # 禁止使用空密碼登入
  6. 重啓sshd (/sbin/service sshd restart)
  7. 下載使用Puttygen,load id_rsa檔案,轉換另存private key。
    id_rsa -> id.rsa.ppk 。(亞馬遜pem -> ppk)
    filezilla 也要轉ppk
    遇到Puttygen不能使用,將檔案及Puttygen丟在D槽解決。

    無法登入原因,可能是你把KEY驗證開啟,又開啟不用密碼驗證。PasswordAuthentication no改爲PasswordAuthentication yes
    service sshd restart
  8. 下指令執行囉。 ssh -i id_rsa root@192.168.10.130  #用root登入遠端。(選擇私鑰~)
  9. /etc/hosts.allow and hosts.deny 可加入IP防止使用SSH連線。 #sshd 192.168.10.134
觀念提醒:
  1. server 端用 public key,client 端用 private key
  2. key傳的方式mail or filezilla的方式傳輸
  3. pem, id_rsa 利用 puttygen 轉 .ppk
  4. .ssh的資料夾權限務必設成755
  5. id_rsa.pub and authorized_keys 設成644
  6. id_rsa 權限設成600
  7. 用戶目錄權限設成755 or 700


沒有留言:

張貼留言