利用 /etc/hosts.allow 與 /etc/hosts.deny 搭配 tcpd (TCP Wrappers),可針對特定服務 (SSH、Telnet、FTP 等) 實施 IP 白名單/黑名單控管,無需調整防火牆規則。
服務名稱: 用戶端清單 [: 選擇性命令]
# 例:sshd: 192.168.1.0/255.255.255.0 : allow
hosts.allow:優先比對,符合即允許。hosts.deny:次優先比對,符合即拒絕。# 僅允許特定網段存取 SSH
sshd: 210.13.218.* : allow
sshd: 222.77.15.* : allow
# 允許特定 IP 存取所有服務
ALL: 218.24.129.110
# Telnet 僅限內部網段
in.telnetd: 140.116.44.0/255.255.255.0
in.telnetd: 140.116.79.0/255.255.255.0
in.telnetd: 140.116.141.99
in.telnetd: LOCAL
# Samba 僅限內部網段
smbd: 192.168.0.0/255.255.255.0
# HTTP/HTTPS/FTP 開放所有
httpd: ALL
vsftpd: ALL
# PPTP VPN 排除內部網段 (反向邏輯)
pptpd: ALL EXCEPT 192.168.0.0/255.255.255.0
# 預設拒絕所有 SSH 連線 (配合 allow 白名單使用)
sshd: ALL : deny
# 預設拒絕 Telnet
in.telnetd: ALL
# 其他服務預設拒絕,僅允許特定網段
ALL: ALL EXCEPT 192.168.0.1/255.255.255.0, 192.168.1.21, 202.10.5.0/255.255.255.0
ALL:比對所有服務/所有 IP。EXCEPT:排除例外。PARANOID:比對反向 DNS 與正向 DNS 不符者 (防偽裝)。修改存檔後即時生效,無需重啟服務。配合 tcpdchk 驗證語法正確性。
CentOS 6 磁碟配額修改完整實戰:從建立用戶到 quota 限額調整
Ubuntu 筆電 Bumblebee 3.0 "Tumbleweed" 散熱優化:PPA 來源更新、ironhide 移除、bbswitch 切顯卡完整實戰
Linux Jetty 9 整合 JNDI 資料源開發實戰:H2 資料庫、Maven、Eclipse 完整範例
Ubuntu 笔记本屏幕亮度无法调节或不保存:Grub 参数 acpi_backlight 与 rc.local 修复
Linux ioctl 函數深度解析:從用戶空間到驅動程式的控制之路
CentOS wget 進度條多行顯示亂碼修復:locale 翻譯錯誤導致換行、msgunfmt/msgfmt 修正 .mo 檔案