{"id":84,"date":"2009-11-08T23:35:01","date_gmt":"2009-11-08T23:35:01","guid":{"rendered":"http:\/\/www.huzs.top\/?p=84"},"modified":"2009-11-08T23:35:01","modified_gmt":"2009-11-08T23:35:01","slug":"84","status":"publish","type":"post","link":"https:\/\/www.huzs.top\/?p=84","title":{"rendered":"\u3010Linux\u670d\u52a1\u5668\u914d\u7f6e\u3011FTP\u670d\u52a1&#124;vsftpd\u914d\u7f6e"},"content":{"rendered":"<p style=\"text-align: center\"><strong>\u3010Linux\u670d\u52a1\u5668\u914d\u7f6e\u3011FTP\u670d\u52a1|vsftpd\u914d\u7f6e<\/strong><\/p>\n<p>\\n<\/p>\n<p><span style=\"font-size: 20px\"><span style=\"font-family: \u9ed1\u4f53\">\u5b89\u88c5<\/span><\/span><br \/>\\nrpm -qa|gerp vsftpd \/\/\u67e5\u627evsftpd\u6709\u6ca1\u6709\u5b89\u88c5<br \/>\\n\u5982\u679c\u6ca1\u6709\u5b89\u88c5\u5c31<br \/>\\n1\u3001yum install vsftpd<br \/>\\n2\u3001vsftpd-2.0.1-5.i386.rpm (\u5728\u7b2c\u4e00\u5f20\u5149\u76d8)<br \/>\\n\u5728linux\u4e2d\u6709\u4e00\u4e2a\u975e\u5e38\u91cd\u8981\u7684\u4e00\u70b9\u5c31\u662f\u8981\u6302\u8f7d\u5149\u9a71 mount \/media\/cdrom<br \/>\\n\u5728\u8fd9\u91cc\u6211\u4eec\u5c31\u4e0d\u7528\u6e90\u4ee3\u7801\u5b89\u88c5\u4e86\u3002\u7528\u7684\u662frpm\u5b89\u88c5<br \/>\\n#rpm -ivh vsftpd-2.0.1-5.i386.rpm<br \/>\\n\u8fd9\u91cc\u5c31\u5b89\u88c5\u597d\u4e86\u3002<\/p>\n<p>\\n<\/p>\n<p><span style=\"font-size: 20px\"><span style=\"font-family: \u9ed1\u4f53\">\u9884\u914d\u7f6e<br \/>\\n<\/span><\/span>service vsftpd start \u542f\u52a8vsftpd\u670d\u52a1<br \/>\\n\u5982\u679c\u5728\u4e0d\u8bbe\u7f6e\u4efb\u4f55\u7684\u60c5\u51b5\u4e0b\uff0c\u53ef\u4ee5\u4ee5\u533f\u540d\u7684\u65b9\u5f0f\u8bbf\u95ee\u8be5ftp\u3002<br \/>\\n\u6ce8.\u5982\u679c\u8bbf\u95ee\u4e0d\u4e86\u7684\u65f6\u5019\u8bf7\u5927\u5bb6\u8981\u628alinux\u7684\u9632\u706b\u5899\u4e5f\u8981\u5173\u95ed:<br \/>\\niptables -F \u6e05\u9664\u9632\u706b\u5899<br \/>\\n\u5728\u5b89\u88c5\u597dftp\u4f1a\u4ea7\u751f\u51e0\u4e2a\u6587\u4ef6\uff1a<br \/>\\n\/etc\/vsftpd\/vsftpd.conf \u4e3b\u914d\u7f6e\u6587\u4ef6<br \/>\\n\/etc\/vsftpd.ftpusers \u6307\u5b9a\u54ea\u4e9b\u7528\u6237\u4e0d\u80fd\u8bbf\u95eeFTP\u670d\u52a1\u5668<br \/>\\n\/etc\/vsftpd.user_list \u6587\u4ef6\u4e2d\u6307\u5b9a\u7684\u7528\u6237\u662f\u5426\u53ef\u4ee5\u8bbf\u95eeftp\u670d\u52a1\u5668\u7531vsftpd.conf\u6587\u4ef6\u4e2d\u7684userlist_deny\u7684\u53d6\u503c\u6765\u51b3\u5b9a\u3002<\/p>\n<p>\\n<\/p>\n<p>&nbsp;<\/p>\n<p>\\n<\/p>\n<p>\\n<span style=\"font-family: \u9ed1\u4f53\"><span style=\"font-size: 20px\">vsftpd\u914d\u7f6e\u53c2\u6570\u8be6\u7ec6\u6574\u7406<\/span><\/span><\/p>\n<p>\\n<\/p>\n<p><strong>\/etc\/vsftpd\/vsftpd.conf \u914d\u7f6e<\/strong><br \/>\\n#\u63a5\u53d7\u533f\u540d\u7528\u6237 <br \/>\\nanonymous_enable=YES <br \/>\\n#\u533f\u540d\u7528\u6237login\u65f6\u4e0d\u8be2\u95ee\u53e3\u4ee4 <br \/>\\nno_anon_password=YES <br \/>\\n#\u533f\u540d\u7528\u6237\u4e3b\u76ee\u5f55 <br \/>\\nanon_root=(none) <br \/>\\n#\u63a5\u53d7\u672c\u5730\u7528\u6237 <br \/>\\nlocal_enable=YES <br \/>\\n#\u672c\u5730\u7528\u6237\u4e3b\u76ee\u5f55 <br \/>\\nlocal_root=(none) <br \/>\\n#\u5982\u679c\u533f\u540d\u7528\u6237\u9700\u8981\u5bc6\u7801,\u90a3\u4e48\u4f7f\u7528banned_email_file\u91cc\u9762\u7684\u7535\u5b50\u90ae\u4ef6\u5730\u5740\u7684\u7528\u6237\u4e0d\u80fd\u767b\u5f55 <br \/>\\ndeny_email_enable=YES <br \/>\\n#\u4ec5\u5728\u6ca1\u6709pam\u9a8c\u8bc1\u7248\u672c\u65f6\u6709\u7528,\u662f\u5426\u68c0\u67e5\u7528\u6237\u6709\u4e00\u4e2a\u6709\u6548\u7684shell\u6765\u767b\u5f55 <br \/>\\ncheck_shell=YES <br \/>\\n#\u82e5\u542f\u7528\u6b64\u9009\u9879,userlist_deny\u9009\u9879\u624d\u88ab\u542f\u52a8 <br \/>\\nuserlist_enable=YES <br \/>\\n#\u82e5\u4e3aYES,\u5219userlist_file\u4e2d\u7684\u7528\u6237\u5c06\u4e0d\u80fd\u767b\u5f55,\u4e3aNO\u5219\u53ea\u6709userlist_file\u7684\u7528\u6237\u53ef\u4ee5\u767b\u5f55 <br \/>\\nuserlist_deny=NO <br \/>\\n#\u5982\u679c\u548cchroot_local_user\u4e00\u8d77\u5f00\u542f,\u90a3\u4e48\u7528\u6237\u9501\u5b9a\u7684\u76ee\u5f55\u6765\u81ea\/etc\/passwd\u6bcf\u4e2a\u7528\u6237\u6307\u5b9a\u7684\u76ee\u5f55(\u8fd9\u4e2a\u4e0d\u662f\u5f88\u6e05\u695a,\u5f88\u54ea\u4f4d\u719f\u6089\u7684\u6307\u70b9\u4e00\u4e0b) <br \/>\\npasswd_chroot_enable=NO <br \/>\\n#\u5b9a\u4e49\u533f\u540d\u767b\u5165\u7684\u4f7f\u7528\u8005\u540d\u79f0\u3002\u9ed8\u8ba4\u503c\u4e3aftp\u3002 <br \/>\\nftp_username=FTP<\/p>\n<p>\\n<\/p>\n<p>#################\u7528\u6237\u6743\u9650\u63a7\u5236############### <br \/>\\n#\u53ef\u4ee5\u4e0a\u4f20(\u5168\u5c40\u63a7\u5236). <br \/>\\nwrite_enable=YES <br \/>\\n#\u672c\u5730\u7528\u6237\u4e0a\u4f20\u6587\u4ef6\u7684umask <br \/>\\nlocal_umask=022 <br \/>\\n#\u4e0a\u4f20\u6587\u4ef6\u7684\u6743\u9650\u914d\u5408umask\u4f7f\u7528 <br \/>\\n#file_open_mode=0666 <br \/>\\n#\u533f\u540d\u7528\u6237\u53ef\u4ee5\u4e0a\u4f20 <br \/>\\nanon_upload_enable=NO <br \/>\\n#\u533f\u540d\u7528\u6237\u53ef\u4ee5\u5efa\u76ee\u5f55 <br \/>\\nanon_mkdir_write_enable=NO <br \/>\\n\u533f\u540d\u7528\u6237\u5176\u5b83\u7684\u5199\u6743\u5229(\u66f4\u6539\u6743\u9650?) <br \/>\\nanon_other_write_enable=NO <br \/>\\n\u5982\u679c\u8bbe\u4e3aYES\uff0c\u533f\u540d\u767b\u5165\u8005\u4f1a\u88ab\u5141\u8bb8\u4e0b\u8f7d\u53ef\u9605\u8bfb\u7684\u6863\u6848\u3002\u9ed8\u8ba4\u503c\u4e3aYES\u3002 <br \/>\\nanon_world_readable_only=YES <br \/>\\n#\u5982\u679c\u5f00\u542f,\u90a3\u4e48\u6240\u6709\u975e\u533f\u540d\u767b\u9646\u7684\u7528\u6237\u540d\u90fd\u4f1a\u88ab\u5207\u6362\u6210guest_username\u6307\u5b9a\u7684\u7528\u6237\u540d <br \/>\\n#guest_enable=NO <br \/>\\n\u6240\u6709\u533f\u540d\u4e0a\u4f20\u7684\u6587\u4ef6\u7684\u6240\u5c5e\u7528\u6237\u5c06\u4f1a\u88ab\u66f4\u6539\u6210chown_username <br \/>\\nchown_uploads=YES <br \/>\\n\u533f\u540d\u4e0a\u4f20\u6587\u4ef6\u6240\u5c5e\u7528\u6237\u540d <br \/>\\nchown_username=lightwiter <br \/>\\n#\u5982\u679c\u542f\u52a8\u8fd9\u9879\u529f\u80fd\uff0c\u5219\u6240\u6709\u5217\u5728chroot_list_file\u4e4b\u4e2d\u7684\u4f7f\u7528\u8005\u4e0d\u80fd\u66f4\u6539\u6839\u76ee\u5f55 <br \/>\\nchroot_list_enable=YES <br \/>\\n#\u5141\u8bb8\u4f7f\u7528&quot;async ABOR&quot;\u547d\u4ee4,\u4e00\u822c\u4e0d\u7528,\u5bb9\u6613\u51fa\u95ee\u9898 <br \/>\\nasync_abor_enable=YES <br \/>\\n\u7ba1\u63a7\u662f\u5426\u53ef\u7528ASCII \u6a21\u5f0f\u4e0a\u4f20\u3002\u9ed8\u8ba4\u503c\u4e3aNO\u3002 <br \/>\\nascii_upload_enable=YES <br \/>\\n#\u7ba1\u63a7\u662f\u5426\u53ef\u7528ASCII \u6a21\u5f0f\u4e0b\u8f7d\u3002\u9ed8\u8ba4\u503c\u4e3aNO\u3002 <br \/>\\nascii_download_enable=YES <br \/>\\n#\u8fd9\u4e2a\u9009\u9879\u5fc5\u987b\u6307\u5b9a\u4e00\u4e2a\u7a7a\u7684\u6570\u636e\u5939\u4e14\u4efb\u4f55\u767b\u5165\u8005\u90fd\u4e0d\u80fd\u6709\u5199\u5165\u7684\u6743\u9650\uff0c\u5f53vsftpd \u4e0d\u9700\u8981file system \u7684\u6743\u9650\u65f6\uff0c\u5c31\u4f1a\u5c06\u4f7f\u7528\u8005\u9650\u5236\u5728\u6b64\u6570\u636e\u5939\u4e2d\u3002\u9ed8\u8ba4\u503c\u4e3a\/usr\/share\/empty <br \/>\\nsecure_chroot_dir=\/usr\/share\/empty<\/p>\n<p>\\n<\/p>\n<p>###################\u8d85\u65f6\u8bbe\u7f6e################## <br \/>\\n#\u7a7a\u95f2\u8fde\u63a5\u8d85\u65f6 <br \/>\\nidle_session_timeout=600 <br \/>\\n#\u6570\u636e\u4f20\u8f93\u8d85\u65f6 <br \/>\\ndata_connection_timeout=120 <br \/>\\n#PAVS\u8bf7\u6c42\u8d85\u65f6 <br \/>\\nACCEPT_TIMEOUT=60 <br \/>\\n#PROT\u6a21\u5f0f\u8fde\u63a5\u8d85\u65f6 <br \/>\\nconnect_timeout=60<\/p>\n<p>\\n<\/p>\n<p>################\u670d\u52a1\u5668\u529f\u80fd\u9009\u9879############### <br \/>\\n#\u5f00\u542f\u65e5\u8bb0\u529f\u80fd <br \/>\\nxferlog_enable=YES <br \/>\\n#\u4f7f\u7528\u6807\u51c6\u683c\u5f0f <br \/>\\nxferlog_std_format=YES <br \/>\\n#\u5f53xferlog_std_format\u5173\u95ed\u4e14\u672c\u9009\u9879\u5f00\u542f\u65f6,\u8bb0\u5f55\u6240\u6709ftp\u8bf7\u6c42\u548c\u56de\u590d,\u5f53\u8c03\u8bd5\u6bd4\u8f83\u6709\u7528. <br \/>\\n#log_ftp_protocol=NO <br \/>\\n#\u5141\u8bb8\u4f7f\u7528pasv\u6a21\u5f0f <br \/>\\npasv_enable=YES <br \/>\\n#\u5173\u95ed\u5b89\u5168\u68c0\u67e5,\u5c0f\u5fc3\u5440. <br \/>\\n#pasv_promiscuous+NO <br \/>\\n#\u5141\u8bb8\u4f7f\u7528port\u6a21\u5f0f <br \/>\\n#port_enable=YES <br \/>\\n#\u5173\u95ed\u5b89\u5168\u68c0\u67e5 <br \/>\\n#prot_promiscuous <br \/>\\n#\u5f00\u542ftcp_wrappers\u652f\u6301 <br \/>\\ntcp_wrappers=YES <br \/>\\n#\u5b9a\u4e49PAM \u6240\u4f7f\u7528\u7684\u540d\u79f0\uff0c\u9884\u8bbe\u4e3avsftpd\u3002 <br \/>\\npam_service_name=vsftpd <br \/>\\n#\u5f53\u670d\u52a1\u5668\u8fd0\u884c\u4e8e\u6700\u5e95\u5c42\u65f6\u4f7f\u7528\u7684\u7528\u6237\u540d <br \/>\\nnopriv_user=nobody <br \/>\\n#\u4f7fvsftpd\u5728pasv\u547d\u4ee4\u56de\u590d\u65f6\u8df3\u8f6c\u5230\u6307\u5b9a\u7684IP\u5730\u5740.(\u670d\u52a1\u5668\u8054\u63a5\u8df3\u8f6c?) <br \/>\\npasv_address=(none)<\/p>\n<p>\\n<\/p>\n<p>#################\u670d\u52a1\u5668\u6027\u80fd\u9009\u9879############## <br \/>\\n#\u662f\u5426\u80fd\u4f7f\u7528ls -R\u547d\u4ee4\u4ee5\u9632\u6b62\u6d6a\u8d39\u5927\u91cf\u7684\u670d\u52a1\u5668\u8d44\u6e90 <br \/>\\n#ls_recurse_enable=YES <br \/>\\n#\u662f\u5426\u4f7f\u7528\u5355\u8fdb\u7a0b\u6a21\u5f0f <br \/>\\n#one_process_model <br \/>\\n#\u7ed1\u5b9a\u5230listen_port\u6307\u5b9a\u7684\u7aef\u53e3,\u65e2\u7136\u90fd\u7ed1\u5b9a\u4e86\u4e5f\u5c31\u662f\u6bcf\u65f6\u90fd\u5f00\u7740\u7684,\u5c31\u662f\u90a3\u4e2a\u4ec0\u4e48standalone\u6a21\u5f0f <br \/>\\nlisten=YES <br \/>\\n#\u5f53\u4f7f\u7528\u8005\u767b\u5165\u540e\u4f7f\u7528ls -al \u4e4b\u7c7b\u7684\u6307\u4ee4\u67e5\u8be2\u8be5\u6863\u6848\u7684\u7ba1\u7406\u6743\u65f6\uff0c\u9884\u8bbe\u4f1a\u51fa\u73b0\u62e5\u6709\u8005\u7684UID\uff0c\u800c\u4e0d\u662f\u8be5\u6863\u6848\u62e5\u6709\u8005\u7684\u540d\u79f0\u3002\u82e5\u662f\u5e0c\u671b\u51fa\u73b0\u62e5\u6709\u8005\u7684\u540d\u79f0\uff0c\u5219\u5c06\u6b64\u529f\u80fd\u5f00\u542f\u3002 <br \/>\\ntext_userdb_names=NO <br \/>\\n#\u663e\u793a\u76ee\u5f55\u6e05\u5355\u65f6\u662f\u7528\u672c\u5730\u65f6\u95f4\u8fd8\u662fGMT\u65f6\u95f4,\u53ef\u4ee5\u901a\u8fc7mdtm\u547d\u4ee4\u6765\u8fbe\u5230\u4e00\u6837\u7684\u6548\u679c <br \/>\\nuse_localtime=NO <br \/>\\n#\u6d4b\u8bd5\u5e73\u53f0\u4f18\u5316 <br \/>\\n#use_sendfile=YES<\/p>\n<p>\\n<\/p>\n<p>################\u4fe1\u606f\u7c7b\u8bbe\u7f6e################ <br \/>\\n#login\u65f6\u663e\u793a\u6b22\u8fce\u4fe1\u606f.\u5982\u679c\u8bbe\u7f6e\u4e86banner_file\u5219\u6b64\u8bbe\u7f6e\u65e0\u6548 <br \/>\\nftpd_banner=\u6b22\u8fce\u6765\u5230\u6e56\u5357\u4e09\u8fb0Fake-Ta FTP \u7f51\u7ad9. <br \/>\\n#\u5141\u8bb8\u4e3a\u76ee\u5f55\u914d\u7f6e\u663e\u793a\u4fe1\u606f,\u663e\u793a\u6bcf\u4e2a\u76ee\u5f55\u4e0b\u9762\u7684message_file\u6587\u4ef6\u7684\u5185\u5bb9 <br \/>\\ndirmessage_enable=YES <br \/>\\n#\u663e\u793a\u4f1a\u8bdd\u72b6\u6001\u4fe1\u606f,\u5173! <br \/>\\n#setproctitle_enable=YES<\/p>\n<p>\\n<\/p>\n<p>############## \u6587\u4ef6\u5b9a\u4e49 ################## <br \/>\\n#\u5b9a\u4e49\u4e0d\u80fd\u66f4\u6539\u7528\u6237\u4e3b\u76ee\u5f55\u7684\u6587\u4ef6 <br \/>\\nchroot_list_file=\/etc\/vsftpd\/vsftpd.chroot_list <br \/>\\n#\u5b9a\u4e49\u9650\u5236\/\u5141\u8bb8\u7528\u6237\u767b\u5f55\u7684\u6587\u4ef6 <br \/>\\nuserlist_file=\/etc\/vsftpd\/vsftpd.user_list <br \/>\\n#\u5b9a\u4e49\u767b\u5f55\u4fe1\u606f\u6587\u4ef6\u7684\u4f4d\u7f6e <br \/>\\nbanner_file=\/etc\/vsftpd\/banner <br \/>\\n#\u7981\u6b62\u4f7f\u7528\u7684\u533f\u540d\u7528\u6237\u767b\u9646\u65f6\u4f5c\u4e3a\u5bc6\u7801\u7684\u7535\u5b50\u90ae\u4ef6\u5730\u5740 <br \/>\\nbanned_email_file=\/etc\/vsftpd.banned_emails <br \/>\\n#\u65e5\u5fd7\u6587\u4ef6\u4f4d\u7f6e <br \/>\\nxferlog_file=\/var\/log\/vsftpd.log <br \/>\\n#\u76ee\u5f55\u4fe1\u606f\u6587\u4ef6 <br \/>\\nmessage_file=.message<\/p>\n<p>\\n<\/p>\n<p>############## \u76ee\u5f55\u5b9a\u4e49 ################# <br \/>\\n#\u5b9a\u4e49\u7528\u6237\u914d\u7f6e\u6587\u4ef6\u7684\u76ee\u5f55 <br \/>\\nuser_config_dir=\/etc\/vsftpd\/userconf <br \/>\\n#\u5b9a\u4e49\u672c\u5730\u7528\u6237\u767b\u9646\u7684\u6839\u76ee\u5f55,\u6ce8\u610f\u5b9a\u4e49\u6839\u76ee\u5f55\u53ef\u4ee5\u662f\u76f8\u5bf9\u8def\u5f84\u4e5f\u53ef\u4ee5\u662f\u7edd\u5bf9\u8def\u5f84.\u76f8\u5bf9\u8def\u5f84\u662f\u9488\u5bf9\u7528\u6237\u5bb6\u76ee\u5f55\u6765\u8bf4\u7684. <br \/>\\nlocal_root=webdisk #\u6b64\u9879\u8bbe\u7f6e\u6bcf\u4e2a\u7528\u6237\u767b\u9646\u540e\u5176\u6839\u76ee\u5f55\u4e3a\/home\/username\/webdisk <br \/>\\n#\u533f\u540d\u7528\u6237\u767b\u9646\u540e\u7684\u6839\u76ee\u5f55 <br \/>\\nanon_root=\/var\/ftp<\/p>\n<p>\\n<\/p>\n<p>#############\u7528\u6237\u8fde\u63a5\u9009\u9879################# <br \/>\\n#\u53ef\u63a5\u53d7\u7684\u6700\u5927client\u6570\u76ee <br \/>\\nmax_clients=100 <br \/>\\n#\u6bcf\u4e2aip\u7684\u6700\u5927client\u6570\u76ee <br \/>\\nmax_per_ip=5 <br \/>\\n#\u4f7f\u7528\u6807\u51c6\u768420\u7aef\u53e3\u6765\u8fde\u63a5ftp <br \/>\\nconnect_from_port_20=YES <br \/>\\n#\u7ed1\u5b9a\u5230\u67d0\u4e2aIP,\u5176\u5b83IP\u4e0d\u80fd\u8bbf\u95ee <br \/>\\nlisten_address=192.168.0.2 <br \/>\\n#\u7ed1\u5b9a\u5230\u67d0\u4e2a\u7aef\u53e3 <br \/>\\n#listen_port=2121 <br \/>\\n#\u6570\u636e\u4f20\u8f93\u7aef\u53e3 <br \/>\\n#ftp_data_port=2020 <br \/>\\n#pasv\u8fde\u63a5\u6a21\u5f0f\u65f6\u53ef\u4ee5\u4f7f\u7528port \u8303\u56f4\u7684\u4e0a\u754c\uff0c0 \u8868\u793a\u4efb\u610f\u3002\u9ed8\u8ba4\u503c\u4e3a0\u3002 <br \/>\\npasv_max_port=0 <br \/>\\n#pasv\u8fde\u63a5\u6a21\u5f0f\u65f6\u53ef\u4ee5\u4f7f\u7528port \u8303\u56f4\u7684\u4e0b\u754c\uff0c0 \u8868\u793a\u4efb\u610f\u3002\u9ed8\u8ba4\u503c\u4e3a0\u3002 <br \/>\\npasv_min_port=0<\/p>\n<p>\\n<\/p>\n<p>##############\u6570\u636e\u4f20\u8f93\u9009\u9879################# <br \/>\\n#\u533f\u540d\u7528\u6237\u7684\u4f20\u8f93\u6bd4\u7387(b\/s) <br \/>\\nanon_max_rate=51200 <br \/>\\n#\u672c\u5730\u7528\u6237\u7684\u4f20\u8f93\u6bd4\u7387(b\/s) <br \/>\\nlocal_max_rate=5120000<\/p>\n<p>\\n<\/p>\n<p>######################################## <br \/>\\n\u522b\u5916,\u5982\u679c\u8981\u5bf9\u6bcf\u4e2a\u7528\u6237\u8fdb\u884c\u5355\u72ec\u7684\u63a7\u5236,\u53ea\u9700\u8981\u5728user_config_dir\u4e2d\u5efa\u7acbusername\u6587\u4ef6,\u5185\u5bb9\u4e3a\u6570\u636e\u4f20\u8f93\u548c\u7528\u6237\u6743\u5229\u91cc\u9762\u8bbe\u7f6e\u4e2a\u4eba\u7684\u5408\u9002\u7684\u9009\u9879,\u7528\u6237\u81ea\u5b9a\u4e49\u6587\u4ef6\u540c\u6837\u9002\u5408\u7528pam\u652f\u6301\u7684\u865a\u62df\u7528\u6237 <br \/>\\n\u9644: FTP \u6570\u5b57\u4ee3\u7801\u7684\u610f\u4e49 <br \/>\\n110 \u91cd\u65b0\u542f\u52a8\u6807\u8bb0\u5e94\u7b54\u3002 <br \/>\\n120 \u670d\u52a1\u5728\u591a\u4e45\u65f6\u95f4\u5185ready\u3002 <br \/>\\n125 \u6570\u636e\u94fe\u8def\u57e0\u5f00\u542f\uff0c\u51c6\u5907\u4f20\u9001\u3002 <br \/>\\n150 \u6587\u4ef6\u72b6\u6001\u6b63\u5e38\uff0c\u5f00\u542f\u6570\u636e\u8fde\u63a5\u7aef\u53e3\u3002 <br \/>\\n200 \u547d\u4ee4\u6267\u884c\u6210\u529f\u3002 <br \/>\\n202 \u547d\u4ee4\u6267\u884c\u5931\u8d25\u3002 <br \/>\\n211 \u7cfb\u7edf\u72b6\u6001\u6216\u662f\u7cfb\u7edf\u6c42\u52a9\u54cd\u5e94\u3002 <br \/>\\n212 \u76ee\u5f55\u7684\u72b6\u6001\u3002 <br \/>\\n213 \u6587\u4ef6\u7684\u72b6\u6001\u3002 <br \/>\\n214 \u6c42\u52a9\u7684\u8baf\u606f\u3002 <br \/>\\n215 \u540d\u79f0\u7cfb\u7edf\u7c7b\u578b\u3002 <br \/>\\n220 \u65b0\u7684\u8054\u673a\u670d\u52a1ready\u3002 <br \/>\\n221 \u670d\u52a1\u7684\u63a7\u5236\u8fde\u63a5\u57e0\u5173\u95ed\uff0c\u53ef\u4ee5\u6ce8\u9500\u3002 <br \/>\\n225 \u6570\u636e\u8fde\u7ed3\u5f00\u542f\uff0c\u4f46\u65e0\u4f20\u8f93\u52a8\u4f5c\u3002 <br \/>\\n226 \u5173\u95ed\u6570\u636e\u8fde\u63a5\u7aef\u53e3\uff0c\u8bf7\u6c42\u7684\u6587\u4ef6\u64cd\u4f5c\u6210\u529f\u3002 <br \/>\\n227 \u8fdb\u5165passive mode\u3002 <br \/>\\n230 \u4f7f\u7528\u8005\u767b\u5165\u3002 <br \/>\\n250 \u8bf7\u6c42\u7684\u6587\u4ef6\u64cd\u4f5c\u5b8c\u6210\u3002 <br \/>\\n257 \u663e\u793a\u76ee\u524d\u7684\u8def\u5f84\u540d\u79f0\u3002 <br \/>\\n331 \u7528\u6237\u540d\u79f0\u6b63\u786e\uff0c\u9700\u8981\u5bc6\u7801\u3002 <br \/>\\n332 \u767b\u5165\u65f6\u9700\u8981\u8d26\u53f7\u4fe1\u606f\u3002 <br \/>\\n350 \u8bf7\u6c42\u7684\u64cd\u4f5c\u9700\u8981\u8fdb\u4e00\u90e8\u7684\u547d\u4ee4\u3002 <br \/>\\n421 \u65e0\u6cd5\u63d0\u4f9b\u670d\u52a1\uff0c\u5173\u95ed\u63a7\u5236\u8fde\u7ed3\u3002 <br \/>\\n425 \u65e0\u6cd5\u5f00\u542f\u6570\u636e\u94fe\u8def\u3002 <br \/>\\n426 \u5173\u95ed\u8054\u673a\uff0c\u7ec8\u6b62\u4f20\u8f93\u3002 <br \/>\\n450 \u8bf7\u6c42\u7684\u64cd\u4f5c\u672a\u6267\u884c\u3002 <br \/>\\n451 \u547d\u4ee4\u7ec8\u6b62\uff1a\u6709\u672c\u5730\u7684\u9519\u8bef\u3002 <br \/>\\n452 \u672a\u6267\u884c\u547d\u4ee4\uff1a\u78c1\u76d8\u7a7a\u95f4\u4e0d\u8db3\u3002 <br \/>\\n500 \u683c\u5f0f\u9519\u8bef\uff0c\u65e0\u6cd5\u8bc6\u522b\u547d\u4ee4\u3002 <br \/>\\n501 \u53c2\u6570\u8bed\u6cd5\u9519\u8bef\u3002 <br \/>\\n502 \u547d\u4ee4\u6267\u884c\u5931\u8d25\u3002 <br \/>\\n503 \u547d\u4ee4\u987a\u5e8f\u9519\u8bef\u3002 <br \/>\\n504 \u547d\u4ee4\u6240\u63a5\u7684\u53c2\u6570\u4e0d\u6b63\u786e\u3002 <br \/>\\n530 \u672a\u767b\u5165\u3002 <br \/>\\n532 \u50a8\u5b58\u6587\u4ef6\u9700\u8981\u8d26\u6237\u767b\u5165\u3002 <br \/>\\n550 \u672a\u6267\u884c\u8bf7\u6c42\u7684\u64cd\u4f5c\u3002 <br \/>\\n551 \u8bf7\u6c42\u7684\u547d\u4ee4\u7ec8\u6b62\uff0c\u7c7b\u578b\u672a\u77e5\u3002 <br \/>\\n552 \u8bf7\u6c42\u7684\u6587\u4ef6\u7ec8\u6b62\uff0c\u50a8\u5b58\u4f4d\u6ea2\u51fa\u3002 <br \/>\\n553 \u672a\u6267\u884c\u8bf7\u6c42\u7684\u7684\u547d\u4ee4\uff0c\u540d\u79f0\u4e0d\u6b63\u786e\u3002<\/p>\n<p>\\n<\/p>\n<p>2\u3001VSFTPD\u5b98\u65b9\u8d44\u6599\u7ffb\u8bd1\u7248\uff08\u4e0d\u5b8c\u6574\u7248\uff09&#8212;\u6458\u81ea\u4e2d\u56fdLinux\u516c\u793e <br \/>\\n\u7ffb\u8bd1\u4e86\u90e8\u5206VSFTPD\u7684\u5b98\u65b9\u8d44\u6599\u3002 <br \/>\\n\u6709\u4e9b\u77e5\u9053\u662f\u4ec0\u4e48\u610f\u601d\uff0c\u4f46\u96be\u4e8e\u7ffb\u8bd1\u3002\u6709\u4e9b\u6d89\u53ca\u4e13\u4e1a\u7684\u77e5\u8bc6\uff0c\u6211\u81ea\u5df1\u4e5f\u4e0d\u61c2\uff0c\u53ea\u597d\u6309\u5b57\u9762\u7ffb\u8bd1\u3002\u6709\u4e9b\u6211\u81ea\u5df1\u770b\u4e0d\u61c2\uff0c\u53ea\u597d\u5c3d\u91cf\u7ffb\u8bd1\u3002 <br \/>\\n\u5982\u679c\u770b\u4e86\u5176\u4e2d\u4e00\u90e8\u5206\u89c9\u5f97\u7cca\u6d82\uff0c\u8bf7\u53c2\u9605\u5b98\u65b9\u6587\u6321\u3002<\/p>\n<p>\\n<\/p>\n<p>\u5b89\u88c5\u7bc7 <br \/>\\n=============== <br \/>\\n\u8fd9\u4e2a\u6587\u4ef6\u8be6\u7ec6\u4ecb\u7ecd\u4e86\u5982\u4f55\u4eceVSFTPD\u7684.tar.gz\u5206\u53d1\u5305\u5f00\u59cb\uff0c\u5efa\u7acb\u548c\u5b89\u88c5\u5e76\u8fd0\u884cVSFTPD\u3002<\/p>\n<p>\\n<\/p>\n<p>1\uff09\u5efa\u7acbVSFTPD <br \/>\\n\u5148\u8fdb\u5165\u89e3\u538b.tar.gz\u6587\u4ef6\u540e\u4ea7\u751f\u7684\u76ee\u5f55\u5185\u3002\u5982\u4e0b\uff1a <br \/>\\ncd vsftpd-2.0.1<\/p>\n<p>\\n<\/p>\n<p>\u7f16\u8f91&quot;builddefs.h&quot;\u4ee5\u64cd\u4f5ccompile-time\u8bbe\u5b9a\u3002\uff08tcp_wrappers build,\u7b49\uff09<\/p>\n<p>\\n<\/p>\n<p>\u8f93\u5165make,\u56de\u8f66\uff08\u5982\u679c\u5b83\u4e0d\u5de5\u4f5c\u8bf7\u53d1\u90ae\u4ef6\u901a\u77e5\u6211 . <br \/>\\n\u8fd9\u5c06\u4ea7\u751f\u4e00\u4e2a\u4e8c\u8fdb\u5236\u6587\u4ef6\uff0c\u4f60\u53ef\u4ee5\u9a8c\u8bc1\u4e00\u4e0b\u3002\u5982\u4e0b\uff1a <br \/>\\n[chris@localhost vsftpd]$ ls -l vsftpd <br \/>\\n-rwxrwxr-x 1 chris chris 61748 Sep 27 00:26 vsftpd<\/p>\n<p>\\n<\/p>\n<p>2\uff09\u6ee1\u8db3VSFTPD\u5b89\u88c5\u6240\u9700\u7684\u4e00\u4e9b\u6761\u4ef6 <br \/>\\nVSFTPD\u9ed8\u8ba4\u8bbe\u7f6e\u9700\u8981\u4e00\u4e2a&quot;nobody&quot;\u7528\u6237\uff0c\u5982\u679c\u8fd9\u4e2a\u7528\u6237\u4e0d\u5b58\u5728\uff0c\u90a3\u4e48\u6dfb\u52a0\u5b83\u3002\u5982\u4e0b\uff1a <br \/>\\n[root@localhost root]# useradd nobody <br \/>\\nuseradd: user nobody exists<\/p>\n<p>\\n<\/p>\n<p>VSFTPD\u9ed8\u8ba4\u8bbe\u7f6e\u9700\u8981\u4e00\u4e2a\u7a7a\u76ee\u5f55\uff1a\/usr\/share\/empty.\u589e\u52a0\u8fd9\u4e2a\u76ee\u5f55\uff0c\u5982\u679c\u5b83\u8fd8\u4e0d\u5b58\u5728\u7684\u8bdd\u3002\u5982\u4e0b\uff1a <br \/>\\n[root@localhost root]# mkdir \/usr\/share\/empty\/ <br \/>\\nmkdir: cannot create directory `\/usr\/share\/empty&#8217;: File exists<\/p>\n<p>\\n<\/p>\n<p>\u5982\u679c\u5bb9\u8bb8\u533f\u540d\u7528\u6237\uff08anonymous)\uff0c\u90a3\u4e48\u4f60\u5c06\u9700\u8981\u4e00\u4e2a&quot;ftp&quot;\u7528\u6237\u548c\u5176home\u76ee\u5f55\uff08\u8fd9\u4e2ahome\u76ee\u5f55\u4e0d\u5c5e\u4e8e&ldquo;ftp&rdquo;\u7528\u6237\uff0c\u800c\u4e14&ldquo;ftp&quot;\u7528\u6237\u4e5f\u5bf9\u5176\u6ca1\u6709\u5199\u6743\u9650\uff09\u5728\u4f60\u7684\u7cfb\u7edf\u4e2d\u5b58\u5728\u3002 <br \/>\\n\u4ee5\u4e0b\u547d\u4ee4\u7528\u6765\u521b\u5efa\u4e00\u4e2a&quot;ftp&quot;\u7528\u6237\uff0c\u5982\u679c\u5b83\u8fd8\u4e0d\u5b58\u5728\u7684\u8bdd\u3002 <br \/>\\n[root@localhost root]# mkdir \/var\/ftp\/ <br \/>\\n[root@localhost root]# useradd -d \/var\/ftp ftp<\/p>\n<p>\\n<\/p>\n<p>\uff08\u5373\u4f7f\u4f60\u7684&quot;ftp&quot;\u7528\u6237\u5df2\u7ecf\u5b58\u5728\uff0c\u5b8c\u6210\u4ee5\u4e0b\u8fd9\u4e24\u6b65\u4e5f\u662f\u5f88\u6709\u597d\u5904\u7684\uff1a\uff09 <br \/>\\n[root@localhost root]# chown root.root \/var\/ftp <br \/>\\n[root@localhost root]# chmod og-w \/var\/ftp<\/p>\n<p>\\n<\/p>\n<p>3\uff09\u5b89\u88c5VSFTPD\u7684\u914d\u7f6e\u3001\u6267\u884c\u548c\u5e2e\u52a9\u6587\u4ef6\u3002 <br \/>\\n\u8f93\u5165&quot;make install&quot;\u540e\u4f1a\u5c06\u4e8c\u8fdb\u5236\u6587\u4ef6\u548c\u5e2e\u52a9\u6587\u4ef6\u62f7\u8d1d\u5230\u9002\u5f53\u7684\u76ee\u5f55\u3002 <br \/>\\n\u4f60\u4e5f\u53ef\u4ee5\u624b\u5de5\u62f7\u8d1d\u8fd9\u4e9b\u6587\u4ef6\uff1a <br \/>\\ncp vsftpd \/usr\/local\/sbin\/vsftpd <br \/>\\ncp vsftpd.conf.5 \/usr\/local\/man\/man5 <br \/>\\ncp vsftpd.8 \/usr\/local\/man\/man8<\/p>\n<p>\\n<\/p>\n<p>&quot;make install&quot;\u4e0d\u4f1a\u62f7\u8d1d\u9ed8\u8ba4\u7684\u914d\u7f6e\u6587\u4ef6\uff0c\u6240\u4ee5\u5efa\u8bae\u4f60\u624b\u5de5\u62f7\u8d1d\uff1a <br \/>\\ncp vsftpd.conf \/etc <br \/>\\ndaidong\u6ce8\uff1a\u6839\u636e\u4f60\u7cfb\u7edf\u7248\u672c\u7684\u4e0d\u540c\uff0c\u4e5f\u53ef\u80fd\u662f cp vsftpd.conf \/etc\/vsftpd<\/p>\n<p>\\n<\/p>\n<p>&nbsp;<\/p>\n<p>\\n<\/p>\n<p>4)\u6d4b\u8bd5 \uff08\u65e0inetd\u5f71\u54cd\uff09 <br \/>\\nVSFTPD\u80fd\u8fd0\u884c\u5728\u72ec\u7acb\u6a21\u5f0f\uff08standalone)\u6216\u8005\u901a\u8fc7inetd(xinetd)\u6765\u542f\u52a8\u3002 <br \/>\\n\u4f60\u80fd\u901a\u8fc7inetd\u6765\u8fd0\u884cvsftpd\u4ee5\u66f4\u597d\u5730\u63a7\u5236\u5b83\u3002\u4f46\u6211\u4eec\u5728\u9996\u6b21\u8fd0\u884c\u65f6\u4e0d\u8fd9\u4e48\u505a\uff0c\u4ee5\u4fbf\u68c0\u67e5\u7cfb\u7edf\u662f\u5426\u73b0\u5728\u914d\u7f6e\u6b63\u5e38\u3002 <br \/>\\n\u7f16\u8f91\/etc\/vsftpd.conf\uff08daidong\u6ce8\uff1a\u4e5f\u53ef\u80fd\u662f\/etc\/vsftpd\/vsftpd.conf)\uff0c\u5e76\u5728\u6700\u4e0b\u9762\u52a0\u5165\u4ee5\u4e0b\u8fd9\u4e00\u884c\uff1a <br \/>\\nlisten=YES<\/p>\n<p>\\n<\/p>\n<p>\u8fd9\u5c06\u544a\u8bc9VSFTPD\u4e0d\u8981\u4eceinetd\u542f\u52a8\u3002 <br \/>\\nOK\uff0c\u73b0\u5728\u8bd5\u7740\u542f\u52a8FTP\u3002 <br \/>\\n\u4ee5ROOT\u767b\u5f55\u3002 <br \/>\\n\u786e\u5b9a\u4f60\u6ca1\u6709\u8fd0\u884c\u5176\u4ed6FTP\u670d\u52a1\uff08\u5426\u5219VSFTPD\u4e0d\u80fd\u5360\u7528FTP\u6240\u9700\u768421\u7aef\u53e3\uff09\u3002 <br \/>\\n\u8fd0\u884c\u90a3\u4e2a\u4e8c\u8fdb\u5236\u6587\u4ef6\uff0c\u5982\u4e0b\uff1a <br \/>\\n[root@localhost root]# \/usr\/local\/sbin\/vsftpd &amp; <br \/>\\n[1] 2104<\/p>\n<p>\\n<\/p>\n<p>\u5982\u679c\u4e00\u5207\u6b63\u5e38\uff0c\u90a3\u4e48\u4f60\u5c06\u8fde\u4e0aFTP\u670d\u52a1\u5668\uff0c\u5982\u4e0b\uff1a<\/p>\n<p>\\n<\/p>\n<p>[chris@localhost chris]$ ftp localhost <br \/>\\nConnected to localhost (127.0.0.1). <br \/>\\n220 (vsFTPd 1.1.1) <br \/>\\nName (localhost:chris): ftp <br \/>\\n331 Please specify the password. <br \/>\\nPassword: <br \/>\\n230 Login successful. Have fun. <br \/>\\nRemote system type is UNIX. <br \/>\\nUsing binary mode to transfer files. <br \/>\\nftp&gt; ls <br \/>\\n227 Entering Passive Mode (127,0,0,1,229,133) <br \/>\\n150 Here comes the directory listing. <br \/>\\nd&#8211;x&#8211;x&#8211;x 2 0 0 4096 Jan 14 2002 bin <br \/>\\nd&#8211;x&#8211;x&#8211;x 2 0 0 4096 Apr 21 20:52 etc <br \/>\\ndrwxr-xr-x 2 0 0 4096 Apr 21 20:52 lib <br \/>\\ndrwxr-sr-x 2 0 50 4096 Jul 26 22:58 pub <br \/>\\n226 Directory send OK. <br \/>\\nftp&gt;<\/p>\n<p>\\n<\/p>\n<p>5\uff09\u4eceinetd\u6216\u8005\u7c7b\u4f3c\u65b9\u5f0f\u542f\u52a8\uff08\u5b98\u65b9\u63a8\u8350\u4f7f\u7528standalone\u65b9\u5f0f\uff09 <br \/>\\n\u4f60\u4e5f\u8bb8\u60f3\u901a\u8fc7inetd\u6216\u8005\u7c7b\u4f3c\u65b9\u5f0f\u542f\u52a8VSFTPD\uff0c\u56e0\u4e3a\u8fd9\u80fd\u7ed9\u4f60\u66f4\u591a\u7684\u611f\u53d7\u3002\u4f8b\u5982xinetd\u5c31\u6709\u5f88\u591a\u7684\u8bbe\u7f6e\u3002 <br \/>\\n\uff08\u6ce8\u610f\uff1aVSFTPD\u7684\u5185\u5728\u673a\u5236\u5c4f\u853d\u4e86xinetd\u7684\u5927\u591a\u6570\u7684\u6709\u7528\u7684\u8bbe\u7f6e\uff09\u3002<\/p>\n<p>\\n<\/p>\n<p>\u5982\u679c\u4f7f\u7528\u6807\u51c6\u7684&quot;inetd&quot;,\u4f60\u9700\u8981\u7f16\u8f91\/etc\/inetd.conf,\u5728\u5176\u4e2d\u52a0\u5165\u4ee5\u4e0b\u4e00\u884c\uff1a <br \/>\\nftp stream tcp nowait root \/usr\/sbin\/tcpd \/usr\/local\/sbin\/vsftpd<\/p>\n<p>\\n<\/p>\n<p>\uff08\u786e\u5b9a\u4f60\u5220\u9664\u6216\u8005\u6ce8\u91ca\u6389\u4e00\u4e9b\u5df2\u5b58\u5728\u7684FTP\u670d\u52a1\u914d\u7f6e\u884c\u3002\u5982\u679c\u4f60\u6ca1\u6709\u5b89\u88c5tcp_wrappers,\u6216\u8005\u4e0d\u60f3\u4f7f\u7528\u5b83\u4eec\uff0c\u90a3\u4e48\u8bf7\u53bb\u6389\/usr\/sbin\/tcpd part).<\/p>\n<p>\\n<\/p>\n<p>inetd\u9700\u8981\u6307\u5b9a\u5e76\u91cd\u65b0\u8f7d\u5165\u5b83\u7684\u914d\u7f6e\u6587\u4ef6\uff1a <br \/>\\nkill -SIGHUP `pidof inetd`<\/p>\n<p>\\n<\/p>\n<p>\u5982\u679c\u4f60\u60f3\u4f7f\u7528&quot;xinetd&quot;,\u8bf7\u53c2\u9605\u6211\u4eec\u63d0\u4f9b\u7684\u8303\u4f8b \/EXAMPLE\/INTERNET_SITE\/README. \u800c\u5176\u4ed6\u8303\u4f8b\u6587\u4ef6\u5c06\u544a\u8bc9\u4f60\u5982\u4f55\u8c03\u914d\u51fa\u66f4\u5f3a\u5927\u7684xinetd\u529f\u80fd\u3002<\/p>\n<p>\\n<\/p>\n<p>6\uff09\u4e3a\u672c\u5730\u767b\u5f55\u914d\u7f6ePAM\u6587\u4ef6\uff08\u53ef\u9009\uff09 <br \/>\\n\u5982\u679c\u4f60\u5728\u4e00\u53f0\u6fc0\u6d3b\u4e86PAM\u7684\u8bbe\u5907\u4e0a\u8fd0\u884cVSFTPD\uff0c\u4f60\u9700\u8981\u63d0\u4f9b\u4e00\u4e2a \/etc\/pam.d\/ftp \u6587\u4ef6\u3002\u5426\u5219\u975e\u533f\u540d\u7528\u6237\u5c06\u65e0\u6cd5\u767b\u5f55\u670d\u52a1\u5668\u3002 <br \/>\\n\uff08\u6ce8\uff1a\u5982\u679c\u4f60\u7684PAM\u7248\u672c\u6bd4\u8f83\u8001\uff0c\u90a3\u4e48\u8fd9\u4e2a\u6587\u4ef6\u4e5f\u8bb8\u662f \/etc\/pam.conf).<\/p>\n<p>\\n<\/p>\n<p>\u505a\u4e3a\u4e00\u4e2a\u6807\u51c6\u8bbe\u7f6e\uff0c\u4f60\u53ef\u4ee5\u62f7\u8d1d\u4e00\u4e2a\u5df2\u63d0\u4f9b\u7684\u8303\u4f8b\u6587\u4ef6\uff0c\u5982\u4e0b\uff1a <br \/>\\ncp RedHat\/vsftpd.pam \/etc\/pam.d\/ftp<\/p>\n<p>\\n<\/p>\n<p>7\uff09\u81ea\u5b9a\u4e49\u4f60\u7684\u914d\u7f6e\u6587\u4ef6 <br \/>\\n\u5b8c\u6210\u4ee5\u4e0a\u7684\u914d\u7f6e\u540e\uff0c\u5efa\u8bae\u4f60\u5b89\u88c5\u4e00\u4e2a\u914d\u7f6e\u6587\u4ef6\u3002\u9ed8\u8ba4\u7684\u914d\u7f6e\u6587\u4ef6\u4f4d\u7f6e\u662f\/etc\/vsftpd.conf. \u5728VSFTPD\u8f6f\u4ef6\u5206\u53d1\u5305\u5185\u6709\u4e00\u4e2a\u8303\u4f8b\u914d\u7f6e\u6587\u4ef6\u3002 <br \/>\\n\u4f60\u53ef\u4ee5\u62f7\u8d1d\u5176\u4e3a\/etc\/vsftpd.conf\u4ee5\u505a\u8fdb\u4e00\u6b65\u4fee\u6539\u3002 <br \/>\\ncp vsftpd.conf \/etc <br \/>\\n\uff08daidong\u6ce8\uff1a\u4e5f\u53ef\u80fd\u662f cp vsftpd.conf \/etc\/vsftpd ).<\/p>\n<p>\\n<\/p>\n<p>\u8fd9\u4e2a\u9ed8\u8ba4\u914d\u7f6e\u5373\u4e0d\u5bb9\u8bb8\u672c\u5730\u767b\u5f55\u4e5f\u4e0d\u5bb9\u8bb8\u533f\u540d\u7528\u6237\u4e0a\u4f20\uff0c\u4e5f\u8bb8\u4f60\u5e0c\u671b\u66f4\u6539\u8fd9\u4e2a\u914d\u7f6e\u3002<\/p>\n<p>\\n<\/p>\n<p>\\n\u5176\u5b83 <br \/>\\n=================== <br \/>\\n\u6d4b\u8bd5\u5e73\u53f0 \uff08\u5df2\u901a\u8fc7\uff09 <br \/>\\n-\u6d41\u884c\u7684\uff0c\u529f\u80fd\u5b8c\u5584\u7684\u5e73\u53f0\u90fd\u80fd\u6d4b\u8bd5\u901a\u8fc7\u3002\u5728\u4ee5\u4e0b\u5e73\u53f0\u7684\u8f83\u65b0\u7248\u672c\uff0cVSFTPD\u5de5\u4f5c\u5f97\u5f88\u597d\u3002\u5728\u5176\u5927\u90e8\u5206\u8f83\u65e9\u7684\u7248\u672c\u4e0b\uff0c\u4e5f\u8fd0\u884c\u6b63\u5e38\u3002 <br \/>\\n- RedHat Linux <br \/>\\n- RedHat Enterprise Linux <br \/>\\n- Solaris \/ GNU tools (Solaris 8 or newer) <br \/>\\n- SuSE Linux <br \/>\\n- Debian Linux <br \/>\\n- OpenBSD <br \/>\\n- FreeBSD <br \/>\\n- NetBSD <br \/>\\n- HP-UX \/ GNU tools <br \/>\\n- IRIX \/ GNU tools <br \/>\\n- Mac OS X (note; older versions have setgroups() problem. 10.3.4 reported OK) <br \/>\\n\u865a\u62df\u7528\u62371 <br \/>\\n============= <br \/>\\n\u8fd9\u4e2a\u4f8b\u5b50\u793a\u8303\u4e86\u5982\u4f55\u4e3a\u865a\u62df\u7528\u6237\u8bbe\u7f6eVSFTPD\/PAM\u3002 <br \/>\\n\u865a\u62df\u7528\u6237\u662f\u4e00\u4e2a\u5728\u7cfb\u7edf\u4e2d\u5e76\u4e0d\u4f5c\u4e3a\u4e00\u4e2a\u767b\u5f55\u5b9e\u4f53\u800c\u5b58\u5728\u7684\u7528\u6237\u3002\u4f7f\u7528\u865a\u62df\u7528\u6237\u6bd4\u4f7f\u7528\u771f\u5b9e\u7684\u7528\u6237\u66f4\u5b89\u5168\uff0c\u56e0\u4e3a\u8fd9\u4e2a\u8d26\u53f7\u53ea\u80fd\u7528\u4e8eFTP\u670d\u52a1\u5668\u3002<\/p>\n<p>\\n<\/p>\n<p>\u865a\u62df\u7528\u6237\u7ecf\u5e38\u7528\u6765\u63d0\u4f9b\u7ed9\u4e0d\u5927\u53ef\u4fe1\u4efb\u7684\u7528\u6237\u8bbf\u95ee\u67d0\u4e9b\u8d44\u6e90\uff0c\u800c\u8fd9\u4e9b\u8d44\u6e90\u901a\u5e38\u662f\u5176\u4ed6\u666e\u901a\u7528\u6237\u4e0d\u80fd\u8bbf\u95ee\u7684\u3002<\/p>\n<p>\\n<\/p>\n<p>1\uff09\u521b\u5efa\u865a\u62df\u7528\u6237\u6570\u636e\u5e93 <br \/>\\n\u6211\u4eec\u5c06\u4f7f\u7528pam_userdb\u6765\u8ba4\u8bc1\u865a\u62df\u7528\u6237\u3002\u8fd9\u9700\u8981\u63d0\u4f9b\u4e00\u4e2a&ldquo;db&quot;\u683c\u5f0f\uff08\u4e00\u79cd\u901a\u7528\u6570\u636e\u5e93\u683c\u5f0f\uff09\u7684\u7528\u6237\u540d\/\u5bc6\u7801\u6587\u4ef6\u3002 <br \/>\\n\u521b\u5efa\u4e00\u4e2a&quot;db&quot;\u683c\u5f0f\u7684\u6587\u4ef6\uff0c\u9996\u5148\u8981\u521b\u5efa\u4e00\u4e2a\u6807\u51c6\u6587\u672c\u6587\u4ef6\uff0c\u5e76\u628a\u7528\u6237\u540d\uff0c\u5bc6\u7801\u4ee5\u7ad6\u76f4\u6392\u5217\u65b9\u5f0f\u8f93\u5165\u3002\u5982logins.txt\uff1a <br \/>\\ntom <br \/>\\nfoo <br \/>\\nfired <br \/>\\nbar <br \/>\\n\u8fd9\u4e2a\u4f8b\u5b50\u4e2d,tom\u7528\u6237\u7684\u5bc6\u7801\u662ffoo.fired\u7528\u6237\u7684\u5bc6\u7801\u662fbar. <br \/>\\n\u4ee5ROOT\u767b\u5f55\uff0c\u521b\u5efa\u4e00\u4e2a\u6570\u636e\u5e93\u6587\u4ef6\uff0c\u5982\u4e0b\uff1a <br \/>\\ndb_load -T -t hash -f logins.txt \/etc\/vsftpd_login.db <br \/>\\n\uff08\u8fd9\u8981\u6c42berkeley db\u7a0b\u5e8f\u5df2\u7ecf\u5b89\u88c5\uff09 <br \/>\\n(\u6ce8\uff1a\u4e00\u4e9b\u7cfb\u7edf\u4e5f\u8bb8\u5b89\u88c5\u4e86\u591a\u4e2a\u7248\u672c\u7684&quot;db&quot;,\u6240\u4ee5\u67d0\u4e9b\u60c5\u51b5\u4e0b\u4f60\u53ef\u80fd\u4f7f\u7528&quot;db3_load&quot;\u624d\u662f\u6b63\u786e\u7684\u3002\u5bf9\u4e8e\u4e00\u4e9b Debian\u7cfb\u7edf\u5c31\u662f\u8fd9\u6837\u3002 <br \/>\\n\u5173\u952e\u5728\u4e8e\u8981\u8ba9pam_userdb\u76f8\u4fe1\u5b83\u7684\u767b\u5f55\u6570\u636e\u5e93\u662f\u54ea\u4e00\u4e2adb\u7248\u672c\u6240\u4ea7\u751f\uff08\u4e00\u822c\u90fd\u662fdb3\uff0c\u5c3d\u7ba1\u4f60\u7684\u7cfb\u7edf\u91cc\u53ef\u80fd\u5b89\u88c5\u7684\u662fdb4).\uff09<\/p>\n<p>\\n<\/p>\n<p>\u8fd9\u5c06\u521b\u5efa\/etc\/vsftpd_login.db\u6587\u4ef6\u3002\u663e\u7136\uff0c\u4f60\u5e0c\u671b\u8bbe\u5b9a\u8fd9\u4e2a\u6587\u4ef6\u7684\u6743\u9650\uff1a <br \/>\\nchmod 600 \/etc\/vsftpd_login.db<\/p>\n<p>\\n<\/p>\n<p>\u8981\u4e86\u89e3\u66f4\u591a\u5173\u4e8e\u7ef4\u62a4\u4f60\u7684\u767b\u5f55\u6570\u636e\u5e93\u7684\u4fe1\u606f\uff0c\u8bf7\u5728&quot;berkeley DB&quot;\u5bdf\u770b\u76f8\u5173\u6587\u6863\uff1a <br \/>\\n<a href=\"http:\/\/www.sleepycat.com\/docs\/utility\/index.html\">http:\/\/www.sleepycat.com\/docs\/utility\/index.html<\/a><\/p>\n<p>\\n<\/p>\n<p>2\uff09\u7528\u4f60\u7684\u65b0\u6570\u636e\u5e93\u521b\u5efa\u4e00\u4e2aPAM\u6587\u4ef6 <br \/>\\n\u8bf7\u53c2\u8003\u8303\u4f8bvsftpd.pam\uff0c\u5b83\u5305\u542b2\u884c\uff1a <br \/>\\nauth required \/lib\/security\/pam_userdb.so db=\/etc\/vsftpd_login <br \/>\\naccount required \/lib\/security\/pam_userdb.so db=\/etc\/vsftpd_login<\/p>\n<p>\\n<\/p>\n<p>\u8fd9\u662f\u544a\u8bc9PAM\u7528\u65b0\u7684\u6570\u636e\u5e93\u53bb\u9a8c\u8bc1\u7528\u6237\u3002\u628a\u8fd9\u4e2aPAM\u6587\u4ef6\u62f7\u8d1d\u5230PAM\u76ee\u5f55\uff0c\u4e00\u822c\u662f\/etc\/pam.d <br \/>\\ncp vsftpd.pam \/etc\/pam.d\/ftp<\/p>\n<p>\\n<\/p>\n<p>3)\u4e3a\u865a\u62df\u7528\u6237\u8bbe\u7f6ehome\u76ee\u5f55<\/p>\n<p>\\n<\/p>\n<p>useradd -d \/home\/ftpsite virtual <br \/>\\nls -ld \/home\/ftpsite <br \/>\\n(which should give): <br \/>\\ndrwx&#8212;&#8212; 3 virtual virtual 4096 Jul 30 00:39 \/home\/ftpsite<\/p>\n<p>\\n<\/p>\n<p>\\n\u6211\u4eec\u5df2\u7ecf\u521b\u5efa\u4e86\u4e00\u4e2a\u540d\u53eb&quot;virtual&quot;\u7684\u7528\u6237\uff0chome\u76ee\u5f55\u662f&quot;\/home\/ftpsite&quot;. <br \/>\\n\u6211\u4eec\u62f7\u8d1d\u4e00\u4e9b\u4e1c\u897f\u5230\u8fd9\u4e2a\u4e0b\u8f7d\u76ee\u5f55\uff1a <br \/>\\ncp \/etc\/hosts \/home\/ftpsite <br \/>\\nchown virtual.virtual \/home\/ftpsite\/hosts<\/p>\n<p>\\n<\/p>\n<p>4\uff09\u521b\u5efa\u4f60\u7684vsftpd.conf\u914d\u7f6e\u6587\u4ef6 <br \/>\\n\u8bf7\u53c2\u8003\u8fd9\u4e2a\u76ee\u5f55\u4e0b\u7684\u4f8b\u5b50\u3002\u8ba9\u6211\u4eec\u4e00\u884c\u884c\u5730\u770b\u4e00\u770b\u8fd9\u4e9b\u914d\u7f6e\uff1a <br \/>\\nanonymous_enable=NO <br \/>\\nlocal_enable=YES<\/p>\n<p>\\n<\/p>\n<p>\u5b89\u5168\u8d77\u89c1\uff0c\u5c4f\u853d\u4e86\u533f\u540d\u7528\u6237\uff0c\u53ea\u542f\u7528\u4e86\u975e\u533f\u540d\u7528\u6237\uff08\u5373\u865a\u62df\u7528\u6237\u4f7f\u7528\u7684\u8d26\u53f7\uff09<\/p>\n<p>\\n<\/p>\n<p>write_enable=NO <br \/>\\nanon_upload_enable=NO <br \/>\\nanon_mkdir_write_enable=NO <br \/>\\nanon_other_write_enable=NO<\/p>\n<p>\\n<\/p>\n<p>\u4e3a\u4e86\u5b89\u5168\u8bf7\u786e\u8ba4\u8fd9\u51e0\u4e2a\u914d\u7f6e\uff0c\u8fd9\u5c06\u5173\u95ed\u5199\u7684\u6743\u9650\u3002<\/p>\n<p>\\n<\/p>\n<p>chroot_local_user=YES<\/p>\n<p>\\n<\/p>\n<p>\u8fd9\u5c06\u628a\u865a\u62df\u7528\u6237\u9501\u5b9a\u5728\u6211\u4eec\u5728\u4ee5\u4e0a\u8bbe\u7f6e\u7684\/home\/ftpsite\u76ee\u5f55\u5185\u3002<\/p>\n<p>\\n<\/p>\n<p>guest_enable=YES <br \/>\\nguest_username=virtual<\/p>\n<p>\\n<\/p>\n<p>guest_enable\u975e\u5e38\u91cd\u8981-\u5b83\u6fc0\u6d3b\u4e86\u865a\u62df\u7528\u6237\uff01\u800cguest_username\u8bf4\u660e\u6240\u6709\u7684\u865a\u62df\u7528\u6237\u90fd\u5bf9\u5e94\u6211\u4eec\u5728\u4e0a\u9762\u8bbe\u7f6e\u7684\u771f\u5b9e\u7528\u6237\uff1a&ldquo;virtual&quot;. <br \/>\\n\u8fd9\u540c\u65f6\u786e\u5b9a\u4e86\u865a\u62df\u7528\u6237\u5728\u6587\u4ef6\u7cfb\u7edf\u4e2d\u7684\u4f4d\u7f6e\uff0c\u4e5f\u5c31\u662f\u8bf4\uff0c\u865a\u62df\u7528\u6237\u7684home\u76ee\u5f55\u5373&quot;virtual&quot;\u7528\u6237\u7684home\u76ee\u5f55\uff1a\/home\/ftpsite\u3002<\/p>\n<p>\\n<\/p>\n<p>listen=YES <br \/>\\nlisten_port=10021<\/p>\n<p>\\n<\/p>\n<p>\u8fd9\u8ba9VSFTPD\u4ee5\u72ec\u7acb\u6a21\u5f0f(standalone)\u8fd0\u884c\uff0c\u800c\u4e0d\u662f\u4eceinetd\u65b9\u5f0f\u542f\u52a8\u3002\u4e5f\u5c31\u662f\u8bf4\uff0c\u4f60\u8fd0\u884cVSFTPD\u53ef\u6267\u884c\u6587\u4ef6\u5c31\u542f\u52a8\u4e86FTP\u670d\u52a1\u3002 <br \/>\\n\u540c\u65f6\u4e5f\u8ba9VSFTPD\u542f\u7528\u975e\u6807\u51c6\u7aef\u53e310021\u6765\u76d1\u542cFTP\u8bf7\u6c42\uff08FTP\u4e00\u822c\u4f7f\u752821\u7aef\u53e3\uff09\u3002<\/p>\n<p>\\n<\/p>\n<p>pasv_min_port=30000 <br \/>\\npasv_max_port=30999<\/p>\n<p>\\n<\/p>\n<p>\u8fd9\u8bbe\u5b9a\u4e86\u88ab\u52a8\u6a21\u5f0f\u7684FTP\u8bf7\u6c42\u7aef\u53e3\u3002\u5f53\u4f60\u914d\u7f6e\u4e86\u4e00\u4e2a\u9632\u706b\u5899\u7684\u65f6\u5019\uff0c\u8fd9\u4e2a\u914d\u7f6e\u5c31\u5f88\u597d\u7528\u3002<\/p>\n<p>\\n<\/p>\n<p>\u62f7\u8d1d\u8303\u4f8b\u914d\u7f6e\u6587\u4ef6\u5230\/etc <br \/>\\ncp vsftpd.conf \/etc\/ <br \/>\\n(daidong\u6ce8\uff1a\u4e5f\u53ef\u80fd\u662f\/etc\/vsftpd)<\/p>\n<p>\\n<\/p>\n<p>5)\u542f\u52a8VSFTPD <br \/>\\n\u5230VSFTPD\u4e8c\u8fdb\u5236\u6587\u4ef6\u6240\u5728\u7684\u76ee\u5f55\uff0c\u8f93\u5165\uff1a <br \/>\\n.\/vsftpd<\/p>\n<p>\\n<\/p>\n<p>\u5982\u679c\u4e00\u5207\u6b63\u5e38\uff0c\u8fd9\u4e2a\u547d\u4ee4\u5c06\u751f\u6548\u3002\u5426\u5219\uff0c\u4f60\u5c06\u4f1a\u770b\u5230\u4e00\u4e9b\u9519\u8bef\u4fe1\u606f\u7684\u53cd\u9988\u3002<\/p>\n<p>\\n<\/p>\n<p>6\uff09\u6d4b\u8bd5 <br \/>\\n\u542f\u52a8\u53e6\u4e00\u4e2a\u4f1a\u8bdd\u3002\uff08\u6216\u8005ctrl-z\uff0c\u518d\u8f93\u5165&quot;bg&quot;,\u8ba9VSFTPD\u5728\u540e\u53f0\u8fd0\u884c\uff09\u3002 <br \/>\\n\u8fd9\u662f\u4e00\u4e2aFTP\u4f1a\u8bdd\u7684\u4f8b\u5b50\uff1a<\/p>\n<p>\\n<\/p>\n<p>#ftp localhost 10021 <br \/>\\n#Connected to localhost (127.0.0.1). <br \/>\\n#220 ready, dude (vsFTPd 1.1.0: beat me, break me) <br \/>\\n#Name (localhost:chris): tom <br \/>\\n#331 Please specify the password. <br \/>\\n#Password: <br \/>\\n#230 Login successful. Have fun. <br \/>\\n#Remote system type is UNIX. <br \/>\\n#Using binary mode to transfer files. <br \/>\\n#ftp&gt; pwd <br \/>\\n#257 &quot;\/&quot; <br \/>\\n#ftp&gt; ls <br \/>\\n#227 Entering Passive Mode (127,0,0,1,117,135) <br \/>\\n#150 Here comes the directory listing. <br \/>\\n#226 Transfer done (but failed to open directory). <br \/>\\n#ftp&gt; size hosts <br \/>\\n#213 147 <br \/>\\n#ftp&gt;<\/p>\n<p>\\n<\/p>\n<p>\u6ce8\u91ca\uff1a <br \/>\\n\u5bc6\u7801\u662f&quot;foo&quot; <br \/>\\n\u51fa\u73b0&rdquo;failed to open directory&ldquo;\u7684\u8bdd\uff0c\u522b\u62c5\u5fc3\u3002\u8fd9\u662f\u56e0\u4e3a\/home\/ftpsite\u76ee\u5f55\u4e0d\u5bb9\u8bb8\u88ab\u4efb\u610f\u6d4f\u89c8\u3002 <br \/>\\n\uff08\u6211\u4eec\u53ef\u4ee5\u66f4\u6539anon_world_readable_only=NO\u4ee5\u6d88\u9664\u544a\u8b66\uff0c\u4f46\u4e3a\u4e86\u5b89\u5168\uff0c\u8fd8\u662f\u4fdd\u7559\u8fd9\u4e2a\u914d\u7f6e\uff09\u3002 <br \/>\\n\u6211\u4eec\u80fd\u901a\u8fc7size\u547d\u4ee4\u770b\u5230\u6211\u4eec\u5df2\u7ecf\u8bbf\u95ee\u4e86\u88ab\u6211\u4eec\u62f7\u8d1d\u5230\u8fd9\u91cc\u7684&quot;hosts&quot;\u6587\u4ef6\u3002<\/p>\n<p>\\n<\/p>\n<p>vsftpd.conf <br \/>\\nanonymous_enable=NO <br \/>\\nlocal_enable=YES <br \/>\\nwrite_enable=NO <br \/>\\nanon_upload_enable=NO <br \/>\\nanon_mkdir_write_enable=NO <br \/>\\nanon_other_write_enable=NO <br \/>\\nchroot_local_user=YES <br \/>\\nguest_enable=YES <br \/>\\nguest_username=virtual <br \/>\\nlisten=YES <br \/>\\nlisten_port=10021 <br \/>\\npasv_min_port=30000 <br \/>\\npasv_max_port=30999 <br \/>\\n\u865a\u62df\u7528\u62372<\/p>\n<p>\\n<\/p>\n<p>=============== <br \/>\\n\u8fd9\u4e2a\u4f8b\u5b50\u5c06\u6f14\u793a\u5982\u4f55\u6269\u5c55&ldquo;VIRTUAL_USERS&rdquo;\u90a3\u4e2a\u8303\u4f8b\uff0c\u4ece\u800c\u5b9e\u73b0\u66f4\u590d\u6742\u4e00\u70b9\u7684\u914d\u7f6e\u3002<\/p>\n<p>\\n<\/p>\n<p>\u8ba9\u6211\u4eec\u5047\u5b9a\u6211\u4eec\u9700\u89812\u79cd\u4e0d\u540c\u7684\u865a\u62df\u7528\u6237\uff1a\u4e00\u79cd\u53ea\u80fd\u6d4f\u89c8\u5e76\u4e0b\u8f7d\u8d44\u6e90\uff0c\u53e6\u4e00\u79cd\u80fd\u4e0a\u4f20\u6587\u4ef6\u5e76\u6d4f\u89c8\u7ad9\u5185\u8d44\u6e90\u3002<\/p>\n<p>\\n<\/p>\n<p>\u8981\u6fc0\u6d3b\u8fd9\u4e2a\u8bbe\u7f6e\uff0c\u6211\u4eec\u5c06\u4f7f\u7528VSFTPD\u7684\u5f3a\u5927\u7684&ldquo;\u5355\u4e2a\u7528\u6237\u914d\u7f6e&rdquo;\u529f\u80fd\uff08\u662fV1.1.0\u540e\u51fa\u73b0\u7684\u65b0\u529f\u80fd\uff09\u3002<\/p>\n<p>\\n<\/p>\n<p>\u5728\u524d\u4e00\u4e2a\u865a\u62df\u7528\u6237\u8303\u4f8b\u4e2d\uff0c\u6211\u4eec\u521b\u5efa\u4e862\u4e2a\u7528\u6237-tom\u548cfred. <br \/>\\n\u6211\u4eec\u5c06\u5b9e\u73b0fred\u6709\u5199\u6743\u9650\u4ee5\u4e0a\u4f20\u65b0\u6587\u4ef6\uff0c\u540c\u65f6tom\u53ea\u80fd\u4e0b\u8f7d\u6587\u4ef6\u3002<\/p>\n<p>\\n<\/p>\n<p>1\uff09\u6fc0\u6d3b\u5355\u4e2a\u7528\u6237\u914d\u7f6e\u529f\u80fd\u3002 <br \/>\\n\u8981\u6fc0\u6d3b\u8fd9\u4e2a\u529f\u80fd\uff0c\u9700\u8981\u589e\u52a0\u4ee5\u4e0b\u914d\u7f6e\u884c\u5230\u914d\u7f6e\u6587\u4ef6\uff1a<\/p>\n<p>\\n<\/p>\n<p>user_config_dir=\/etc\/vsftpd_user_conf<\/p>\n<p>\\n<\/p>\n<p>\u5e76\u4e14\u521b\u5efa\u76ee\u5f55\uff1a<\/p>\n<p>\\n<\/p>\n<p>mkdir \/etc\/vsftpd_user_conf<\/p>\n<p>\\n<\/p>\n<p>2\uff09\u6388\u4e88tom\u8bfb\u53d6\u6240\u6709\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u6743\u9650 <br \/>\\n\u5728\u4e0a\u4e00\u4e2a\u4f8b\u5b50\u7684\u6700\u540e\uff0c\u6211\u4eec\u6ce8\u610f\u5230\u865a\u62df\u7528\u6237\u53ea\u80fd\u6d4f\u89c8\u6240\u6709\u7684\u5b8c\u5168\u53ef\u8bfb\u5c5e\u6027\u7684\u76ee\u5f55\u548c\u6587\u4ef6\u3002\u6211\u4eec\u4f7f\/home\/ftpsite\u5b8c\u5168\u53ef\u8bfb\uff0c\u800c\u4e14\u88ab\u4e0a\u4f20\u7684\u6587\u4ef6\u4e5f <br \/>\\n\u8d4b\u4e88\u4e86\u5b8c\u5168\u53ef\u8bfb\u7684\u6743\u9650\uff08daidong\u6ce8\uff1a\u610f\u601d\u662f\u8bf4\u8fd9\u6837\u865a\u62df\u7528\u6237\u5c31\u80fd\u8bfb\u53d6\u6240\u6709\u7684\u6587\u4ef6\u4e86\uff09\u3002\u4f46\u5b9e\u73b0\u8fd9\u4e2a\u76ee\u7684\u7684\u53e6\u4e00\u4e2a\u65b9\u6cd5\u662f\u6388\u6743tom\u80fd\u4e0b\u8f7d\u90a3\u4e9b\u975e\u5b8c\u5168\u53ef\u8bfb\u7684\u6587\u4ef6\u3002<\/p>\n<p>\\n<\/p>\n<p>\u5bf9\u4e8etom,\u4ed6\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\u9700\u8981\u4fee\u6539\u4e00\u4e2a\u8bbe\u7f6e\uff1a <br \/>\\nanon_world_readable_only:<\/p>\n<p>\\n<\/p>\n<p>\u8bbe\u4e3a&quot;anon_world_readable_only=NO&quot; &gt; \/etc\/vsftpd_user_conf\/tom <br \/>\\n(daidong\u6ce8\uff1a\u65e2\u628a\u9ed8\u8ba4\u914d\u7f6e\u4fee\u6539\u4e86anon_world_readable_only\u540e\uff0c\u590d\u5236\u5230\/etc\/vsftpd_user_conf\u4e0b\uff0c\u540d\u5b57\u4e3atom)<\/p>\n<p>\\n<\/p>\n<p>\u9a8c\u8bc1\u4e00\u4e0b\u7ed3\u679c-\u4ee5tom\u767b\u5f55\uff0c&ldquo;ls&rdquo;\u5c06\u8fd4\u56de\u4e00\u4e2a\u76ee\u5f55\u5217\u8868\u3002\u5982\u679c\u4ee5fred\u767b\u5f55\u5c06\u4e0d\u4f1a\u5982\u6b64\u3002<\/p>\n<p>\\n<\/p>\n<p>\u6ce8\u610f\uff1a\u91cd\u542fVSFTPD\u4ee5\u542f\u7528\u914d\u7f6e\u6587\u4ef6\/etc\/vsftpd.conf(\u9ad8\u7ea7\u7528\u6237\u4e5f\u53ef\u4ee5\u53d1\u9001SIGHUP\u7ed9VSFTPD\u7684\u76d1\u542c\u8fdb\u7a0b).<\/p>\n<p>\\n<\/p>\n<p>3)\u6388\u4e88freg\u8bfb\u53d6\u6240\u6709\u6587\u4ef6\/\u76ee\u5f55\u5e76\u521b\u5efa\u65b0\u6587\u4ef6\/\u76ee\u5f55\u7684\u6743\u9650,\u4f46\u8ba9\u4ed6\u4e0d\u80fd\u5bf9\u5df2\u5b58\u5728\u7684\u6587\u4ef6\/\u76ee\u5f55\u8fdb\u884c\u64cd\u4f5c.<\/p>\n<p>\\n<\/p>\n<p>echo &quot;anon_world_readable_only=NO&quot; &gt; \/etc\/vsftpd_user_conf\/fred <br \/>\\necho &quot;write_enable=YES&quot; &gt;&gt; \/etc\/vsftpd_user_conf\/fred <br \/>\\necho &quot;anon_upload_enable=YES&quot; &gt;&gt; \/etc\/vsftpd_user_conf\/fred<\/p>\n<p>\\n<\/p>\n<p>\u9a8c\u8bc1\u4e00\u4e0b-\u4ee5tom\u767b\u5f55,\u5c06\u4e0d\u80fd\u4e0a\u4f20,\u800cfred\u5c31\u53ef\u4ee5. <br \/>\\n\u8bd5\u56fe\u5220\u9664\u4e00\u4e2a\u6587\u4ef6&#8211;\u5662,\u4f60\u4eec\u4fe9\u90fd\u4e0d\u884c!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u3010Linux\u670d\u52a1\u5668\u914d\u7f6e\u3011FTP\u670d\u52a1|vsftpd\u914d\u7f6e \\n \u5b89\u88c5\\nrpm -qa|gerp vsftpd \/ [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[26],"class_list":["post-84","post","type-post","status-publish","format-standard","hentry","category-linux","tag-linux"],"_links":{"self":[{"href":"https:\/\/www.huzs.top\/index.php?rest_route=\/wp\/v2\/posts\/84","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.huzs.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.huzs.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.huzs.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.huzs.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=84"}],"version-history":[{"count":0,"href":"https:\/\/www.huzs.top\/index.php?rest_route=\/wp\/v2\/posts\/84\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.huzs.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=84"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.huzs.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=84"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.huzs.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=84"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}