天天看點

Centos 6.5下的vsftpd相關配置與優化

1. 安裝軟體

<code>yum -y </code><code>install</code> <code>vsftpd*</code>

<code>yum -y </code><code>install</code> <code>pam*</code>

<code>yum -y </code><code>install</code> <code>db4*</code>

2. 建立虛拟賬号相關聯的系統賬号

<code>useradd</code> <code>virftp -s  </code><code>/sbin/nologin</code>

3. 建立虛拟賬戶相關的檔案

<code>touch</code> <code>/etc/vsftpd/vsftpd_login</code>

并把你要建立的使用者寫到裡面,奇數行是使用者名,偶數行是密碼

例如:

<code>ftpuser1</code>

<code>121212</code>

<code>ftpuser2</code>

<code>12121212</code>

然後生成對應的庫檔案

<code>db_load -T -t </code><code>hash</code> <code>-f</code><code>/etc/vsftpd/vsftpd_login</code> <code>/etc/vsftpd/vsftpd_login</code><code>.db</code>

4. 建立虛拟賬号相關的目錄以及配置檔案

<code>mkdir</code> <code>/etc/vsftpd/vsftpd_user_conf</code>

然後在該目錄下,建立虛拟賬号相對應的配置檔案,賬号和檔案名對應

<code>cd</code>  <code>/etc/vsftpd/vsftpd_user_conf</code>

vim ftpuser1   内容如下:

<code>local_root=</code><code>/home/virftp/ftpuser1</code>

<code>anonymous_enable=NO</code>

<code>write_enable=YES</code>

<code>local_umask=022</code>

<code>anon_upload_enable=NO</code>

<code>anon_mkdir_write_enable=NO</code>

<code>idle_session_timeout=600</code>

<code>data_connection_timeout=120</code>

<code>max_clients=10</code>

<code>max_per_ip=5</code>

<code>local_max_rate=50000</code>

建立配置檔案中提及的ftpuser1的家目錄

<code>mkdir</code> <code>/home/virftp/ftpuser1</code>

修改權限:

<code>chown</code> <code>-R  virftp:virftp</code><code>/home/virftp/</code>

5. 修改驗證檔案

<code>vim </code><code>/etc/pam</code><code>.d</code><code>/vsftpd</code>

 在最開頭添加兩行

<code>auth sufficient </code><code>/lib/security/pam_userdb</code><code>.sodb=</code><code>/etc/vsftpd/vsftpd_login</code>

<code>account sufficient</code><code>/lib/security/pam_userdb</code><code>.so db=</code><code>/etc/vsftpd/vsftpd_login</code>

6. 修改vsftpd.conf

内容如下:

<code>local_enable=YES</code>

<code>dirmessage_enable=YES</code>

<code>xferlog_enable=YES</code>

<code>connect_from_port_20=YES</code>

<code>xferlog_file=</code><code>/var/log/vsftpd</code><code>.log</code>

<code>xferlog_std_format=YES</code>

<code>nopriv_user=vsftpd</code>

<code>async_abor_enable=YES</code>

<code>ascii_upload_enable=YES</code>

<code>ascii_download_enable=YES</code>

<code>ftpd_banner=Welcome to FTP service.</code>

<code>listen=YES</code>

<code>chroot_local_user=YES</code>

<code>pam_service_name=vsftpd</code>

<code>userlist_enable=YES</code>

<code>tcp_wrappers=YES</code>

<code>guest_enable=YES</code>

<code>guest_username=virftp</code>

<code>virtual_use_local_privs=YES</code>

<code>user_config_dir=</code><code>/etc/vsftpd/vsftpd_user_conf</code>

7.  啟動vsftpd服務

<code>/etc/init</code><code>.d</code><code>/vsftpd</code> <code>start</code>

8. 關閉selinux

setenforce 0  //這一步操作是臨時關閉,如果想永久關閉,需修改配置檔案 vim /etc/selinux/config   把SELINUX=enforcing改為 SELINUX=disabled

9. 測試

<code>lftp localhost -u ftpuser1,121212</code>

看是否能正常登入,如果不正常,請檢視/var/log/secure檔案,分析日志

本文轉自 sykmiao 51CTO部落格,原文連結:http://blog.51cto.com/syklinux/1730994,如需轉載請自行聯系原作者

繼續閱讀