linux75如何用rpm安裝ftp
FTP不安全,萬不得已情況下,才可使用。
vsftp安全性相對較好
可採用sftp代替FTP
Linux另外常用的FTP:
proftp
vsftp
pureftp
下面以VSFTP為例:
安裝方式一:源碼包安裝
useradd -s /bin/false -d /var/ftp ftpvirtual
cd ......
make
make install
cp vsftpd.conf /etc
/usr/local/sbin/vsftpd & #啟動
安裝方式二:rpm安裝,推薦
rpm -ivh vsftpd-2.0.1-5.i386.rpm
或者 yum install vsftpd
/etc/init.d/vsftpd start
兩種方式安裝完成後,配置方法都一樣,下面開始講配置。
首先講主配置文件常見配置
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #禁止匿名登錄
local_enable=NO #禁止本地用戶登錄
write_enable=YES #對本地用戶的寫許可權
local_umask=022 #本地用戶文件生成掩碼
dirmessage_enable=YES #顯示隱藏文件
xferlog_enable=YES #啟用上傳和下載日誌
connect_from_port_20=YES #伺服器將啟用FTP數據埠的連接請求
xferlog_std_format=YES #伺服器將使用標準的ftpd xferlog日誌格式
pam_service_name=vsftpd #設置PAM認證服務的配置文件名稱
userlist_enable=YES #設置文件中指定的用戶是否可以訪問vsftpd伺服器
listen=YES #FTP伺服器將處於獨立啟動模式
tcp_wrappers=YES #使用tcp_wrappers作為主機訪問控制方式
chroot_local_user=YES #將FTP本地用戶禁錮在宿主目錄中
chroot_list_enable=YES #將用戶禁錮在宿主目錄中
listen_address=192.168.0.2 #偵聽地址
pasv_enable=YES #是否允使用被動模式,默認是允許的。
pasv_min_port=10000 #指定使用被動模式時打開埠的最小值
pasv_max_port=10004 #指定使用被動模式時打開埠的最大值。
max_clients=100 #設置FTP伺服器所允許的最大客戶端連接數,值為0時表示不限制
max_per_ip=5 #同一IP地址允許的最大客戶端連接數,值為0時表示不限制,即線程
local_max_rate=500000 #設置本地用戶的最大傳輸速率,單位為bytes/sec,值為0時表示不限制
anon_max_rate=200000 #設置匿名用戶的最大傳輸速率,單位為bytes/sec,值為0表示不限制
use_localtime=YES #在vsftp之中的時間默認值是顯式GMT時間,因此我們會發現上面的時間與我們時寄存取的時間差八小時。改了這一項就好了。
listen_port=10021 改埠
one_process_model=NO yes可增加性能,增加負載,便降低安全,建議NO
nopriv_user=nobody 默認以nobody運行vsftp
對外服務,建議使用stand alone方式啟動,性能好。
僅內部人員,建議用super daemon啟動,修改如下:
listen=NO
……略
vsftp默認使用GMT時間,建議修改如下:
use_localtime=YES
/etc/vsftpd.ftpusers #保存不允許進行FTP登錄的本地用戶帳號,提高系統的安全性
/etc/vsftpd.user_list
#禁止vsftpd.user_list中的用戶
userlist_enable=YES
userlist_deny=YES
#僅允許vsftpd.user_list中的用戶
userlist_enable=YES
userlist_deny=NO
日誌:
vsftpd_log_file=/var/log/vsftpd.log
下面開始講vsftp四種「用戶認證」的方式
一、匿名用戶 ftp anonymous
/var/ftp 默認主目錄
在/etc/vsftpd/vsftpd.conf中:
anonymous_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES #可刪除
chmod -R 777 /var/ftp/pub/
修改/var/ftp/pub的SELinux許可權
執行以下命令,修改/var/ftp/pub這目錄的類型:
chcon -R -t ftpd_anon_rw_t /var/ftp/pub/
anon_root=/var/www/html/ftp #改匿名用戶的宿主目錄
二、本地用戶
默認支持,使用各自的宿主目錄。不安全
local_root=/opt #新增這一項,改成其他路徑
三、虛擬用戶 PAM文件方式 推薦
建立虛擬用戶口令庫文件
# cat logins.txt
mike
pwabcd
john
pw1234
生成vsftpd的認證文件
db_load -T -t hash -f logins /etc/vsftpd/vsftpd_login.db
chmod 600 /etc/vsftpd/vsftpd_login.db
新創建虛擬用戶所需的PAM配置文件
cat /etc/pam.d/vsftpd.vu
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
新創建虛擬用戶的系統用戶所要訪問的目錄並設置相應許可權
# useradd -s /bin/false -d /home/ftpsite ftpvirtual
# chmod 700 /home/ftpsite
#設置vsftpd.conf配置文件,支持虛擬用戶
guest_enable=YES
guest_username=ftpvirtual
pam_service_name=vsftpd.vu
user_config_dir=/etc/vsftpd/vsftpd_user_conf #添加用戶配置文件目錄設置
/etc/vsftpd/vsftpd_user_conf/mike (同名),這里沒有的設置默認按vsftpd.conf的設置執行
anon_world_readable_only=NO #可以瀏覽FTP目錄和下載文件
anon_upload_enable=YES #用戶可以上傳文件,等同於 write_enable=yes 允許上傳
anon_mkdir_write_enable=YES #具有建立和刪除目錄的權利
anon_other_write_enable=YES #具有文件改名和刪除文件的許可權
local_root=/data/userspace #設置虛擬用戶登錄後的主目錄
anon_max_rate=1024000 #以Bytes/s為單位,這里限8Mbit,范圍大概在80%到120%之間
四、虛擬用戶 mysql認證方式 推薦
1. mysql安裝見mysql筆記
2.1 openssl-0.9.8e 源程序預編譯時在日誌中可能出現md5.h "Present But Cannot Be Compiled的錯誤,卸載下面某些包可能解決問題。
cyrus-sals-sql cyrus-sasl-ntlm cyrus-sasl-gssapi cyrus-sasl-devel openldap-devel
然後移除系統可能自帶的:
mv /usr/bin/openssl /usr/bin/openssl.OFF
mv /usr/include/openssl /usr/include/openssl.OFF
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
配置庫文件搜索路徑
#echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
#ldconfig -v
2.2 或者安裝openssl-0.9.8e的rpm包
3. pam_mysql-0.7RC1.tar.gz
#./configure --with-mysql=/usr/local/mysql --with-openssl=/usr/local/ssl
如果mysql是rpm安裝的,則不帶--with-mysql參數,如果openssl是rpm安裝的,參數為--with-openssl
make;make install
注意pam_mysql.so路徑,可能在/usr/lib/security/pam_mysql.so或/lib/security/pam_mysql.so
vi /etc/pam.d/vsftp.mysql #新建,僅兩行
auth required /lib/security/pam_mysql.so user=vsftpd passwd=123456 host=localhost db=vsftp table=users usercolumn=name passwdcolumn=passwd crypt=2
account required /lib/security/pam_mysql.so user=vsftpd passwd=123456 host=localhost db=vsftp table=users usercolumn=name passwdcolumn=passwd crypt=2
4.0 准備資料庫、表和數據
mysql> create database vsftp;
mysql> grant select on vsftp.* to vsftpd@localhost identified by '123456';
mysql> grant select on vsftp.* to [email protected] identified by '123456';
mysql> use vsftp;
mysql> create table users (
-> id int AUTO_INCREMENT NOT NULL,
-> name char(20) binary NOT NULL,
-> passwd char(48) binary NOT NULL,
-> primary key(id)
-> );
mysql> insert into users(name,passwd) values('hlc',password('hlc'));
mysql> insert into users(name,passwd) values('holly',password('holly'));
5.0 修改主配置文件
vi /etc/vsftpd/vsftpd.conf
guest_enable=YES
guest_username=vsftp
listen=YES
pam_service_name=vsftpd.mysql
以上完成了vsftp的配置,下面是補充:
dirmessage_enable=YES #設置歡迎語 在每個目錄下建立.message,寫入歡迎語即可。
db_load支持包(前面三個即可):
db4
db4-devel
db4-utils
db4-java
db4-tcl
Linux建議關閉selinux或征對FTP不做任何安全
setsebool -P -ftpd_disable_trans on
setsebool -P -allow_ftpd_full_access on
servie vsftpd restart
或者需要重啟伺服器
底下列出FTP訪問中所出現數字代碼的含意。
110 重新啟動標記應答。
120 服務在多久時間內ready。
125 數據鏈路埠開啟,准備傳送。
150 文件狀態正常,開啟數據埠。
200 命令執行成功。
202 命令執行失敗。
211 系統狀態或是系統求助響應。
212 目錄的狀態。
213 文件的狀態。
214 求助的訊息。
215 名稱系統類型。
220 新的聯機服務ready。
221 服務的控制埠關閉,可以注銷。
225 數據鏈接開啟,但無傳輸動作。
226 關閉數據埠,請求的文件操作成功。
227 進入passive mode。
230 用戶登錄。
250 請求的文件操作完成。
257 顯示目前的路徑名稱。
331 用戶名稱正確,需要密碼。
332 登入時需要帳戶信息。
350 請求的操作需要進一部的命令。
421 無法提供服務,關閉控制連結。
425 無法開啟數據鏈路。
426 關閉聯機,終止傳輸。
450 請求的操作未執行。
451 命令終止:有本地的錯誤。
452 未執行命令:磁碟空間不足。
500 格式錯誤,無法識別命令。
501 參數語法錯誤。
502 命令執行失敗。
503 命令順序錯誤。
504 命令所接的參數不正確。
530 未登入。
532 儲存文件需要賬戶登入。
550 未執行請求的操作。
551 請求的命令終止,類型未知。
552 請求的文件終止,儲存位溢出。
553 未執行請求的的命令,名稱不正確。
❷ linux怎麼搭建ftp伺服器
vsftpd是一款在Linux發行版中最受推崇的FTP伺服器程序。特點是小巧輕快,安全易用。並且是一個完全免費開放源碼的ftp軟體
方法/步驟
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調用說明啟動成功。
如有不清楚的可以再繼續看看網路經驗。
本回答由電腦網路分類達人 呂明推薦
評論
2 0
龍之晨_lemon | seo專員向TA咨詢
擅長: 互聯網
其他回答
1.
檢查安裝vsftpd軟體
使用如下命令#rpm -qa |grep vsftpd可以檢測出是否安裝了vsftpd軟體,
如果沒有安裝,使用YUM命令進行安裝。
2、啟動服務
使用vsftpd軟體,主要包括如下幾個命令:
啟動ftp命令#service vsftpd start
停止ftp命令#service vsftpd stop
重啟ftp命令#service vsftpd restart
3、vsftpd的配置
ftp的配置文件主要有三個,位於/etc/vsftpd/目錄下,分別是:
ftpusers 該文件用來指定那些用戶不能訪問ftp伺服器。
user_list 該文件用來指示的默認賬戶在默認情況下也不能訪問ftp
vsftpd.conf vsftpd的主配置文件
4、以匿名用戶為例,我們去掉配置文件vsftpd.conf 裡面以下
anon_upload_enable=YES
anon_mkdir_write_enable=YES
兩項前面的#號,就可以完成匿名用戶的配置,此時匿名用戶既可以登錄上傳、下載文件。記得修改配置文件後需要重啟服務。
5、非匿名賬戶的創建與使用
vsftpd服務與系統用戶是相互關聯的,例如我們創建一個名為test 的系統用戶,那麼此用戶在默認配置的情況下就可以實現登錄
登錄後在頁面創建名為「aa」的文件夾,同樣我們在伺服器test用戶 的home目錄里也可以看到相同的文件。
❸ linux怎麼搭建ftp伺服器
安裝vsFTP軟體 啟動服務之後 useradd -d /houme/裂槐運FTPTEST -m FTPTEST passwd FTPTEST 輸入密碼 這樣就有肆梁一個FTP用戶可以用FTP來連接你的FTP伺服器 當然記得設明散置分配的目錄的許可權和組許可權
❹ linux下如何安裝vsftp組件
在linux下安裝vsftp組件按照如下步驟,即可安裝成功
安裝vsftpd組件
安裝完後,有/etc/vsftpd/vsftpd.conf文件,是vsftp的配置文件。
[root@bogon ~]# yum -y install vsftpd
2.添加一個ftp用戶
此用戶就是用來登錄ftp伺服器用的。
[root@bogon ~]# useradd ftpuser
這樣一個用戶建完,可以用這個登錄,記得用普通登錄不要用匿名了。登錄後默認的路徑為 /home/ftpuser.
3.給ftp用戶添加密碼
[root@bogon ~]# passwd ftpuser
輸入兩次密碼後修改密碼。
4.防火牆開啟21埠
因為ftp默認的埠為21,而centos默認是沒有開啟的,所以要修改iptables文件
[root@bogon ~]# vim /etc/sysconfig/iptables
在行上面有22 -jACCEPT 下面另起一行輸入跟那行差不多的,只是把22換成21,然後:wq保存。
重啟ftp服務:
[root@bogon ~]# service vsftpd restart
7.用ftp客戶端登錄即可
❺ 如何在linux下開啟FTP服務
Linux下ftp服務可以通過搭建vsftpd服務來實現,以CentOS為例,首先查看系統中是否安裝了vsftpd,可以通過執行命令rpm -qa |grepvsftpd來查看是否安裝相應的包,如果沒有安裝那麼可以執行yum-yinstallvsftpd來安裝,安裝之後首先創建ftp用戶,比如ftp_test,命令如下:
useradd-s/sbin/nologin-d/home/ftp_testftp_test
目錄盡量不要選擇根目錄下,這里是/home/ftp_test,並且ftp_test這個目錄不要手動創建,否則許可權會有問題,執行命令的時候會自動創建,
現在可以看到上面的路徑是一個/,對於ftp用戶來說也就是根目錄了,只能在這個目錄下操作,而無法跳出這個目錄
以上就是vsftpd服務的基本搭建過程,實際使用時可以分配多個用戶
❻ linux vsftp rpm 怎麼安裝
1.檢查是否安裝VSFTP服務
rpm-qa|grepvsftpd
如果沒安裝,安裝VSFTP服務
2.掛載Linux系統的ISO鏡像文件到/tmp
mount-tiso9660/dev/cdrom/tmp
3.用rpm命令安裝VSFTP服務
cd/tmp/
rpm-ivhvsftpd-2.0.5-16.el5.i386.rpm
4.啟動VSFTP服務
chkconfig--list|grepvsftpd
/etc/init.d/vsftpdstart
❼ linux配置ftp伺服器的過程
第一步:打開終端(快捷鍵是Ctrl+Alt+t),如果當前用戶不是root用戶,請輸入命令「su」,然後輸入root賬戶密碼即可;
第二步:輸入命令「apt-get update」,這一步是為了更新下載的數據源,如果不更新可能造成有幾個後面的軟體包無法下載;
第三步:輸入命令「apt-get install vsftpd」完成安裝vsftpd;
第四步:判斷vsftp是否安裝成功,輸入命令「service vsftpd restart」重啟vsftpd服務,如果他在運行狀態說明安裝成功;
第五步:新建「/home/uftp」目錄作為用戶主目錄,輸入命令「mkdir /home/uftp」回車 ,然後輸入命令「ls /home」查看home目錄下有uftp這個目錄嗎,如果有就是創建成功;
第六步:新建用戶uftp並且設置密碼,輸入命令「useradd -d /home/uftp -s /bin/bash uftp」
回車,然後再輸入命令「passwd uftp」回車,然後輸入兩次密碼就設置ok了
第七步:使用vi修改配置文件/etc/vsftpd.conf,輸入命令「vi /etc/vsftpd.conf」回車,
向文件中添加「userlist_deny=NO」」userlist_enable=YES」?, 「userlist_file=/etc/allowed_users」?,
「seccomp_sandbox=NO」,最後把文件中的「local_enable=YES」保存(如果提示無法保存,直接退出來,把讀寫和執行許可權給這個文件,具體操作為:輸入命令: 「chmod 777 /etc/vsftpd.conf」回車就可以了);
第八步:新建文件/etc/allowed_users,輸入命令「vi /etc/allowed_users」,打開後再這個文件內寫入「uftp」保存即可;《Linux就該這么學》
第九步:查看/etc/ftpusers文件(不能訪問ftp服務用戶清單)的內容,輸入命令「vi /etc/ftpusers」回車,如果裡面有uftp,就把他刪除;
第十步:安裝winscp軟體,進行遠程登錄訪問;下載直接在網路下載就行
❽ 如何在linux 伺服器上做FTP。請指教。
linux 下FTP安裝及配置
一、FTP的安裝
1、檢測是否安裝了FTP :[root@localhost ~]# rpm -q vsftpd
如果安裝了會顯示版本信息:
[root@localhost ~]# vsftpd-2.0.5-16.el5_5.1
否則顯示:[root@localhost ~]# package vsftpd is not installed
2、如果沒安裝FTP,運行yum install vsftpd命令
具體的細節如下:(如果無法更新,你先配置能訪問互聯網,我有文檔叫 CentOS 在 VMware下,如何聯網到Internet的解決辦法 可以解決無法上網的問題)
[root@localhost ~]# yum install vsftpd
[root@localhost ~]#
3、完成ftp安裝後,將 /etc/vsftpd/user_list文件和/etc/vsftpd/ftpusers文件中的root這一行注釋掉
# root
4、執行以下命令
# setsebool -P ftpd_disable_trans=1
修改/etc/vsftpd/vsftpd.conf,在最後一行處添加local_root=/
5、重啟ftp進程 #service vsftpd restart
註:每次修改過ftp相關的配置文件,都需要重啟ftp進程來生效。
ftp伺服器就可以使用了。
*********************************************************************
二、vsftpd的配置文件說明:
vsftpd.ftpusers:位於/etc目錄下。它指定了哪些用戶賬戶不能訪問FTP伺服器,例如root等。
vsftpd.user_list:位於/etc目錄下。該文件里的用戶賬戶在默認情況下也不能訪問FTP伺服器,僅當vsftpd .conf配置文件里啟用userlist_enable=NO選項時才允許訪問。
vsftpd.conf:位於/etc/vsftpd目錄下。來自定義用戶登錄控制、用戶許可權控制、超時設置、伺服器功能選項、伺服器性能選項、伺服器響應消息等FTP伺服器的配置。
(1)用戶登錄控制
anonymous_enable=YES,允許匿名用戶登錄。
no_anon_password=YES,匿名用戶登錄時不需要輸入密碼。
local_enable=YES,允許本地用戶登錄。
deny_email_enable=YES,可以創建一個文件保存某些匿名電子郵件的黑名單,以防止這些人使用Dos攻擊。
banned_email_file=/etc/vsftpd.banned_emails,當啟用deny_email_enable功能時,所需的電子郵件黑名單保存路徑(默認為/etc/vsftpd.banned_emails)。
(2)用戶許可權控制
write_enable=YES,開啟全局上傳許可權。
local_umask=022,本地用戶的上傳文件的umask設為022(系統默認是077,一般都可以改為022)。
anon_upload_enable=YES,允許匿名用戶具有上傳許可權,很明顯,必須啟用write_enable=YES,才可以使用此項。同時我們還必須建立一個允許ftp用戶可以讀寫的目錄(前面說過,ftp是匿名用戶的映射用戶賬號)。
anon_mkdir_write_enable=YES,允許匿名用戶有創建目錄的權利。
chown_uploads=YES,啟用此項,匿名上傳文件的屬主用戶將改為別的用戶賬戶,注意,這里建議不要指定root賬號為匿名上傳文件的屬主用戶!
chown_username=whoever,當啟用chown_uploads=YES時,所指定的屬主用戶賬號,此處的whoever自然要用合適的用戶賬號來代替。
chroot_list_enable=YES,可以用一個列表限定哪些本地用戶只能在自己目錄下活動,如果chroot_local_user=YES,那麼這個列表裡指定的用戶是不受限制的。
chroot_list_file=/etc/vsftpd.chroot_list,如果chroot_local_user=YES,則指定該列表(chroot_local_user)的保存路徑(默認是/etc/vsftpd.chroot_list)。
nopriv_user=ftpsecure,指定一個安全用戶賬號,讓FTP伺服器用作完全隔離和沒有特權的獨立用戶。這是vsftpd系統推薦選項。
async_abor_enable=YES,強烈建議不要啟用該選項,否則將可能導致出錯!
ascii_upload_enable=YES;ascii_download_enable=YES,默認情況下伺服器會假裝接受ASCⅡ模式請求但實際上是忽略這樣的請求,啟用上述的兩個選項可以讓伺服器真正實現ASCⅡ模式的傳輸。
注意:啟用ascii_download_enable選項會讓惡意遠程用戶們在ASCⅡ模式下用「SIZE/big/file」這樣的指令大量消耗FTP伺服器的I/O資源。
這些ASCⅡ模式的設置選項分成上傳和下載兩個,這樣我們就可以允許ASCⅡ模式的上傳(可以防止上傳腳本等惡意文件而導致崩潰),而不會遭受拒絕服務攻擊的危險。
(3)用戶連接和超時選項
idle_session_timeout=600,可以設定默認的空閑超時時間,用戶超過這段時間不動作將被伺服器踢出。
data_connection_timeout=120,設定默認的數據連接超時時間。
(4)伺服器日誌和歡迎信息
dirmessage_enable=YES,允許為目錄配置顯示信息,顯示每個目錄下面的message_file文件的內容。
ftpd_banner=Welcome to blah FTP service,可以自定義FTP用戶登錄到伺服器所看到的歡迎信息。
xferlog_enable=YES,啟用記錄上傳/下載活動日誌功能。
xferlog_file=/var/log/vsftpd.log,可以自定義日誌文件的保存路徑和文件名,默認是/var/log/vsftpd.log。
anonymous_enable=YES 允許匿名登錄local_enable=YES 允許本地用戶登錄
write_enable=YES 開放本地用戶寫許可權
local_umask=022 設置本地用戶生成文件的掩碼為022
#anon_upload_enable=YES 此項設置允許匿名用戶上傳文件
#anon_mkdir_write_enable=YES 開啟匿名用戶的寫和創建目錄的許可權
dirmessage_enable=YES 當切換到目錄時,顯示該目錄下的.message隱藏文件的內容
xferlog_enable=YES 激活上傳和下載日誌
connect_from_port_20=YES 啟用FTP數據埠的連接請求
#chown_uploads=YES 是否具有上傳許可權. 用戶由chown_username參數指定。
#chown_username=whoever 指定擁有上傳文件許可權的用戶。此參數與chown_uploads聯用。
#xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES 使用標準的ftpd xferlog日誌格式
#idle_session_timeout=600 此設置將在用戶會話空閑10分鍾後被中斷
#data_connection_timeout=120 將在數據連接空閑2分鍾後被中斷
#ascii_upload_enable=YES 啟用上傳的ASCII傳輸方式
#ascii_download_enable=YES 啟用下載的ASCII傳輸方式
#ftpd_banner=Welcome to blah FTP service 設置用戶連接伺服器後顯示消息
#deny_email_enable=NO 此參數默認值為NO。當值為YES時,拒絕使用banned_email_file參數指定文件中所列出的e-mail地址用戶登錄。
#banned_email_file=/etc/vsftpd.banned_emails 指定包含拒絕的e-mail地址的文件.
#chroot_list_enable=YES 設置本地用戶登錄後不能切換到自家目錄以外的別的目錄
#chroot_list_file=/etc/vsftpd.chroot_list
#ls_recurse_enable=YES
pam_service_name=vsftpd 設置PAM認證服務的配置文件名稱,該文件存放在/etc/pam.d/
userlist_enable=YES 此項配置/etc/vsftpd.user_list中指定的用戶也不能訪問伺服器,若添加userlist_deny=No,則僅僅/etc/vsftpd.user_list文件中的用戶可以訪問,其他用戶都不可以訪問伺服器。如過userlist_enable=NO,userlist_deny=YES,則指定使文件/etc/vsftpd.user_list中指定的用戶不可以訪問伺服器,其他本地用戶可以訪問伺服器。
listen=YES 指明VSFTPD以獨立運行方式啟動
tcp_wrappers=YES 在VSFTPD中使用TCP_Wrappers遠程訪問控制機制,默認值為YES
三、舉例建立一個名為test的賬戶並進行配置
根據實際情況對FTP進行配置後,下面舉例介紹建立一個FTP賬戶並進行簡單的配置:
1、創建一個賬號為test的賬戶:
#mkdir /tmp/test //首先創建好目錄
#adser -d /tmp/test -g ftp -s /sbin/nologin test //-s /sbin/nologin是讓其不能登陸系統,-d 是指定用戶目錄為/opt/srsman ,即該賬戶只能登陸ftp,卻不能用做登陸系統用。
#passwd test
Changing password for user beinan.//接下來會出現讓你設置新的密碼
New password:
Retype new password:
passwd: all authentication tokens updated successfully
創建賬戶成功!
2、限制用戶目錄,不得改變目錄到上級
修改/etc/vsftpd/vsftpd.conf
將這兩行
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
注釋去掉
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
新增一個文件: /etc/vsftpd/chroot_list
內容寫需要限制的用戶名:
test
重新啟動vsftpd
# service vsftpd restart
3、最後為了防止伺服器由於斷電、重啟等現象發生,導致ftp進程在開機後未啟動,將其添加到開機啟動文件中:
(1)找到/etc/rc.local文件
(2)打開該文件,在最後一行添加:service vsftpd start
(3)保存,退出
4、通過在「我的電腦」中輸入ftp://192.168.179.30(填該ftp伺服器ip地址)進入ftp伺服器,輸入設置好的賬戶登陸即可。
5、CMD-》ftp 192.168.1.2
Cd /soft
Put c:\sss.log //這樣可以成功上傳, VSFTP不支持絕對目錄上傳,只能夠到當前目錄下上傳