vsftp是linux上比較常用的ftp服務器,安裝vsftp也很簡單可以直接用redhat的安裝在本地上用rpm -ivh命令進行安裝,或者用tar包進行安裝,就是用./configure 然後make,make install三步就可以搞定了:
我在架設這個服務器的時候覺的並不是很難,只要對配置文件很熟悉就可以配置的很好了,下面是一些vsftp的配置:
匿名用戶的配置選項:
anonymous_enable=yes 啟用匿名用戶登錄。
no_anon_password=yes 匿名用戶登錄是否不詢問密碼。
anon_upload_enable=yes 匿名用戶對文件(非目錄)上傳權限。
anon_world_readable_only=yes 匿名用戶對文件夾的創建權限。
anon_mkdir_write_enable=yes 匿名用戶對文件和文件夾的刪除和重命名
anon_root=(none) 匿名用戶主目錄。
anon_max_rate=100 匿名用戶速度限制。
anon_umask=(077) 匿名用戶上傳文件時有掩碼。
chown_uploads=yes 所有匿名上傳文件的所屬用戶將會被更改成chown_username。
chown_username=whoever 匿名上傳文件所屬用戶名。
allow_anon_ssl=NO 允許匿名用戶用ssl方式進行連接。
anon_other_write_enable=NO 允許匿名用戶刪除,修改名字等權限。
anon_max_rate 匿名用戶下載的最大速度。
anon_umask 匿名用戶創建文件的默認權限遮罩。
anon_root 指定匿名用戶登錄的默認目錄。
本地用戶配置選項:
local_umask=022 本地用戶上傳文件的umask。
userlist_enable=yes 限制了這裡的用戶不能訪問。
userlist_deny=YES 是否拒絕一部分用,只允許指定的用戶登錄。
userlist_file= 存放指定能夠登錄或者不能夠登錄的用戶。
userlist_log=NO 是否開啟記錄在userlist_file裡面指定的用戶登錄失敗的日志。
local_root 設置一個本地用戶登錄後進入到的目錄。
user_config_dir 設置用戶的單獨配置文件,用那個賬戶登錄就用那個賬戶命名。
download_enable 限制用戶的下載權限。
chown_uploads=yes 所有匿名上傳的文件的所屬用戶將會被更改成chown_username.
chown_username=whoever 匿名上傳文件所屬用戶名。
chroot_list_enable=yes 所有列在chroot_list_file之中的使用者不能更改根目錄。
chroot_list_file=/etc/vsftpd/chroot_list 指定限制的用戶文件。
chroot_local_user=NO 是否允許本地用戶登錄後更改目錄。
user_config_dir= 存放用戶的配置文件,實現不同用戶不同權限。
local_max_rate 本地用戶速度限制。
虛擬用戶配置選項:
pam_service_name=vsftpd 設置PAM使用的名稱,默認值為/etc/pam.d/vsftpd.
guest_enable=yes 啟用虛擬用戶。默認值為NO.
guest_username=ftp 這裡用來映射虛擬用戶。
virtual_use_local_privs=yes yes代表和本地用戶權限相同。no與匿名用戶權限相同。
全局設置:
write_enable=yse(全局配置)可以上傳刪除,重命名。
max_clients 最大連接數。
max_per_ip 每個ip的最大連接數。
data_connect_timeout 數據連接超時。
connect_timeout 連接超時。
accept_timeout 建立連接超時。
ascii_download_enable 用ascii模式下載。
ascii_upload_enable 用ascii模式上傳。
async_abor_enable
check_shell 是否檢查登錄者的shell。
connect_from_port_20=NO 是否用20端口進行連接。
deny_email_enable=NO 是否登錄失敗後是否要發送郵件給登錄失敗的用戶。
banned_email_file=/etc/vsftpd/banned_mail指定要發送郵件的用戶名單。
dirlist_enable=YES 是否允許用戶使用命令列出目錄。
dirmessage_enable=ON 當用戶登錄到目錄時是否顯示消息。
download_enable=YES 是否允許下載
dual_log_enable=NO
force_dot_files=NO
force_anon_data_ssl=NO 強制匿名用戶使用ssl進行數據交換。
force_anon_logins_ssl=NO 強制匿名用戶使用ssl進行登錄。
force_local_data_ssl=YES 強制本地用戶使用ssl進行數據交換。
force_local_logins_ssl=YES 強制本地用戶使用ssl進行登錄。
hide_ids=NO 非匿名用戶登錄的uid和gid都將被顯示為ftp這個用戶。
listen 監聽ipv4。
listen_ipv6 監聽ipv6。
lock_upload_files
log_ftp_protocol
ls_recurse_enable
mdtm_write
no_anon_password 匿名用戶登錄不要求詢問密碼。
no_log_lock
one_process_model
pasv_enable 啟動被動模式。
pasv_promiscuous
port_enable 啟用端口模式來進行數據連接。
port_promiscuous 是否啟動用端口安全檢查。
ssl_enable 啟用ssl模式。
ssl_ciphers 指定ssl的加密模式。
ssl_sslv2 是否支持版本2的ssl。
ssl_sslV3 是否支持版本3的ssl。
ssl_tlsv1 是否啟用TLSv1版本。
syslog_enable 是否啟用日志。
tcp_wrappers
text_userdb_names
tilde_user_enable
use_localtime
xferlog_enable
xferlog_std_format
accept_timeout 客戶端連接超時。
connect_timeout 空閒時間連接超時。
data_connection_timeout 數據傳輸連接超時。
delay_failed_login
delay_successful_login
file_open_mode
ftp_data_port 指定數據連接端口。
idle_session_timeout
listen_port 命令連接端口。
max_client 最大用戶連接數。
max_login_fails
max_per_ip 每個ip能夠進行的連接數。
pasv_max_port 最大的被動連接端口。
pasv_min_port 最小的被動連接端口。
banned_email_file
banner_file 當用戶登錄時所顯示的歡迎信息。
chown_username
hide_file= 在使用命令列出文件時,指定的文件將不被列出。
cmds_allowed 只有指定的命令才能夠被使用。