一、兩台Linux伺服器和用戶端 A:主機伺服器 B:用戶端伺服器
在主機伺服器A上用ssh指令生成密匙對,指令如下:ssh-keygen -t rsa然後一路回車即可
在目前使用者目錄:/home/root/.ssh/下找到 id_rsa.pub
scp 本地檔案(id_rsa.pub) [email protected](B)IP位址:遠端主機的儲存位置
現在到遠端主機B檢視是否有相應的檔案,當然這裡也要注意.ssh目錄是否存在
把剛才傳輸過來的公鑰追加到.ssh/authorized_keys檔案裡面
指令如下:
cat id_rsa.put >> .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
配置的時候注意權限的設定
二、rsync指令實作資料同步出錯
在使用rsync同步時還是需要輸入密碼,檢視系統日志發現:
Jan 21 09:49:05 localhost sshd[44946]: User tomcat not allowed because account is locked
Jan 21 09:49:05 localhost sshd[44946]: input_userauth_request: invalid user tomcat [preauth]
Jan 21 09:49:11 localhost sshd[44946]: Connection closed by 192.168.2.250 [preauth]
通過日志檢視,剛開始以為是 Tomcat使用者被鎖定了:
=============== linux 使用者解鎖 =====================
檢視使用者:pam_tally2 --user 賬号
解鎖使用者:pam_tally2 -r -u 賬号
通過pam_tally2 --user指令發現沒有鎖定,最終通過查找資料是sshd沒有開啟 PAMPAM is not enabled for SSH service, it is commented or set to "no" explicitly:~# grep UsePAM /etc/ssh/sshd_config
#UsePAM yes
開啟sshd_config UsePAM yes;service sshd restart 出現新的問題,普通使用者無法登陸
cd /etc/pam.d;ls -l sshd 檢視此檔案是否存在,沒有則需建立#%PAM-1.0
auth required pam_sepermit.so
auth include password-auth
account required pam_nologin.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
重新開啟 UsePAM yes;service sshd restart成功解決問題!
原文:http://hjt353.blog.51cto.com/8636273/1737149