ftp伺服器搭建linux
1、用在線安裝
yum install vsftpd pam* db4*-y
使用命令將vsftp配置為系統服務
chkconfig --level 35 vsftpd on
2、配置vsftpd服務的宿主
useradd vsftpdadmin -s /sbin/nologin -M
這個vsftpdadmin只是用來替換root的,並不需要登錄
3、建立ftp虛擬宿主帳戶
useradd vsftpuser -s /sbin/nologin -M
這ftpuser只個虛擬帳戶的宿主,本身是不用登錄的
4、配置vsftpd.conf 配置之前要先備份一下原來的
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES --> anonymous_enable=NO //不允許匿名用戶訪問,默認是允許。
chroot_list_enable=YES --> chroot_list_enable=YES //不允許FTP用戶離開自己主目錄
增加
#設定虛擬用戶個人Vsftp的配置文件存放路徑。也就是說,這個被指定的目錄里,將存放每個Vsftp虛擬用戶個性的配置文件,一個需要注意的地方就是這些配置文件名必須和虛擬用戶名相同。
user_config_dir=/etc/vsftpd/vconf/userlocal
#這一大陸爛步非常重要,要記住這滾漏一步。一會要根據這個配置新建文件夾
#修改埠號
ftp_data_port=4040
reverse_lookup_enable=NO
pasv_enable=yes
pasv_min_port=48790
pasv_max_port=48800
listen_port=48796 #埠可以根據你自己實際情況配置,也可以用默認埠。但是為了安全考慮根據自己實際情況配置
5、建立虛擬用戶文件
mkdir /etc/vsftpd/vconf
touch /etc/vsftpd/vonf/vir_user
6、建立虛擬用戶
vi /etc/vsftpd/vonf/vir_user
virtualuser //用戶名
12345678 //密碼
7、生成資料庫
db_load -T -t hash -f /etc/vsftpd/vconf/vir_user /etc/vsftpd/vconf/vir_user.db
8、設置資料庫文件訪問許可權
chmod 600 /etc/vsftpd/vconf/vir_user
chmod 600 /etc/vsftpd/vconf/vir_user.db
9、修改/etc/pam.d/vsftpd
auth sufficient pam_userdb.so db=/etc/vsftpd/vconf/vir_user
account sufficient pam_userdb.so db=/etc/vsftpd/vconf/vir_user
(要想同時使用系統用戶和虛擬用戶,就需要把required改成sufficient)
10
根據第四步配置的user_config_dir=/etc/vsftpd/vconf/userlocal
新建userlocal文件夾
mkdir /etc/vsftpd/vconf/userlocal
11、根據第六步建立的用戶名建立一個文件
例如第六步建立的帳號是virtualuser,則新建一個virtualuser文件
touch /etc/vsftpd/conf/userlocal/virtualuser
12、編輯該用戶訪問的文件路徑
vi /etc/vsftpd/conf/userlocal/virtualuser
輸入如下
local_root= //需要指定的網站根目錄,例如www..com所在文件夾為/www/
anonymous_enable=NO #禁止匿名用戶訪問
write_enable=YES #開啟寫許可權
local_umask=022 #上傳後文悉差件的許可權掩碼
anon_upload_enable=NO #關閉匿名下載
anon_mkdir_write_enable=NO #關閉匿名創建文件夾
idle_session_timeout=60 #會話自動關閉時間 60是因分鍾
data_connection_timeout=120 #數據延遲時間
max_clients=10 #最大連接數
max_per_ip=5 #同一個ip同時允許5個IP聯機
local_max_rate=1048576 #實體用戶傳輸速度限制,單位B/s。0代表不限制
13、配置就此完成,重啟vsftpd服務:service vsftpd restart。
查看系統埠狀態:netstas -tulnp。如果能看到48796埠正在被vsftpd調用說明啟動成功。
Ⅱ linux系統下FTP伺服器配置方法
1、 安裝vsftp
rhel4系統中包括了vsftp伺服器的rpm安裝包,包名稱是vsftpd-2.0.1-5.i386.rpm
#rpm –ivh vsftpd-2.0.1-5.i386.rpm
2、 vsftpd伺服器的基本配置
vsftpd伺服器的配置文件保存在「/etc」目錄和它的子目錄中。
(1) vsftpd.conf文件中的配置項
vsftpd.conf文件中所有的配置記錄都包括配置項和配置值兩部分內容,中間用等號連接。
anonymous_enable=YES
(2) vsftpd伺服器的默認配置
vsftpd.conf文件中的默認配置使用於最常用的FTP伺服器配置需求,去除注釋行後的配置文件中包括如下配置內容:
#grep –v 『#』 vsftpd/vsftpd.conf
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
pam_service_name=vsftpd
userlist_enable=YES
listen=YES
tcp_wrappers=YES
l vsftpd.conf文件中的默認配置的含義如下:
l anonymous_enable=YES,表示FTP可以允許匿名登陸
l local_enable=YES,表示允許本地用戶登陸
l write_enable=YES,表示FTP伺服器開放對本地用戶的寫許可權
l local_umask=022,設置本地用戶的文件生成掩碼
l dirmessage_enable=YES,當切換到FTP伺服器中的某個目錄時,將顯示該目錄下的「.message」隱含文件了內容
l xferlog_enable=YES,FTP將啟用上傳和下載日誌
l connect_from_port_20=YES,ftp將啟用ftp數據埠的連接請求
l xferlog_std_format=YES,ftp將使用標準的ftpd xferlog日誌格式
l pam_service_name=vsftpd,設置PAM認證服務的配置文件名稱,該文件保存在「/etc/pam.d/」目錄下。
l userlist_enable=YES,ftp將檢查userlist_file設置文件中指定的用戶是否可以訪問vsftpd伺服器
l listen=YES,ftp伺服器將處於獨立啟動模式
l tcp_wrappers=YES,ftp伺服器將使用tcp_wrappers作為主機訪問控制模式。
3、 vsftpd.ftpusers文件
vsftpd.ftpusers文件位於「/etc」目錄中,用於保存不允許進行ftp登陸的本地用戶帳號,這些帳號(包括root用戶在內)通常不是普通用戶帳號,而是在系統中具有較高許可權的帳號。禁止這些用戶可以提高系統的安全性
4、 vsftpd.user_list文件
vsftpd.user_list文件位於「/etc」目錄中,具有與vsftpd.ftpusers文件類似的訪問控制功能,但是使用起來更加靈活。
(1) 設置登陸的用戶帳號
當vsftpd.conf配置文件中包括以下設置時,vsftpd.user_list文件中的用戶帳號被禁止進行ftp登陸。
userlist_enable=YES
userlist_deny=YES
userlist_deny設置項設置使用vsftpd.user_list文件,userlist_deny設置為YES表示vsftpd.user_list文件用於設置禁止登陸的用戶帳號。
(2) 設置只允許登陸的用戶帳號
當vsftpd.conf配置文件中包括以下設置時,只有vsftpd.user_list文件中的用戶帳號能夠進行ftp登陸
userlist_enable=YES
userlist_deny=YES
userlist_enable設置項設置使用vsftpd.user_list文件,userlist_deny設置為NO表示vsftpd.user_list文件用於設置只允許登陸的用戶帳號,文件中未包括的用戶帳號被禁止ftp登陸
5、 匿名用戶登陸目錄
當用戶匿名登陸ftp伺服器時,將進入「/var/ftp」目錄,並且將該目錄作為根目錄,即匿名用戶不能離開該目錄,只能進入該目錄的子目錄
6、 啟動vsftpd服務
#service vsftpd restart
7、測試ftp伺服器