/etc/hosts.allow和/etc/hosts.deny兩個文件是控制遠程訪問設置的,通過他可以允許或者拒絕某個ip或者ip段的客戶訪問linux的某項服務。
如果請求訪問的主機名或IP不包含在/etc/hosts.allow中,那麼tcpd進程就檢查/etc/hosts.deny。看請求訪問的主機名或IP有沒有包含在hosts.deny文件中。如果包含,那麼訪問就被拒絕;如果既不包含在/etc/hosts.allow中,又不包含在/etc/hosts.deny中,那麼此訪問也被允許。
:[:
daemon list 服務進程名列表,如telnet的服務進程名為in.telnetd
client list 訪問控制的客戶端列表,可以寫域名、主機名或網段,如.trubolinux.com.cn或者192.168.1.
option 可選選項,這裡可以是某些命令,也可以是指定的日志文件
例子:hosts.allow
in.telnetd:.vpser.net
vsftpd:192.168.0.
sshd:192.168.0.0/255.255.255.0
/etc/hosts.allow裡第一行vpser.net表示,只有vpser.net這個域裡的主機允許訪問TELNET服務,注意vpser.net前面的那個點(.)。
/etc/hosts.allow裡第二行表示,只有192.168.0這個網段的用戶允許訪問FTP服務,注意0後面的點(.)。
/etc/hosts.allow裡第三行表示,只有192.168.0這個網段的用戶允許訪問SSH服務,注意這裡不能寫為192.168.0.0/24。雖然在CISCO路由器種這兩中寫法是等同的。
在/etc/hosts.deny裡加上:
sshd:62.75.214.93
sshd:203.215.252.189
sshd:219.143.200.169
sshd:60.12.193.134
sshd:201.83.220.44
sshd:c953dc2c.virtua.com.br
sshd:gera125.server4you.de
把他們訪問SSH的全部給拒絕了,Linux的GFW也很強。