hosts.deny 和hosts.allow 配置不生效


需求:需要用hosts.deny限制用戶通過ssh登錄

在/etc/hosts.deny中加入
sshd: all
在/etc/hosts.allow中加入
sshd:all #拒絕所有的ip鏈接ssh服務
在其他服務器上嘗試鏈接該服務器,卻發現還是正常鏈接
 
/etc/hosts.allow 與 /etc/hosts.deny 只對調用了 tcp_wrappers  的才起作用。
若是源代碼編譯的,看看編譯時是否尋找了 libwrap.so
1、在起效果機器下,執行如下命令:
[root@zt ~]# ldd /usr/sbin/sshd | grep libwrap.so
        libwrap.so.0 => /lib64/libwrap.so.0 (0x00002ba28edcc000)
 
2、在不起效果機器下,卻找不到libwrap.so
 
3、在生效的機器上執行:
rpm -qf /lib64/libwrap.so.0  結果如下:
      tcp_wrappers-7.6-40.7.el5
 
4、在不生效的機器上
yum install -y tcp_wrappers
安裝后,用ldd /usr/sbin/sshd | grep libwrap.so   還是沒有內容
 
5、在不生效機器上,繼續
yum list |grep openssh   結果:
openssh.x86_64                          5.3p2-24.el5           installed
openssh-clients.x86_64                   5.3p2-24.el5           installed
openssh-server.x86_64                    5.3p2-24.el5           installed
openssh.x86_64                           5.3p2-41.el5_5.1       updates
openssh-askpass.x86_64                   5.3p2-41.el5_5.1       updates
openssh-clients.x86_64                   5.3p2-41.el5_5.1       updates
openssh-server.x86_64                    5.3p2-41.el5_5.1       updates
 
於是,執行:
 
yum update -y openssh 
再次執行:
ldd /usr/sbin/sshd | grep libwrap.so
 
有結果顯示了。
別的服務器鏈接該服務器,也會報下面的錯誤
 
ssh_exchange_identification: Connection closed by remote host

hosts.deny 和hosts.allow 配置

一、vim /etc/ssh/sshd_config 

二、輸入:110G 尋址到110行

三、把#UsePrivilegeSeparation sandbox ,注釋掉

四、升級OpenSSH,yum update -y openssh 

五、修改TCP Wrappers策略,cat /etc/hosts.allow

ssh:IP

六、修改TCP Wrappers策略,cat /etc/hosts.deny

ssh:ALL

七、重啟sshd進程,service sshd restart


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM