iptables/netfilter????tcp_wrapper

上下观古今,起伏千万途。这篇文章主要讲述iptables/netfilter????tcp_wrapper相关的知识,希望能为你提供帮助。
?????????etc      pac      nodeps      ??????      ??????      ??????      ??????      ??????      update     
iptables/netfilter???
Firewall?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????
???????????????
????????????????????????????????????
?????????????????????????????????????????????NetScreen???CheckPoint????????????
iptables(netfilter)
netfilter???kernel
hooks function?????????????????????
iptables???cli
rules untility
hooks function?????????????????????
input
output
forward
prerouting
postrouting
???????????????
???????????????PREROUTING --> INPUT ==> ?????????????????????
????????????????????????????????????==> OUTPUT --> POSTROUTING???
?????????PREROUTING --> FORWARD --> POSTROUTING
???????????????table???
filter????????????????????????
nat???network address translation????????????????????????????????????IP?????????IP????????????????????????
mangle?????????????????????????????????
raw?????????nat????????????????????????????????????
?iptables???
1???????????????PREROUTING???INPUT???FORWARD???OUTPUT???POSTROUTING?????????????????????????????????hook function??????
2????????????????????????????????????????????????????????????????????????????????????????????????
???< ==> ??????
filter???INPUT???FORWARD???OUTPUT
nat???PREROUTING???INPUT???OUTPUT???POSTROUTING
mangle???PREROUTING???INPUT???FORWARD???OUTPUT???POSTROUTING
raw???PREROUTING???OUTPUT
???????????????????????????????????????????????????????????????????????????--> ?????????raw> managle> nat> filter
??????????????????????????????
1?????????????????????????????????????????????????????????????????????INPUT?????????FORWARD?????????????????????????????????????????????????????????
2???????????????????????????????????????????????????????????????????????????
?????????
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
a??????????????????
1?????????????????????
2?????????????????????
b???????????????(target)???
1?????????????????????
2?????????????????????
3????????????????????????
??????????????????????????????
(1) ??????????????????????????????????????????????????????
(2) ??????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????????????????????
1????????????????????????????????????????????????????????????????????????
2???????????????????????????????????????????????????????????????????????????????????????
3?????????????????????????????????????????????????????????????????????
4????????????????????????
Centos 7
~]# systemctl stop firewalld.service
~]# systemctl disable firewalld.service
??????????????????iptables???????????????????????????????????????????????????????????????????????????????????????at??????crontab????????????????????????????????????????????????????????????
???????????????iptables ? [-t table] ? SUBCOMMAND ? chain ? [-m matchname [per-match-options]] ? -j targetname [per-target-options]
-t table???
raw, mangle, nat, [filter]
SUBCOMMAND???
????????????
-N???new, ???????????????????????????
-F???flush??????????????????????????????
-X??? delete??????????????????????????????
-Z???zero???????????????????????????iptables???????????????????????????????????????(1) ??????????????????????????????(2) ??????????????????????????????????????????
-P???Policy???????????????????????????filter??????????????????????????????????????????ACCEPT????????????DROP????????????REJECT?????????
-E???rename???????????????????????????????????????????????????????????????0????????????????????????????????????????????????????????????
???????????????
-A???append?????????????????????
-I???insert, ??????????????????????????????????????????????????????
-D???delete????????????????????????
-R???replace???????????????????????????????????????
?????????????????????(1) ?????????????????????(2) ?????????????????????
?-S???selected??????iptables-save???????????????????????????????????????
?????????
-L???list, ????????????????????????????????????
-n???numeric??????????????????????????????????????????
-v???verbose??????????????????
-vv, -vvv
-x???exactly???????????????????????????????????????????????????????????????
--line-numbers????????????????????????????????????
chain???
PREROUTING???INPUT???FORWARD???OUTPUT???POSTROUTING
???????????????
???????????????????????????????????????????????????iptables/netfilter???????????????
[!] -s, --source ?address[/mask][,...]????????????????????????IP???????????????????????????????????????????????????
[!] -d, --destination address[/mask][,...]???????????????????????????IP???????????????????????????????????????????????????
[!] -p, --protocol protocol
protocol: tcp, udp, udplite, icmp, icmpv6,esp, ah, sctp, mh or ?" all"
{tcp|udp|icmp}
[!] -i, --in-interface name?????????????????????????????????????????????????????????????????????????????????????????????PREROUTING???INPUT???FORWARD??????
[!] -o, --out-interface name?????????????????????????????????????????????????????????????????????????????????????????????FORWARD???OUTPUT???POSTROUTING??????
????????????????????? ????????????????????????????????????????????????????????????/usr/lib64/xtables/
?????????????????????????????????-m???????????????????????????????????????????????????-p??????????????????????????????
[!] -p, --protocol protocol
??????protocol: tcp, udp, udplite, icmp, icmpv6,esp, ah, sctp, mh or ?" all"
{tcp|udp|icmp}
1???-p tcp?????????????????????-m tcp????????????????????????
[!] --source-port, --sport port[:port]??????????????????tcp?????????????????????????????????????????????
[!] --destination-port,--dport port[:port]??????????????????tcp????????????????????????????????????????????????
[!] --tcp-flags ?LIST1 ?LIST2?????????LIST1?????????????????????????????????????????????LIST2???????????????????????????????????????1????????????????????????0????????????LIST1??????????????????????????????
SYN???ACK???FIN???RST???PSH???URG
????????????--tcp-flags ?SYN,ACK,FIN,RST ? ? SYN????????????
????????????????????????SYN,ACK,FIN,RST???????????????SYN?????????1?????????????????????0???
[!] --syn?????????????????????????????????????????????--tcp-flags ?SYN,ACK,FIN,RST ?SYN??????
2???-p udp ?????????????????????-m udp????????????????????????
[!] --source-port, --sport port[:port]??????????????????????????????????????????????????????
[!] --destination-port,--dport port[:port]?????????????????????????????????????????????????????????
3???-p icmp ?????????????????????-m icmp????????????????????????
[!] --icmp-type {type[/code]|typename}
echo-request???8/0echo??????
echo-reply???0/0 echo??????
??????????????????????????????????????????????????? [-m matchname [per-match-options]]???
???????????????
CentOS 6: man iptables
CentOS 7: man iptables-extensions
1???multiport??????
???????????????????????????????????????????????????15????????????
[!] --source-ports,--sports port[,port|,port:port]...???????????????????????????
[!] --destination-ports,--dports port[,port|,port:port]...??????????????????????????????
[!] --ports port[,port|,port:port]...????????????????????????
~]# iptables -A INPUT -s 172.16.0.0/16 -d 172.16.100.67 -p tcp -m multiport --dports 22,80 -j ACCEPT
2???iprange??????
????????????????????????????????????????????????????????????ip????????????????????????
[!] --src-range from[-to]??????IP???????????????
[!] --dst-range from[-to]?????????IP???????????????
~]# iptables -A INPUT -d 172.16.100.67 -p tcp --dport 80 -m iprange --src-range 172.16.100.5-172.16.100.10 -j DROP
3???string??????
???????????????????????????????????????????????????????????????
--algo {bm|kmp}?????????????????????????????????
bm???Boyer-Moore
kmp???Knuth-Pratt-Morris
[!] --string pattern???????????????????????????????????????
[!] --hex-string pattern???????????????????????????????????????16???????????????
~]# iptables -A OUTPUT -s 172.16.100.67 -d 172.16.0.0/16 -p tcp --sport 80 -m string --algo bm --string ???gay??? -j REJECT
4???time??????
???????????????????????????????????????????????????????????????????????????
--datestart YYYY[-MM[-DD[Thh[:mm[:ss]]]]]?????????????????????
--datestop YYYY[-MM[-DD[Thh[:mm[:ss]]]]]?????????????????????
--timestart hh:mm[:ss]???????????????????????????
--timestop hh:mm[:ss]???????????????????????????
[!] --monthdays day[,day...]?????????????????????????????????
[!] --weekdays day[,day...]?????????????????????????????????
--kerneltz?????????????????????????????????????????????UTC???
~]# iptables -A INPUT -s 172.16.0.0/16 -d 172.16.100.67 -p tcp --dport 80 -m time --timestart 14:30 --timestop 18:30 --weekdays Sat,Sun --kerneltz -j DROP
5???connlimit??????
??????????????????IP?????????????????????????????????
--connlimit-upto n??????????????????????????????n????????????
--connlimit-above n????????????????????????n????????????
~]# iptables -A INPUT -d 172.16.100.67 -p tcp --dport 21 -m connlimit --connlimit-above 8 ?-j REJECT
6???limit??????
??????????????????????????????????????????????????????????????????
?????????????????????
--limit rate[/second|/minute|/hour|/day]???????????????
--limit-burst number ????????????????
~]# iptables -I INPUT -d 172.16.100.67 -p icmp --icmp-type 8 -m limit --limit 3/minute --limit-burst 5 -j ACCEPT
~]# iptables -I INPUT 2 -p icmp -j REJECT
7???state??????
?????????????????????????????????????????????????????????
conntrack????????????????????????????????????????????????????????????????????????????????????
NEW???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
ESTABLISHED???NEW?????????????????????????????????????????????????????????????????????????????????????????????????????????
RELATED???????????????????????????ftp?????????????????????????????????????????????????????????
INVALID?????????????????????
UNTRACKED?????????????????????????????????????????????????????????????????????????????????????????????
[!] --state state
~]# ?iptables -A INPUT -d 172.16.100.67 -p tcp -m multiport --dports 22,80 -m state --state NEW,ESTABLISHED -j ACCEPT
~]# iptables -A OUTPUT -s 172.16.100.67 -p tcp -m multiport --sports 22,80 -m state --state ESTABLISHED -j ACCEPT
????????????????????????????????????????????????????????????????????????
/proc/sys/net/nf_contrack_max
sysctl -w net.nf_contrack_max 300000
echo " 300000" > /proc/sys/net/nf_contrack_max
????????????conntrack????????????????????????????????????/proc/sys/net/nf_contrack_max???????????????????????????????????????????????????????????????/proc/net/nf_conntrack????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???1?????????nf_contrack_max?????????
???2?????????nf_contrack_max????????????????????????
?????????????????????????????????????????????/proc/sys/net/netfilter/?????????
????????????????????????????????????????????????
/proc/net/nf_conntrack
???????????????????????????????????????
/proc/sys/net/netfilter/
iptables?????????????????????????????????/proc/sys/net/ipv4/ip_conntrack_max??????????????????????????????????????????????????????????????????????????????????????????????????????????????????
?????????????????????????????????????????????1?????????
(1) ??????nf_conntrack_max ???
vi /etc/sysctl.conf
net.ipv4.nf_conntrack_max = 393216
net.ipv4.netfilter.nf_conntrack_max = 393216
(2) ??????? nf_conntrack timeout??????
vi /etc/sysctl.conf
net.ipv4.netfilter.nf_conntrack_tcp_timeout_established = 300
net.ipv4.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
net.ipv4.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
net.ipv4.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120
iptables -t nat -L -n
???????????????????????????ftp?????????
(1) ??????ftp??????????????????????????????
~]# modprobe ?nf_conntrack_ftp
(2) ??????????????????(??????Server?????????172.16.100.67)???
~]# iptables -A INPUT -d 172.16.100.67 -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
~]# iptables -A OUTPUT -s 172.16.100.67 -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
(3) ??????????????????(??????Server?????????172.16.100.67)???
~]# iptables -A INPUT -d 172.16.100.67 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
~]# iptables -I OUTPUT -s 172.16.100.67 -m state --state ESTABLISHED -j ACCEPT
???????????????
?????????????????????????????????????????????????????????????????????????????????????????????
(1) ???????????????????????????????????????ESTABLISHED??????????????????
(2) ???????????????????????????????????????ESTABLISHED??????????????????
(3) ??????????????????????????????
(4) ???????????????????????????????????????????????????????????????????????????
???????????????????????????
??????????????????????????????????????????????????????????????????????????????????????????
?????????????????????target??????RETURN???
????????????????????????
??????iptables???????????????????????????????????????????????????????????????kernel???????????????
???????????????
?????????????????????????????????
CentOS 6???
???]# service ?iptables ?save
??????????????????/etc/sysconfig/iptables????????????
~]# iptables-save ?> ?/PATH/TO/SOME_RULES_FILE
CentOS 7:
~]# iptables-save ?> ?/PATH/TO/SOME_RULES_FILE
??????????????????????????????????????????
~]# iptables-restore < ?/PATH/FROM/SOME_RULES_FILE
CentOS 6???
~]# service ?iptables ?restart
????????????/etc/sysconfig/iptables?????????????????????
???????????????????????????????????????
(1) ??????????????????iptables?????????????????????????????????????????????
/etc/rc.d/rc.local??????????????????????????????
/PATH/TO/SOME_SCRIPT_FILE
(2) ????????????????????????????????????????????????????????????????????????????????????
/etc/rc.d/rc.local???????????????
iptables-restore < /PATH/FROM/IPTABLES_RULES_FILE
CentOS 7???
???????????????iptables??????????????????firewalld????????????????????????firewalld-cmd, ?firewalld-config
??????firewalld???
https://www.ibm.com/developerworks/cn/linux/1507_caojh/index.html
???????????????
-j targetname [per-target-options]
ACCEPT
DROP
REJECT
RETURN????????????????????????
REDIRECT?????????????????????
LOG??????????????????
MARK????????????????????????
DNAT????????????????????????
SNAT?????????????????????
MASQUERADE??????????????????
LOG?????????????????????????????????????????????
--log-level level ? ?????????????
emerg, alert, crit, error, warning, notice, info, debug.
--log-prefix prefix ????????????????
iptables -I FORWARD -s 10.0.1.0/24 -p tcp -m multiport --dports 80???21???22???23 -m state --state NEW -j LOG --log-prefix ??????new connctions??????RETURN:
??????????????????
REDIRECT???
????????????nat??????PREROUTING???POSTROUTING?????????????????????????????????????????????
--to-ports
iptables -t nat -A PREROUTING -d 172.18.100.67 -p tcp --dport 80 -j REDIRECT --to-ports 8080nat: network address translation?????????????????????????????????+???????????????
snat: source nat
??????IP???????????????IP?????????
???????????????????????????????????????????????????????????????????????????????????????????????????
??????????????????????????????????????????IP????????????????????????????????????
?????????????????????IP??????nat?????????????????????????????????????????????????????????
dnat: destination nat
??????IP??????????????????IP?????????
????????????????????????????????????????????????????????????????????????????????????????????????????????????
??????????????????????????????????????????????????????????????????????????????????????????
??????????????????IP??????nat?????????????????????????????????????????????????????????
pnat: port nat??????????????????
snat???POSTROUTING
???????????????????????????????????????????????????????????????????????????
dnat???PREROUTING
?????????????????????????????????????????????????????????????????????????????????????????????
nat??????target???
SNAT
--to-source [ipaddr[-ipaddr]][:port[-port]]
--random
DNAT
--to-destination [ipaddr[-ipaddr]][:port[-port]]
--random
MASQUERADE
--to-ports port[-port]
--random
SNAT?????????
~]# iptables -t nat -A POSTROUTING -s 192.168.12.0/24 -j SNAT --to-source 172.16.100.67
MASQUERADE???????????????nat??????POSTROUTING??????????????????????????????IP?????????????????????
????????????????????????????????????????????????????????????MASQUERADE???????????????????????????????????????
~]# iptables -t nat -A POSTROUTING -s 192.168.12.0/24 -j MASQUERADE
DNAT?????????
~]# iptables -t nat -A PREROUTING -d 172.16.100.67 -p tcp --dport 80 -j DNAT --to-destination 192.168.12.77
~]# iptables -t nat -A PREROUTING -d 172.16.100.67 -p tcp --dport 80 -j DNAT --to-destination 192.168.12.77:8080
~]# iptables -t nat -A PREROUTING -d 172.16.100.67 -p tcp --dport 22012 -j DNAT --to-destination 192.168.12.78:22
REDIRECT?????????????????????
web: 8080
80 --> 8080
??????????????????
iptables -t nat -A POSTROUTING -s localnet ! -d localnet -j SNAT --to-source extip
iptables -t nat -A POSTROUTING -s localnet ! -d localnet -j MASQUERADE
?????????????????????
iptables -t nat -A PREROUTING -d extip -p tcp|udp --dport PORT -j ?DNAT --to-destination ?INTERSERVERIP[:PORT]
???????????????iptables???recent???????????????DOS??????: 22???????????????????????????????????????????????????????????????????????????IP
ssh: ???????????????
iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 3 -j DROP
iptables -I INPUT ?-p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -I INPUT ?-p tcp --dport 22 -m state --state NEW -m recent --update --seconds 300 --hitcount 3 --name SSH -j LOG --log-prefix " SSH Attach: "
iptables -I INPUT ?-p tcp --dport 22 -m state --state NEW -m recent --update --seconds 300 --hitcount 3 --name SSH -j DROP
1.??????connlimit????????????IP??????????????????3??????????????????NAT?????????????????????????????????????????????????????????
2.??????recent???state???????????????IP???300s????????????????????????2?????????????????????????????????????????????????????????
???????????????????????????????????????
1.????????????????????????tcp 22????????????????????????????????????SSH
--set ????????????????????????IP?????????IP??????????????????????????????????????????
2.???????????????SSH????????????IP???300s???????????????3?????????????????????IP????????????
--update ??????????????????????????????????????????
--seconds?????????--rcheck??????--update????????????
--hitcount?????????--rcheck??????--update????????????
3.iptables????????????/proc/net/xt_recent/SSH
?????????????????????????????????????????????
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --name SSH --second 300 --hitcount 3 -j LOG --log-prefix " SSH Attack"
??????????????????
layer7???????????????????????????????????????????????????http???qq????????????
CentOS 6???
http://ftp.redhat.com/redhat/linux/enterprise/6Server/en/os/SRPMS/
layer7?????????????????????
iptables???????????????????????????
?????????layer7
?????????????????????
iptables/netfilter
iptables -m state,
netfilter state
???????????????netfilter????????????layer7?????????????????????
???iptables??????????????????layer7???????????????iptables
diff/patch?????????????????????
diff???Unix????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
??????# diff < ??????????????????> < ??????????????????>
?????????????????????diff??????????????????
?????? ???????????????normal diff???
??????
??????????????????context diff???
??????* ???????????????unified diff???
1??????????????????diff
????????????file1???????????????????????????file2????????????????????????????????????????????????????????????
?????? # diff file1 file2
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????file1??????n????????????????????????" c" ???????????????????????????????????????change????????????????????????" ??????" ???a?????????addition??????" ??????" ???d?????????deletion??????
2?????????????????????diff
????????????80?????????????????????????????????????????????BSD?????????Unix????????????diff?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????diff??????????????????????????????-c????????????context??????
?????? # diff -c f1 f2
??????????????????????????????????????????????????????????????????????????????????????????????????????????????????" ***" ???????????????????????????" ---" ??????????????????????????????????????????15?????????????????????????????????????????????????????????????????????????????????????????????????????????file1???
?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????!????????????????????????????????????????????????-????????????????????????????????????????????????+??????????????????????????????
??????????????????????????????????????????file2???
3??????????????????diff
????????????????????????????????????????????????????????????diff??????????????????????????????????????????????????????1990??????GNU diff???????????????" ????????????" ???diff??????f1???f2????????????????????????????????????
???????????????????????????u???????????????unified??????
??????# diff -u f1 f2br/>?????????????????????????????????????????????????????????"---"???????????????????????????"+++"??????????????????????????????????????????????????????????????????@???????????????????????????????????????????????????????????????
diff
-u
patch
?????????????????????patch???diff?????????????????????patch?????????diff?????????????????????????????????????????????patch??????????????????diff????????????????????????????????????patch????????????patch????????????????????????????????????????????????????????????????????????????????????diff???????????????????????????patch?????????????????????diff????????????????????????????????????????????????????????????
patch??????????????????
patch [options] [originalfile] [patchfile]
??????patchfile??????????????????????????????patchfile???????????????originalfile??????????????????patchfile?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????patchfile???????????????????????????????????????????????????????????????patch??????????????????????????????????????????
patch?????????????????????????????????????????????????????????diff????????????????????????patch??????????????????????????????diff????????????" ?????????" ???" ????????????" ????????????????????????" Index???" ?????????????????????????????????????????????
-p?????????????????????????????????????????????????????????????????????????????????-p???????????????????????????????????????-p0?????????-p 0???????????????????????????????????????-p1??????????????????" /" ????????????????????????????????????/usr/src/linux-2.4.15/Makefile??????????????????????????????-p3??????????????????linux-2.4.15/Makefile????????????patch????????????
patch
-p
-R
mockbuild
?????????????????????
1????????????????????????
useradd mockbuild rpm -ivh kernel-2.6.32-431.5.1.x86_64.el6.src.rpm cd rpmbuild/SOURCES tar linux-2.6.32-*.tar.gz -C /usr/src cd /usr/src ln -sv2?????????????????????
tar xf netfilter-layer7-v2.23.tar.bz2 cd /usr/src/linux patch -p1 < /root/netfilter-layer7-v2.23/kernel-2.6.32-layer7-2.23.patch cp /boot/config-* ?.config make menuconfig?????????????????????layer7??????
Networking support ??? Networking Options ???Network packet filtering framework ??? Core Netfilter Configuration
< M> ????layer7??? match support
3????????????????????????
make make modules_install make install4?????????????????????????????????
5?????????iptables
tar xf iptables-1.4.20.tar.gz cp /root/netfilter-layer7-v2.23/iptables-1.4.3forward-for-kernel-2.6.20forward/* /root/iptables-1.4.20/extensions/ cp /etc/rc.d/init.d/iptales /root cp /etc/sysconfig/iptables-config /root rpm -e iptables iptables-ipv6 --nodeps ./configure ?--prefix=/usr ?--with-ksource=/usr/src/linux make & & make install cp /root/iptables /etc/rc.d/init.d cp /root/iptables-config /etc/sysconfig6??????layer7?????????????????????????????????????????????
tar zxvf l7-protocols-2009-05-28.tar.gz cd l7-protocols-2009-05-28 make install7???????????????layer7??????
ACCT????????????????????????????????????????????????????????????????????????????????????nf_conntrack????????????????????????
net.netfilter.nf_conntrack_acct = 1
l7-filter uses the standard iptables extension syntax
iptables [specify table & chain] -m layer7 --l7proto [protocol name] -j [action] iptables -A FORWARD -m layer7 --l7proto qq -j REJECT???????????????
make menuconfig
make -j #
make modules_install
make install
????????????????????????
?????????xt_layer7.ko?????????nf_conntrack.ko??????
?tcp_wrapper???tcp?????????
?????????tcp??????????????????????????????????????????????????????????????????????????????????????????????????????????????????libwrap
??????????????????????????????tcp_wrapper??????????????????????????????
(1) ???????????????ldd?????????
ldd $(which COMMAND) | grep libwrap
(2) ???????????????strings????????????????????????????????????????????????????????????hosts.allow???hosts.deny?????????
strings $(which COMMAND)
???????????????????????????xinetd????????????libwrap.so???
????????????libwrap??????????????????????????????
????????????/etc/hosts.allow??????????????????????????????????????????????????????
????????????????????????????????????
?????????????????????/etc/hosts.deny??????????????????????????????????????????????????????
?????????????????????????????????????????????
??????????????????????????????
?????????????????????
daemon_list???client_list [:options]
daemon_list???
(1) ????????????????????????????????????????????????????????????vsftpd???
(2) ????????????????????????????????????????????????
?????????sshd, vsftpd
(3) ALL???????????????tcp_wrapper??????????????????
client_list???
???1???IP?????????????????????
???2??????????????????????????????????????????????????????172.18.0.0/255.255.0.0?????????????????????????????????????????????172.16. ??????172.16.0.0/255.255.0.0????????????????????????????????????
???3???ALL??????????????????
???4???KNOWN??????????????????????????????UNKNOWN???PARANOID???????????????????????????
???5???EXCEPT????????????
???????????????172.18???????????????172.18.100??????????????????172.18.100.68??????????????????except???????????????
vsftpd??? 172.18. EXCEPT 172.18.100.0/255.255.255.0 EXCEPT 172.18.100.68
:options
deny????????????????????????hosts.allow?????????
allow????????????????????????hosts.deny?????????
spawn?????????????????????????????????
?????????sshd: ALL :spawn /bin/echo $(date) login attempt from %c to %s, %d > > /var/log/sshd.log
?????????????????????
%c??? client ip
%s: [email  protected]_ ip
%d: daemon name
%p???daemon process id
?????????????????????????????????man hosts_access
?????????vsftpd????????????172.16.0.0/255.255.0.0?????????????????????
? sshd????????????172.16.0.0/255.255.0.0????????????????????????????????????172.16.100.6???
/etc/hosts.allow:
sshd: 172.16. ?EXCEPT ?172.16.100.6
vsftpd??? 172.16.
【iptables/netfilter????tcp_wrapper】/etc/hosts.deny:
sshd: ALL
vsftpd???ALL

    推荐阅读