root@media:~# useradd -d/data_1/ftp/zhangyu/ -s /bin/bash zhangyulinux
root@media:~# passwd zhangyushell
建立用戶並設置密碼,使用winscp登陸,設置以下圖所示:tomcat
接下來彈出以下圖所示的對話框,要求輸入密碼,最初想着是密碼輸錯了便再次輸入密碼,但是仍然登陸不上去,仍是彈出下圖所示的對話框,登陸服務器將用戶zhangyu的密碼從新設置後再次登陸,報錯信息依舊安全
使用圖像界面登陸不上去,我就嘗試使用Xshell工具進行鏈接,仍然不能登陸,報錯信息以下圖所示:bash
真的很鬱悶,不就建立一個用戶麼怎麼就是不能正常登陸呢,百度搜索給出以下兩種緣由:服務器
1::服務沒有啓動ssh
2:卸載openssh-server軟件再進行安裝ide
查看SSH服務的狀態:工具
root@media:~# service ssh statusui
ssh start/running, process 26629
因爲是生產環境,並且其餘用戶均可以正常登陸使用,應該不是軟件的軟件,便找來同事一塊兒看這個問題,咱們從新建立用戶並設置密碼,用戶信息所有采用默認設置(以前建立的用戶的路徑是指定的),再次登陸仍是不行,後來就猜測是否是作了什麼安全策略或者是安全設置,查看ssh服務的主配置文件,發現裏面有一項AllowUsers,呵呵,總算知道是怎麼回事了,原來是在這裏作了設置
cat /etc/ssh/sshd_config
AllowUsers tomcat aaa
接下來將zhangyu的姓名添加到AllowUsers一行,重啓ssh服務
cat /etc/ssh/sshd_config
AllowUsers tomcat aaa zhangyu
root@media:~# service ssh restart
ssh stop/waiting
ssh start/running, process 31258
Winscp能夠正常登陸
Xshell也能夠正常登陸
問題解決了,我查看了一下Linux SSH是如何管理用戶登陸
參考文檔:http://www.linuxidc.com/Linux/2013-02/79674.htm
方法一:(allow 容許)
1、在/etc/pam.d/sshd文件中加入如下行(注:加入到第一行)
authrequired /lib64/security/pam_listfile.so item=user sense=allowfile=/etc/sshusers onerr=fail
2、在/etc下創建sshusers文件,編輯這個文件,加入你容許使用ssh服務的用戶名便可。
echo"lgh" >> /etc/sshusers
方法二:(deny 拒絕)
1、在/etc/pam.d/sshd文件中加入如下行(注:加入到第一行)
authrequired /lib64/security/pam_listfile.so item=user sense=denyfile=/etc/sshd_user_deny_list onerr=succeed
2、在/etc下創建sshd_user_deny_list文件,編輯這個文件,加入你不容許使用ssh服務的用戶名便可。
echo"test" >> /etc/sshd_user_deny_list
方法三:(AllowUsers)
1、在/etc/ssh/sshd_config配置文件中設置AllowUsers選項,(配置完成須要重啓SSHD服務)格式以下:
AllowUsers lgh test #容許lgh、test賬戶經過SSH登陸系統。
方法四:(DenyUsers)
1、在/etc/ssh/sshd_config配置文件中設置DenyUsers選項,(配置完成須要重啓SSHD服務)格式以下:
DenyUsers zhangsan wangwu #拒絕zhangsan、wangwu賬戶經過SSH登陸系統。