{"id":18157,"date":"2014-01-14T06:22:38","date_gmt":"2014-01-13T22:22:38","guid":{"rendered":"https:\/\/2blog.ilc.edu.tw\/25793\/2014\/01\/14\/%e4%bb%a5-fail2ban-%e5%81%b5%e6%b8%ac-ftp-%e9%80%a3%e7%b7%9a%e6%94%bb%e6%93%8a-proftpd-%e7%af%87\/"},"modified":"2014-01-14T06:22:38","modified_gmt":"2014-01-13T22:22:38","slug":"%e4%bb%a5-fail2ban-%e5%81%b5%e6%b8%ac-ftp-%e9%80%a3%e7%b7%9a%e6%94%bb%e6%93%8a-proftpd-%e7%af%87","status":"publish","type":"post","link":"https:\/\/2blog.ilc.edu.tw\/25793\/2014\/01\/14\/%e4%bb%a5-fail2ban-%e5%81%b5%e6%b8%ac-ftp-%e9%80%a3%e7%b7%9a%e6%94%bb%e6%93%8a-proftpd-%e7%af%87\/","title":{"rendered":"\u4ee5 fail2ban \u5075\u6e2c ftp \u9023\u7dda\u653b\u64ca &#8211; ProFTPD \u7bc7"},"content":{"rendered":"<p>\u4fee\u6539 \/etc\/proftpd.conf \u8b93 ProFTPD FTP Server \u7522\u751f\u55ae\u7368\u7684 log \u6a94<br \/># <span style=\"color: #ff0000;\">vim \/etc\/proftpd.conf<\/span><br \/><span style=\"color: #0000ff;\"># \u7522\u751f log \u6a94<\/span><br \/><span style=\"color: #0000ff;\">SystemLog\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/var\/log\/proftpd\/proftpd.log<\/span><br \/><span style=\"color: #0000ff;\">TransferLog\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/var\/log\/proftpd\/xferlog<\/span><\/p>\n<p>\u91cd\u65b0\u555f\u52d5 ProFTPD Server<br \/># <span style=\"color: #ff0000;\">service proftpd restart<\/span><br \/><span style=\"color: #0000ff;\">Shutting down proftpd:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [\u00a0 OK\u00a0 ]<\/span><br \/><span style=\"color: #0000ff;\">Starting proftpd:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [\u00a0 OK\u00a0 ]<\/span><\/p>\n<p>\u5728 \/var\/log\/proftpd \u76ee\u9304\u4e4b\u4e0b\u53ef\u4ee5\u770b\u5230 Log \u6a94<br \/>#<span style=\"color: #ff0000;\"> ls -l \/var\/log\/proftpd\/proftpd.log<\/span><br \/><span style=\"color: #0000ff;\">-rw-r&#8212;&#8211;. 1 root root 129 Jan\u00a0 1 14:24 \/var\/log\/proftpd\/proftpd.log<\/span>[@more@]<br \/>\u4fee\u6539 \/etc\/fail2ban\/jail.conf \u8a2d\u5b9a\u6a94<br \/># <span style=\"color: #ff0000;\">vim \/etc\/fail2ban\/jail.conf<\/span><br \/><span style=\"color: #0000ff;\">[proftpd-iptables]<\/span><\/p>\n<p><span style=\"color: #0000ff;\">enabled\u00a0 = true<\/span><br \/><span style=\"color: #0000ff;\">filter\u00a0\u00a0 = proftpd<\/span><br \/><span style=\"color: #0000ff;\">action\u00a0\u00a0 = iptables[name=ProFTPD, port=ftp, protocol=tcp]<\/span><br \/><span style=\"color: #0000ff;\">#\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 sendmail-whois[name=ProFTPD, dest=you@example.com]<\/span><br \/><span style=\"color: #0000ff;\">logpath\u00a0 = \/var\/log\/proftpd\/proftpd.log<\/span><br \/><span style=\"color: #0000ff;\">maxretry = 3<\/span><br \/><span style=\"color: #0000ff;\">bantime\u00a0 = 86400<\/span><\/p>\n<p>\u91cd\u65b0\u555f\u52d5 fail2ban<br \/># <span style=\"color: #ff0000;\">service fail2ban restart<\/span><br \/><span style=\"color: #0000ff;\">Stopping fail2ban:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [\u00a0 OK\u00a0 ]<\/span><br \/><span style=\"color: #0000ff;\">Starting fail2ban:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 [\u00a0 OK\u00a0 ]<\/span><\/p>\n<p># <span style=\"color: #ff0000;\">fail2ban-client status<\/span><br \/><span style=\"color: #0000ff;\">Status<\/span><br \/><span style=\"color: #0000ff;\">|- Number of jail:\u00a0\u00a0\u00a0\u00a0\u00a0 2<\/span><br \/><span style=\"color: #0000ff;\">`- Jail list:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 proftpd-iptables, ssh-iptables<\/span><\/p>\n<p>\u5617\u8a66\u9023\u7dda\u932f\u8aa4\u5e7e\u6b21\u4e4b\u5f8c<br \/># <span style=\"color: #ff0000;\">fail2ban-client status proftpd-iptables<\/span><br \/><span style=\"color: #0000ff;\">Status for the jail: proftpd-iptables<\/span><br \/><span style=\"color: #0000ff;\">|- filter<\/span><br \/><span style=\"color: #0000ff;\">|\u00a0 |- File list:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/var\/log\/proftpd\/proftpd.log<\/span><br \/><span style=\"color: #0000ff;\">|\u00a0 |- Currently failed: 0<\/span><br \/><span style=\"color: #0000ff;\">|\u00a0 `- Total failed:\u00a0\u00a0\u00a0\u00a0 3<\/span><br \/><span style=\"color: #0000ff;\">`- action<\/span><br \/><span style=\"color: #0000ff;\">\u00a0\u00a0 |- Currently banned: 1<\/span><br \/><span style=\"color: #0000ff;\">\u00a0\u00a0 |\u00a0 `- IP list:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 192.168.1.1<\/span><br \/><span style=\"color: #0000ff;\">\u00a0\u00a0 `- Total banned:\u00a0\u00a0\u00a0\u00a0 1<\/span><\/p>\n<p>\u5728\u9632\u706b\u7246\u4e2d\u7684\u898f\u5247<br \/>#<span style=\"color: #ff0000;\"> iptables -t filter -L fail2ban-ProFTPD -n<\/span><br \/><span style=\"color: #0000ff;\">Chain fail2ban-ProFTPD (1 references)<\/span><br \/><span style=\"color: #0000ff;\">target\u00a0\u00a0\u00a0\u00a0 prot opt source\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 destination<\/span><br \/><span style=\"color: #0000ff;\">DROP\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0 &#8212;\u00a0 192.168.1.1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0<\/span><br \/><span style=\"color: #0000ff;\">RETURN\u00a0\u00a0\u00a0\u00a0 all\u00a0 &#8212;\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4fee\u6539 \/etc\/proftpd.conf \u8b93 ProFTPD FTP Server \u7522\u751f\u55ae\u7368\u7684 log \u6a94# &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/2blog.ilc.edu.tw\/25793\/2014\/01\/14\/%e4%bb%a5-fail2ban-%e5%81%b5%e6%b8%ac-ftp-%e9%80%a3%e7%b7%9a%e6%94%bb%e6%93%8a-proftpd-%e7%af%87\/\" class=\"more-link\">\u95b1\u8b80\u5168\u6587<span class=\"screen-reader-text\">\u3008\u4ee5 fail2ban \u5075\u6e2c ftp \u9023\u7dda\u653b\u64ca &#8211; ProFTPD \u7bc7\u3009<\/span><\/a><\/p>\n","protected":false},"author":55,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[138,130,132],"tags":[],"class_list":["post-18157","post","type-post","status-publish","format-standard","hentry","category-c-78483","category-c-78475","category-c-78477"],"meta_key":{"_encloseme":["1"],"lt_post_id":["468987"]},"_links":{"self":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/18157"}],"collection":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/users\/55"}],"replies":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/comments?post=18157"}],"version-history":[{"count":0,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/18157\/revisions"}],"wp:attachment":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/media?parent=18157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/categories?post=18157"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/tags?post=18157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}