Ubuntu虛擬機系統(tǒng)下安裝配置Vsftpd
Ubuntu虛擬機系統(tǒng)下安裝配置Vsftpd:Linux是一種開源的而且安全的操作系統(tǒng),已經(jīng)深入人心。作為Linux的一種流行發(fā)行版本,Ubuntu的使用更加普及。vsftpd是Linux下一種最為方便的FTP程序,也為人們所推崇。本文講述的是如何在Ubuntu虛擬機系統(tǒng)下安裝配置Vsftpd。
一、首先虛擬機要處于聯(lián)網(wǎng)狀態(tài):
1.安裝vsftpd
直接從源里面安裝 sudo apt-get install vsftpd
需要輸入yes的,輸入下,然后一直enter下去
如果安裝失敗請重新安裝 sudo apt-get --reinstall install vsftpd
如果要卸載的話
清除式卸載(同時清除配置):sudo apt-get --purge remove vsftpd
清除式卸載(清除配置文件):sudo apt-get purge vsftpd
安裝完畢后或許會自動生成一個帳戶"ftp",/home下也會增加一個文件夾。
如果沒有生成這個用戶的話可以手動來:mkdir /home/ftp 生成了就不用了。
sudo useradd -m ftp (添加一個ftp用戶)
sudo passwd ftp (更改Linux密碼)
有"ftp"帳戶后還要更改權(quán)限
代碼:
sudo chmod 777 /home/ftp (改變文件夾權(quán)限)
sudo chmod 777 -R /home/ftp (改變文件夾及子文件權(quán)限)
在這個目錄下我建立一個文件夾專門保存需要共享的內(nèi)容
2.配置文件
備份一下源文件:
- # cp /etc/vsftpd.conf /etc/vsftpd.conf_bak
然后修改
- # vi /etc/vsftpd.conf
或
- # gedit /etc/vsftpd.conf
(vi 不熟的最好用 gedit )
配置文件比較簡單,如下
簡單的登錄下載模式:
#獨立模式啟動
- listen=YES
#同時允許4客戶端連入,每個IP最多5個進(jìn)程
- max_clients=200
- max_per_ip=4
#不允許匿名用戶訪問,允許本地(系統(tǒng))用戶登錄
- anonymous_enable=NO
- local_enable=YES
- write_enable=NO
#是否采用端口20進(jìn)行數(shù)據(jù)傳輸
- connect_from_port_20=YES
#生成日志
- xferlog_enable=YES
#指定登錄轉(zhuǎn)向目錄
- local_root=/home/ftp/ftp
配置完成后,在終端上ifconfig獲取IP地址
這樣,在同局域網(wǎng)的電腦上,在瀏覽器中輸入ftp://IP地址,用帳號和對應(yīng)密碼就可以登錄了!賬戶和密碼網(wǎng)上說是自己開始設(shè)置的,我用的是我登錄虛擬機的賬戶和密碼!我用TC嘗試登錄了虛擬機的ftp,發(fā)現(xiàn)可以下載文件,如果需要更為詳細(xì)的服務(wù),請參照下面重新修改配置文件。
對了,更改配置后不要忘了重啟ftp服務(wù)
代碼:
- sudo /etc/init.d/vsftpd restart
有的虛擬機可能會報錯,嘗試下面的重啟命令:
- sudo service vsftpd restart
此外還有開啟關(guān)閉服務(wù)的命令
代碼:
- sudo /etc/init.d/vsftpd start
- sudo /etc/init.d/vsftpd stop
有的虛擬機可能會報錯,嘗試下面的命令:
- sudo service vsftpd start
- sudo service vsftpd stop
如果你需要詳細(xì)的FTP設(shè)置,請參照以下代碼:
- anonymous_enable=yes (允許匿名登陸)
- dirmessage_enable=yes (切換目錄時,顯示目錄下.message的內(nèi)容)
- local_umask=022 (FTP上本地的文件權(quán)限,默認(rèn)是077)
- connect_form_port_20=yes (啟用FTP數(shù)據(jù)端口的數(shù)據(jù)連接)
- xferlog_enable=yes (激活上傳和下傳的日志)
- xferlog_std_format=yes (使用標(biāo)準(zhǔn)的日志格式)
- ftpd_banner=XXXXX (歡迎信息)
- pam_service_name=vsftpd (驗證方式)
- listen=yes (獨立的VSFTPD服務(wù)器)
功能:只能連接FTP服務(wù)器,不能上傳和下傳
注:其中所有和日志歡迎信息相關(guān)連的都是可選項,打了星號的無論什么帳戶都要添加,是屬于FTP的基本選項
開啟匿名FTP服務(wù)器上傳權(quán)限
在配置文件中添加以下的信息即可:
- Anon_upload_enable=yes (開放上傳權(quán)限)
- Anon_mkdir_write_enable=yes (可創(chuàng)建目錄的同時可以在此目錄中上傳文件)
- Write_enable=yes (開放本地用戶寫的權(quán)限)
- Anon_other_write_enable=yes (匿名帳號可以有刪除的權(quán)限)
- Anon_world_readable_only=no (開啟匿名服務(wù)器下傳的權(quán)限)
- 注:要注意文件夾的屬性,匿名帳戶是其它(other)用戶要開啟它的讀寫執(zhí)行的權(quán)限
- (R)讀-----下傳(W)寫----上傳 (X)執(zhí)行----如果不開FTP的目錄都進(jìn)不去
- Local_enble=yes (本地帳戶能夠登陸)
- Write_enable=no (本地帳戶登陸后無權(quán)刪除和修改文件)
#p#
功能:可以用本地帳戶登陸vsftpd服務(wù)器,有下載上傳的權(quán)限
注:在禁止匿名登陸的信息后匿名服務(wù)器照樣可以登陸但不可以上傳下傳
用戶登陸限制進(jìn)其它的目錄,只能進(jìn)它的主目錄
設(shè)置所有的本地用戶都執(zhí)行chroot
Chroot_local_user=yes (本地所有帳戶都只能在自家目錄)
設(shè)置指定用戶執(zhí)行chroot
Chroot_list_enable=yes (文件中的名單可以調(diào)用)
Chroot_list_file=/任意指定的路徑/vsftpd.chroot_list
注意:vsftpd.chroot_list 是沒有創(chuàng)建的需要自己添加,要想控制帳號就直接在文件中加帳號即可
限制本地用戶訪問FTP
Userlist_enable=yes (用userlistlai 來限制用戶訪問)
Userlist_deny=no (名單中的人不允許訪問)
Userlist_file=/指定文件存放的路徑/ (文件放置的路徑)
注:開啟userlist_enable=yes匿名帳號不能登陸
安全選項
Idle_session_timeout=600(秒) (用戶會話空閑后10分鐘)
Data_connection_timeout=120(秒)(將數(shù)據(jù)連接空閑2分鐘斷)
Accept_timeout=60(秒)(將客戶端空閑1分鐘后斷)
Connect_timeout=60(秒)(中斷1分鐘后又重新連接)
Local_max_rate=50000(bite)(本地用戶傳輸率50K)
Anon_max_rate=30000(bite)(匿名用戶傳輸率30K)
Pasv_min_port=50000 (將客戶端的數(shù)據(jù)連接端口改在
Pasv_max_port=60000 50000—60000之間)
Max_clients=200 (FTP的最大連接數(shù))
Max_per_ip=4 (每IP的最大連接數(shù))
Listen_port=5555 (從5555端口進(jìn)行數(shù)據(jù)連接)
配置的時候注意文件權(quán)限的問題,開啟匿名和本地后,關(guān)鍵是文件權(quán)限的設(shè)置,為了給不同的用戶分配不同的權(quán)限,可以生成一個組,例如ftpuser,然后賦 予它何時的權(quán)限例如755,chroot()設(shè)置可以使得本地用戶限制在登錄時的目錄,這對于安全很重要,可以這是local_root指定本地用戶登錄時的目錄,負(fù)責(zé)為/home下相應(yīng)目錄。
補充:
# ps -ef | grep ftp #查看是否啟動