{"id":19232,"date":"2016-07-19T06:42:46","date_gmt":"2016-07-18T22:42:46","guid":{"rendered":"https:\/\/2blog.ilc.edu.tw\/25793\/2016\/07\/19\/%e5%9c%a8-debian-linux-%e5%ae%89%e8%a3%9d-proftpd-ftp-server\/"},"modified":"2021-03-18T17:24:46","modified_gmt":"2021-03-18T09:24:46","slug":"%e5%9c%a8-debian-linux-%e5%ae%89%e8%a3%9d-proftpd-ftp-server","status":"publish","type":"post","link":"https:\/\/2blog.ilc.edu.tw\/25793\/2016\/07\/19\/%e5%9c%a8-debian-linux-%e5%ae%89%e8%a3%9d-proftpd-ftp-server\/","title":{"rendered":"\u5728 Debian Linux \u5b89\u88dd ProFTPD FTP Server"},"content":{"rendered":"<p>1. \u641c\u5c0b\u5957\u4ef6<br \/># <span style=\"color: #ff0000\">apt-cache search proftpd | grep ^proftpd<\/span><br \/><span style=\"color: #0000ff\">proftpd-basic &#8211; Versatile, virtual-hosting FTP daemon &#8211; binaries<\/span><br \/><span style=\"color: #0000ff\">proftpd-dev &#8211; Versatile, virtual-hosting FTP daemon &#8211; development files<\/span><br \/><span style=\"color: #0000ff\">proftpd-doc &#8211; Versatile, virtual-hosting FTP daemon &#8211; documentation<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-geoip &#8211; Versatile, virtual-hosting FTP daemon &#8211; GeoIP module<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-ldap &#8211; Versatile, virtual-hosting FTP daemon &#8211; LDAP module<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-mysql &#8211; Versatile, virtual-hosting FTP daemon &#8211; MySQL module<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-odbc &#8211; Versatile, virtual-hosting FTP daemon &#8211; ODBC module<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-pgsql &#8211; Versatile, virtual-hosting FTP daemon &#8211; PostgreSQL module<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-sqlite &#8211; Versatile, virtual-hosting FTP daemon &#8211; SQLite3 module<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-autohost &#8211; ProFTPD module mod_autohost<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-case &#8211; ProFTPD module mod_case<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-dnsbl &#8211; ProFTPD module mod_dnsbl<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-fsync &#8211; ProFTPD module mod_fsync<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-msg &#8211; ProFTPD module mod_msg<\/span><br \/><span style=\"color: #0000ff\">proftpd-mod-tar &#8211; ProFTPD module mod_tar<\/span><\/p>\n<p>2. \u9032\u884c\u5b89\u88dd<br \/># <span style=\"color: #ff0000\">apt-get install proftpd<\/span><br \/>\u4ee5 <span style=\"color: #0000ff\">standalone<\/span> \u65b9\u5f0f\u555f\u52d5\uff0c\u6548\u80fd\u6703\u6bd4\u8f03\u597d<br \/><a id=\"res_3588663\" href=\"https:\/\/2blog.ilc.edu.tw\/wp-content\/uploads\/sites\/985\/25793\/25793-3588663.png\"><img decoding=\"async\" src=\"https:\/\/2blog.ilc.edu.tw\/wp-content\/uploads\/sites\/985\/25793\/previews-med\/25793-3588663.png\" border=\"0\" alt=\"\" \/><\/a>[@more@]3. \u4fee\u6539\u8a2d\u5b9a\u6a94 <span style=\"color: #0000ff\">\/etc\/proftpd\/proftpd.conf<\/span><br \/># <span style=\"color: #ff0000\">grep -E -v &#8216;^#|^$&#8217; \/etc\/proftpd\/proftpd.conf<\/span><br \/><span style=\"color: #0000ff\">Include \/etc\/proftpd\/modules.conf<\/span><br \/><span style=\"color: #0000ff\">UseIPv6\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 on<\/span><br \/><span style=\"color: #0000ff\">IdentLookups\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 off<\/span><br \/><span style=\"color: #0000ff\">ServerName\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8220;Debian&#8221;<\/span><br \/><span style=\"color: #0000ff\">ServerType\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 standalone<\/span><br \/><span style=\"color: #0000ff\">DeferWelcome\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 off<\/span><br \/><span style=\"color: #0000ff\">DefaultAddress\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 192.168.1.12<\/span><br \/><span style=\"color: #0000ff\">MultilineRFC2228\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 on<\/span><br \/><span style=\"color: #0000ff\">DefaultServer\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 on<\/span><br \/><span style=\"color: #0000ff\">ShowSymlinks\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 on<\/span><br \/><span style=\"color: #0000ff\">TimeoutNoTransfer\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 600<\/span><br \/><span style=\"color: #0000ff\">TimeoutStalled\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 600<\/span><br \/><span style=\"color: #0000ff\">TimeoutIdle\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1200<\/span><br \/><span style=\"color: #0000ff\">DisplayLogin\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 welcome.msg<\/span><br \/><span style=\"color: #0000ff\">DisplayChdir\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .message true<\/span><br \/><span style=\"color: #0000ff\">ListOptions\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8220;-l&#8221;<\/span><br \/><span style=\"color: #0000ff\">DenyFilter\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *.*\/<\/span><br \/><span style=\"color: #0000ff\">UseFtpUsers off<\/span><br \/><span style=\"color: #0000ff\">RootLogin on<\/span><br \/><span style=\"color: #0000ff\">DefaultRoot\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ~ !root<\/span><br \/><span style=\"color: #0000ff\">Port\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 21<\/span><br \/><span style=\"color: #0000ff\">PassivePorts\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 49152 65534<\/span><br \/><span style=\"color: #0000ff\">&lt;IfModule mod_dynmasq.c&gt;<\/span><br \/><span style=\"color: #0000ff\">&lt;\/IfModule&gt;<\/span><br \/><span style=\"color: #0000ff\">MaxInstances\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 30<\/span><br \/><span style=\"color: #0000ff\">User\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 proftpd<\/span><br \/><span style=\"color: #0000ff\">Group\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 nogroup<\/span><br \/><span style=\"color: #0000ff\">Umask\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 022\u00a0 022<\/span><br \/><span style=\"color: #0000ff\">AllowOverwrite\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 on<\/span><br \/><span style=\"color: #0000ff\">TransferLog \/var\/log\/proftpd\/xferlog<\/span><br \/><span style=\"color: #0000ff\">SystemLog\u00a0\u00a0 \/var\/log\/proftpd\/proftpd.log<\/span><br \/><span style=\"color: #0000ff\">&lt;IfModule mod_quotatab.c&gt;<\/span><br \/><span style=\"color: #0000ff\">QuotaEngine off<\/span><br \/><span style=\"color: #0000ff\">&lt;\/IfModule&gt;<\/span><br \/><span style=\"color: #0000ff\">&lt;IfModule mod_ratio.c&gt;<\/span><br \/><span style=\"color: #0000ff\">Ratios off<\/span><br \/><span style=\"color: #0000ff\">&lt;\/IfModule&gt;<\/span><br \/><span style=\"color: #0000ff\">&lt;IfModule mod_delay.c&gt;<\/span><br \/><span style=\"color: #0000ff\">DelayEngine on<\/span><br \/><span style=\"color: #0000ff\">&lt;\/IfModule&gt;<\/span><br \/><span style=\"color: #0000ff\">&lt;IfModule mod_ctrls.c&gt;<\/span><br \/><span style=\"color: #0000ff\">ControlsEngine\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 off<\/span><br \/><span style=\"color: #0000ff\">ControlsMaxClients\u00a0\u00a0\u00a0 2<\/span><br \/><span style=\"color: #0000ff\">ControlsLog\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/var\/log\/proftpd\/controls.log<\/span><br \/><span style=\"color: #0000ff\">ControlsInterval\u00a0\u00a0\u00a0\u00a0\u00a0 5<\/span><br \/><span style=\"color: #0000ff\">ControlsSocket\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/var\/run\/proftpd\/proftpd.sock<\/span><br \/><span style=\"color: #0000ff\">&lt;\/IfModule&gt;<\/span><br \/><span style=\"color: #0000ff\">&lt;IfModule mod_ctrls_admin.c&gt;<\/span><br \/><span style=\"color: #0000ff\">AdminControlsEngine off<\/span><br \/><span style=\"color: #0000ff\">&lt;\/IfModule&gt;<\/span><br \/><span style=\"color: #0000ff\">Include \/etc\/proftpd\/conf.d\/<\/span><\/p>\n<p>4. \u555f\u52d5 ProFTPD FTP Server<br \/>#<span style=\"color: #ff0000\"> \/etc\/init.d\/proftpd start<\/span><\/p>\n<p>5. \u6aa2\u67e5 FTP Server \u662f\u5426\u6709\u6b63\u5e38\u555f\u52d5<br \/># <span style=\"color: #ff0000\">netstat -an | grep :21<\/span><br \/><span style=\"color: #0000ff\">tcp6\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0\u00a0\u00a0\u00a0\u00a0 0 :::21\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 LISTEN<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. \u641c\u5c0b\u5957\u4ef6# apt-cache search proftpd | grep ^proftpdproftp &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/2blog.ilc.edu.tw\/25793\/2016\/07\/19\/%e5%9c%a8-debian-linux-%e5%ae%89%e8%a3%9d-proftpd-ftp-server\/\" class=\"more-link\">\u95b1\u8b80\u5168\u6587<span class=\"screen-reader-text\">\u3008\u5728 Debian Linux \u5b89\u88dd ProFTPD FTP Server\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":[179,130],"tags":[],"class_list":["post-19232","post","type-post","status-publish","format-standard","hentry","category-c-87877","category-c-78475"],"meta_key":{"_pingme":["1"],"_encloseme":["1"],"lt_post_id":["648624"]},"_links":{"self":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19232"}],"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=19232"}],"version-history":[{"count":1,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19232\/revisions"}],"predecessor-version":[{"id":20793,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19232\/revisions\/20793"}],"wp:attachment":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/media?parent=19232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/categories?post=19232"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/tags?post=19232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}