vsftpd安裝與配置

2022-09-07 15:30:30 字數 3986 閱讀 2950

vsftpd安裝與配置

展開簡介

vsftpd(very secure ftp daemon)是 unix 作業系統中的乙個開源的、免費的 ftp 服務軟體。它具有以下特點:

安全性高,輕小易用

支援系統使用者、匿名使用者和虛擬使用者的許可權驗證和相關操作,但無論哪種使用者,最終都會對映為乙個對應的 系統使用者

使用者認證是基於 pam 實現的

安裝yum 安裝 vsftpd,並開啟程式

# 安裝

[root@instance-36dg06w0 ~]# yum install vsftpd

# 開啟

[root@instance-36dg06w0 ~]# systemctl start vsftpd

配置詳解

vsftpd 的配置檔案在為 vsftpd.conf,一般在 /etc/vsftpd/ 目錄下。

屬性    屬性值    含義

anonymous_enable yes/no 是否允許匿名使用者(anonymous)登入 ftp,如果該設定被注釋,則預設允許

local_enable yes/no 是否允許本地系統使用者登入

write_enable yes/no 是否開啟任何形式的 ftp 寫入命令,上傳檔案

local_umask *** 本地使用者的 umask 設定,如果注釋該設定則預設為

077,但一般都設定成 022

anon_upload_enable yes/no 是否允許匿名使用者上傳檔案,如果要設定為允許,則需要先開啟 write_enable,否則無效,此外對應目錄還要具有寫許可權

anon_mkdir_write_enable yes/no 是否允許匿名使用者建立新目錄

dirmessage_enable yes/no 當進入某個目錄時,傳送資訊提示給遠端使用者

connect_from_port_20 yes/no 是否使用 20

埠來連線 ftp

chown_uploads yes/no 匿名上傳的檔案是否由某一指定使用者 chown_username 所有

chown_username 有效使用者名稱 匿名上傳的檔案由該設定使用者所有

xferlog_file 有效路徑 設定日誌檔案的儲存位置,預設為 /var/log/xferlog

xferlog_std_format yes/no 是否使用標準的 ftpd xferlog日誌格式,該格式日誌預設儲存在 /var/log/xferlog

idle_session_timeout 數值 設定空閒連線的超時時間,單位 秒

data_connection_timeout 數值 設定等待資料傳輸的最大時間,單位 秒(data_connection_timeout 與 idle_session_timeout 在同一時間只有乙個有效)

nopriv_user 有效使用者名稱 指定乙個非特權使用者,用於執行 vsftpd

async_abor_enable yes/no 是否支援非同步 abor 請求

ascii_upload_enable yes/no 是否開啟 ascii 模式進行檔案上傳,一般不開啟

ftpd_banner … 自定義登入標語

deny_email_enable yes/no 如果匿名登入,則會要求輸入 email 位址,如果不希望一些 email 位址具有登入許可權,則可以開啟此項,並在 banned_email_file 指定的檔案中寫入對應的 email 位址

banned_email_file 有效檔案 當開啟 deny_email_enable 時,需要通過此項指定乙個儲存登入無效 email 的檔案

chroot_local_user yes/no 是否將所有使用者限制在主目錄,當為 no 時, ftp 使用者可以切換到其他目錄

chroot_list_enable yes/no 是否啟用限制使用者的名單列表

chroot_list_file 有效檔案 使用者列表,其作用與 chroot_local_user 和 chroot_local_user 的組合有關,詳見下表

allow_writeable_chroot yes/no 是否允許使用者對 ftp 根目錄具有寫許可權,如果設定成不允許而目錄實際上卻具備寫許可權,則會報錯

ls_recurse_enable yes/no 是否允許 ls -r 指令來遞迴查詢,遞迴查詢比較耗資源

listen yes/no 如果為 yes,vsftpd 將以獨立模式執行並監聽 ipv4 的套接字,處理相關連線請求(該指令不能與 listen_ipv6 一起使用)

listen_ipv6 yes/no 是否允許監聽 ipv6 套接字

pam_service_name … 設定 pam 外掛程式模組提供的認證服務所使用的配置檔名 ,即 /etc/pam.d/vsftpd 檔案,此檔案中 file=/etc/vsftpd/ftpusers 字段,說明了 pam 模組能抵擋的帳號內容來自檔案 /etc/vsftpd/ftpusers 中

userlist_enable yes/no 是否啟用 user_list 檔案來控制使用者登入

userlist_deny yes/no 是否拒絕 user_list 中的使用者登入,此屬性設定需在 userlist_enable =yes 時才有效

max_clients 數值 同一時間允許的最大連線數

max_per_ip 數值 同乙個ip客戶端連線的最大值

local_root 有效目錄 系統使用者登入後的根目錄

anon_root 有效目錄 匿名使用者登入後的根目錄

user_config_dir 有效目錄 使用者單獨配置檔案存放目錄,該目錄下使用者的檔名就是對應使用者名稱

chroot_local_user 和 chroot_local_user 組合功能如下:

chroot_local_user=yes chroot_local_user=no

chroot_list_enable=yes 1.所有使用者都被限制在其主目錄下

2.使用 chroot_list_file 指定的使用者列表 /etc/vsftpd/chroot_list,這些使用者作為「例外」,不受限制 1.所有使用者都不被限制其主目錄下

2.使用 chroot_list_file 指定的使用者列表 /etc/vsftpd/chroot_list,這些使用者作為「例外」,受到限制

chroot_list_enable=no 1.所有使用者都被限制在其主目錄下

2.不使用 chroot_list_file 指定的使用者列表 /etc/vsftpd/chroot_list,沒有任何「例外」使用者 1.所有使用者都不被限制其主目錄下

2.不使用 chroot_list_file 指定的使用者列表 /etc/vsftpd/chroot_list,沒有任何「例外」使用者

為每個系統使用者配置各自的 ftp 根目錄

在 /etc/vsftpd/vsftpd.conf 檔案末尾新增如下指令:

# 系統使用者登入後的根目錄

local_root=/var/test/

# 匿名使用者登入後的根目錄

anon_root=/var/test/

# 設定使用者獨立配置檔案儲存目錄

user_config_dir=/etc/vsftpd/userconfig/12

3456

此外,還要將 chroot_local_user 設定為 yes,使 ftp 使用者登入後直接被鎖定在自己的根目錄上。

通過以上設定,系統使用者和匿名使用者都會將 /var/test/ 當做根目錄,並且登入後直接被鎖定在該目錄。

但是以上的設定是針對所有系統使用者和匿名使用者的,如果想要給每個 ftp 使用者指定根目錄,我們可以給每個使用者建立乙個對應的配置檔案。具體操作如下:

vsftpd安裝與配置

如果你想在你的linux unix伺服器上搭建乙個安全 高效能 穩定性好的ftp伺服器,那麼vsftpd可能是你的首選應用。vsftpd意思為 very secure ftp daemon 非常安全的ftp程序 是乙個基於gpl發布的類unix類作業系統上執行的伺服器的名字 是一種守護程序 可以執行...

vsftpd安裝與配置

以下主要是作為備忘。從 url 從你的機器上wget下來你所需要的tar.gz檔案,然後tar zxvf it 進入vsftp 2.1.2。貌似vsftpd沒有.configure,所以也沒有需要設定這一步。你接下去要做的是直接make。然後是對於64位作業系統的同學的提示,32位系統make基本上...

vsftpd 安裝與配置

vim etc vsftpd vsftpd.conf anonymous enable no listen port 21 local enable yes write enable yes local umask 022 dirmessage enable yes xferlog enable y...