使用root使用者用yum安裝
1 安裝vsftpd:
yum install -y vsftpd
2 建立乙個普通使用者 :
useradd -s /sbin/nologin virftp 指定使用者的shell為nologin,不允許登入
vsftpd軟體是允許系統使用者以ftp方式(非ssh)登入系統的,登入後會進入使用者家目錄,為了安全起見,我們使用虛擬ftp使用者對映到真實系統使用者的方式,使用ftp服務,從而避免ftp使用者直接登入系統。
3建立虛擬ftp使用者配置檔案:
vim /etc/vsftpd/vsftpd_login
寫入虛擬使用者的使用者名稱和密碼:
test1 奇數行 寫使用者名稱
123 偶數行 寫密碼
test2 多個使用者就寫多組,中間不能有空行和空格
456 test1的密碼為123,test2的密碼為456
4更改許可權:
chmod 600 /etc/vsftpd/vsftpd_login
db_load -t -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
5建立虛擬使用者的配置檔案目錄:
mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf
6建立虛擬使用者的配置檔案:
vim test1 此處的檔名必須和/etc/vsftpd/vsftpd_login檔案裡的使用者名稱一致。
加入如下內容
local_root=/home/virftp/testuser1 定義虛擬使用者的家目錄
anonymous_enable=no 不允許匿名使用者登陸,如果允許則用yes
write_enable=yes 寫許可權,允許
local_umask=022 設定umask,用來控制使用者建立檔案和目錄的預設許可權
anon_upload_enable=no 不允許匿名使用者上傳
anon_mkdir_write_enable=no 不允許匿名使用者建立目錄和寫許可權
idle_session_timeout=600 空閒時限600秒,超時自動斷開
data_connection_timeout=120 資料連線(請求)時限120秒,超時會自動斷開
max_clients=10 客戶端的最大連線數
7建立虛擬ftp使用者的家目錄,並建立測試檔案
mkdir /home/virftp/test1
touch /home/virftp/test1/1.txt
8級聯更改系統使用者virftp許可權
chown -r virftp:virftp /home/virftp
以下兩行為在ftp上建立檔案報錯時新增的許可權
chown -r virftp:virftp /var/ftp
chmod 755 -r /var/ftp
9 定義使用者驗證檔案路徑
vim /etc/pam.d/vsftpd 編輯ftp的使用者認證檔案
在最前面加上:注意區分系統是32位還是64位
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
指定密碼驗證形式為檔案形式,並指定路徑路徑
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
指定賬戶儲存形式為檔案,並指定賬戶儲存檔案路徑
10 配置vsftp服務:
vim /etc/vsftpd/vsftpd.conf
將anonymous_enable=yes 改為 anonymous_enable=no 不允許匿名使用者登入
將#anon_upload_enable=yes 改為 anon_upload_enable=no 不允許匿名使用者上傳
將#anon_mkdir_write_enable=yes 改為 anon_mkdir_write_enable=no
不允許匿名使用者建立目錄和寫入
再增加如下內容
chroot_local_user=yes 允許切換到系統使用者
guest_enable=yes 開啟來賓使用者
guest_username=virftp 定義來賓使用者為virftp
virtual_use_local_privs=yes 允許虛擬使用者對映到系統使用者
user_config_dir=/etc/vsftpd/vsftpd_user_conf 定義使用者配置檔案目錄
#allow_writeable_chroot=yes 允許寫許可權。我的centos6.8虛擬機器不能寫這個引數,啟動會報錯
11 vsftpd服務
service vsftpd start 啟動
service vsftpd stop 停止
service vsftpd restart 重新啟動
12測試:
安裝lftp客戶端
yum install -y lftp
以test1使用者的身份訪問ftp伺服器,並輸入密碼
lftp [email protected]
回車輸入密碼
執行命令ls,看是否正常輸出
若不正常檢視日誌 /var/log/messages 和 /var/log/secure,一般在 /var/log/secure
tail -20f /var/log/secure
windows下安裝filezilla客戶端軟體,進行測試
13 報錯處理:
(1)login failed: 500 oops: bad bool value in config file for: anonymous_enable
解決方案:檢視 /etc/vsftpd/vsftpd.conf 檔案中每一行後面是否有空格,嚴格要求不能有空格
(2)unknown limit item 『noproc』
解決方案: vim /etc/security/limits.conf , 看看紅框中的引數是否有問題,我還遇到過 nofile 變成 nofil 的情況
搭建FTP伺服器
ftp 是僅基於 tcp 的服務,不支援 udp。與眾不同的是 ftp 使用兩個埠,乙個資料埠和乙個命令埠,也可叫做控制埠。通常來說這兩個埠是 21 命令埠 和 20 資料埠 由於 ftp 工作方式的不同,資料埠並不總是 20,分為 主動 ftp 和被動 ftp。1.主動 ftp 主動方式的 ftp...
ftp伺服器搭建
1.檢查是否已安裝vsftpd伺服器 rpm qa grep vsftpd 若未安裝則執行 yum install vsftpd y 2.設定開機自啟動 chkconfig vsftpd on1.執行cd etc vsftpd 用vi開啟vsftpd.conf 配置檔案 2.找到chroot lis...
搭建FTP伺服器
初次搭建ftp的過程中經過多次嘗試,總結了乙個較為簡單的ftp搭建步驟 1.首先購買乙個伺服器,個人使用的是阿里雲的ecs雲伺服器,系統選64位的centos7.2版本 阿里雲官網 2.安裝vsftp yum install vsftpd 遇到問號直接按回車 看到complete!表示已安裝完成 設...