su root
vi /etc/hosts.allow
容許內容html |
書寫格式(改爲自自須要的IP或IP段)linux |
ssh容許單個ipssh |
sshd:192.168.220.1spa |
ssh容許ip段3d |
sshd:192.168.220.rest |
telnet容許單個ipcode |
in.telnetd:192.168.220.1htm |
telnet容許ip段blog |
in.telnetd:192.168.221.教程 |
以ssh容許192.168.220.1和telnet容許192.168.220網段爲例,具體在/etc/hosts.allow加入內容以下:
vi /etc/hosts.deny
在文件中加入:
sshd:ALL in.telnetd:ALL
具體在/etc/hosts.deny加入內容以下:
service sshd restart
service xinetd restart
說明:
1.一個IP請求連入,linux的檢查策略是先看/etc/hosts.allow中是否容許,若是容許直接放行;若是沒有,則再看/etc/hosts.deny中是否禁止,若是禁止那麼就禁止連入。
2.實驗發現對/etc/hosts.allow和/etc/hosts.deny的配置不用重啓就當即生效,但無論重啓不重啓當前已有會話都不會受影響;也就是說對以前已經連入的,即使IP已配置爲禁止登陸會話仍不會強制斷開。不過不知是否全部linux都同樣,由此第四步標爲可選。
3.網上發現有些教程寫成不是sshd而是in.sshd不是in.telnetd而是telnetd的,我的以爲應該是獨立啓的不用加in.託管於xinetd的須要加in.