文檔已經過濃縮,並在企業中可以直接使用的。
SSH企業應用配置實例
3.1 通過口令認證
要求:遠程ssh登錄,不允許使用root直接登錄,指定用戶可以遠程登錄,並可以使用su切到root用戶。
#指定用戶sudo
#新建用戶
useradd xiaojiang
passwd xiaojiang
#加入wheel組
usermod -G wheel xiaojiang
#編輯pam中su的配置
vi /etc/pam.d/su
去掉這行的註釋:auth required pam_wheel.so use_uid
#配置密碼策略
vi /etc/login.defs
#最後加上:
SU_WHEEL_ONLY yes
#禁止root的遠程登錄
vi /etc/ssh/sshd_config
PermitRootLogin no
#重啓sshd
service sshd restart
#只允許指定主機連接,建議內網時可以,一般不建議
vi /etc/hosts.allow
sshd:192.168.0.0/24 210.116.123.118
vi /etc/hosts.deny
sshd:ALL
#修改端口,禁止root,只允許指定用戶登錄
vi /etc/ssh/sshd_config
Port 13232
PermitRootLogin no
最後增加如下代碼,多個用戶使用空格分開:
AllowUsers xiaojiang onbing
允許通過防火牆,具體設置見文檔。
3.2 通過公鑰私鑰認證
3.2.1生成公鑰和私鑰
這裏以用戶xiaojiang爲例,
#登錄爲一般用戶xiaojiang
su - centospub
#建立公鑰與私鑰
ssh-keygen -t rsa
注意,提示鑰匙的文件名,這裏保持默認直接回車,輸入口令
#確認剛生成的公鑰與密鑰
ll -l ~/.ssh
默認在 ~/.ssh目錄生成兩個文件:私鑰id_rsa;公鑰id_rsa.pub
#公鑰內容輸出到相應文件中
cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
#刪除原來的公鑰文件
rm -f ~/.ssh/id_rsa.pub
#將新建立的公鑰文件屬性設置爲400
chmod 400 ~/.ssh/authorized_keys
3.2.2導入到要免密碼登錄的服務器
#將公鑰複製到服務器
scp ~/.ssh/id_rsa.pubxxx@host:/home/xxx/id_rsa.pub
#將公鑰導入到認證文件
cat ~/id_rsa.pub >>~/.ssh/authorized_keys
#更改權限
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
3.2.3測試ssh
ssh host,第一次登錄可能需要yes確認,之後就可以直接登錄了。