日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

ubuntu_ftp_server配置方法

發布時間:2025/3/15 Ubuntu 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ubuntu_ftp_server配置方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

安裝使用


完成配置之后要設置vim?/etc/ftpusers 文件

1、安裝vsftpd





sudo apt-get?install vsftpd





安裝了之后會在/home/下建立一個ftp目錄。這時候你可以試著訪問下ftp://IP地?址。應該可以看到一個空白內容的ftp空間。



默認設置下匿名用戶可以下載,但不能寫入或是上傳



2、設置?vsftpd.conf文件



現在我們要讓匿名用戶無法訪問,并且得輸入linux上的用戶密碼后才能訪問到他們自己目錄里的內容。



首先找到設置vsftpd的文件,位置在/etc/vsftpd.conf





sudo gedit /etc/vsftpd.conf





服務器的配置 



1.?匿名服務器的連接(獨立的服務器)



在/etc/vsftpd/vsftpd.conf配置文件中添加如下幾項:





Anonymous_enable=yes (允許匿名登陸)



Dirmessage_enable=yes?(切換目錄時,顯示目錄下.message的內容)



Local_umask=022 (FTP上本地的文件權限,默認是077)



Connect_form_port_20=yes?(啟用FTP數據端口的數據連接)*



Xferlog_enable=yes?(激活上傳和下傳的日志)



Xferlog_std_format=yes (使用標準的日志格式)



Ftpd_banner=Moonlight Ftp Server?(歡迎信息)



Pam_service_name=vsftpd?(驗證方式)*



Listen=yes?(獨立的VSFTPD服務器)*







功能:只能連接FTP服務器,不能上傳和下傳



注:其中所有和日志歡迎信息相關連的都是可選項,打了星號的無論什么帳戶都要添加,是屬于FTP的基本選項



2.?開啟匿名FTP服務器上傳權限



在配置文件中添加以下的信息即可:





Anon_upload_enable=yes (開放上傳權限)



Anon_mkdir_write_enable=yes?(可創建目錄的同時可以在此目錄中上傳文件)



Write_enable=yes (開放本地用戶寫的權限)



Anon_other_write_enable=yes (匿名帳號可以有刪除的權限)







3.?開啟匿名服務器下傳的權限



在配置文件中添加如下信息即可:



Anon_world_readable_only=no





注:要注意文件夾的屬性,匿名帳戶是其它(other)用戶要開啟它的讀寫執行的權限



(R)讀-----下傳?(W)寫----上傳?(X)執行----如果不開FTP的目錄都進不去



4.普通用戶FTP服務器的連接(獨立服務器)



在配置文件中添加如下信息即可:



Local_enble=yes?(本地帳戶能夠登陸)



Write_enable=no?(本地帳戶登陸后無權刪除和修改文件)



功能:可以用本地帳戶登陸vsftpd服務器,有下載上傳的權限



注:在禁止匿名登陸的信息后匿名服務器照樣可以登陸但不可以上傳下傳



5.?用戶登陸限制進其它的目錄,只能進它的主目錄



設置所有的本地用戶都執行chroot



Chroot_local_user=yes?(本地所有帳戶都只能在自家目錄)





設置指定用戶執行chroot



Chroot_list_enable=yes
(文件中的名單可以調用)





Chroot_list_file=/任意指定的路徑/vsftpd.chroot_list





注意:vsftpd.chroot_list
是沒有創建的需要自己添加,要想控制帳號就直接在文件中加帳號即可



6.?限制本地用戶訪問FTP



Userlist_enable=yes (用userlistlai?來限制用戶訪問)



Userlist_deny=no (名單中的人不允許訪問)



Userlist_file=/指定文件存放的路徑/?(文件放置的路徑)



注:開啟userlist_enable=yes匿名帳號不能登陸



7.?安全選項









Idle_session_timeout=600(秒)?(用戶會話空閑后10分鐘)



Data_connection_timeout=120(秒) (將數據連接空閑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?(將客戶端的數據連接端口改在



Pasv_max_port=60000 50000—60000之間)



Max_clients=200?(FTP的最大連接數)



Max_per_ip=4?(每IP的最大連接數)



Listen_port=5555?(從5555端口進行數據連接)







8.?查看誰登陸了FTP,并殺死它的進程







ps –xf |grep ftp



kill?進程號







=============================================



最后重啟動服務







sudo?
/etc/init.d/vsftpd restart





?



==========================================



高級配置





1.?配置本地組訪問的FTP



首先創建用戶組?test和FTP的主目錄









groupadd test







mkdir /tmp/test









然后創建用戶









useradd -G test –d /tmp/test –M usr1







注:G:用戶所在的組?d:表示創建用戶的自己目錄的位置給予指定



M:不建立默認的自家目錄,也就是說在/home下沒有自己的目錄



useradd –G test –d /tmp/test –M usr2



接著改變文件夾的屬主和權限



chown usr1.test /tmp/test ----這表示把/tmp/test的屬主定為usr1



chmod 750 /tmp/test ----7表示wrx 5表示rx 0表示什么權限都沒有



這個實驗的目的就是usr1有上傳、刪除和下載的權限



而usr2只有下載的權限沒有上傳和刪除的權限



當然啦大家別忘了我們的主配置文件vsftpd.conf



要確定local_enable=yes、write_enable=yes、chroot_local_usr=yes這三個選項是有的哦!



2.?配置獨立FTP的服務器的非端口標準模式進行數據連接



這個非常容易:在VSFTPD。CONF中添加



Listen_port=33333







3.?配置單獨的虛擬FTP,使用虛擬FTP用戶,并使建立的四個帳戶中有不同的權限



(兩個有讀目錄的權限,一個有瀏覽、上傳、下載的權限,一個有瀏覽、下載、刪除和改文件名的權限)



A:配置網卡



第一塊網卡地址是10.2.3.4
掩碼是255.255.0.0



ifconfig eth0:1 211.131.4.253 netmask 255.255.255.0 up



B:寫入/etc/sysconfig中(為了重起后IP地址不會丟失)



cd /etc/sysconfig/network-scripts



cp ifcfg-eth0 ifcfg-eth0:1



vi ifcfg-eth0:1在其中修改內容如下



DEVICE=eth0:1



BROADCAST=211.131.4.255



HWADDR=該網卡的MAC地址



IPADDR=211.131.4.253



NETMASK=255.255.255.0



NETWORK=211.131.4.0



ONBOOT=yes



TYPE=Ethernet



wq推出



C:進入vsftpd.conf所在的文件夾



cp vsftpd.conf vsftpd2.conf



修改vsftpd.conf添加以下信息



Listen_address=10.2.3.4



修改vsftpd2.conf添加以下信息



Listen_address=211.131.4.253



Ftpd_banner=this is a virtual ftp test



到此虛擬的FTP服務器建立好了



D:建立logins.txt



vi /tmp/logins.txt



添加入下信息:



moonlight ----username?



moonlight -----password





格式要按照我的來哦,一個用戶名,一個密碼啦



F:建立訪問者的口令庫文件,然后修改其權限





db_load –T –t hash –f /tmp/logins.txt
/etc/vsftpd_login.db









G:進如/etc/pam.d/中創建ftp.vu



在此文件中添加如下信息











auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login







account required /lib/security/pam_userdb.so db=/etc/vsftpd_login









H:在/var/ftp/創建目錄并改變其屬性和它的屬主



useradd -d /var/ftp/test qiang



chmod 700 /var/ftp/test



在目錄中添加test_file測試文件



I:進入vsftpd2.conf修改其中的信息(我加的是)









Listen_yes







Anonymous_enable=no







Local_enable=yes







Write_enable=no







Anon_upload_enable=no







Anon_mkdir_write_enable=no







Anon_other_write_enable=no







Chroot_local_user=yes







Guest_enable=yes----------起用虛擬用戶







Guest_username=qiang------將虛擬用戶映射為本地用戶







Listen_port=5555







Max_client=10







Max_per_ip=1







Ftpd_banner=this?is?a?virtual?server and users







Pam_service_name=ftp.vu









注:在主配置文件中給的權限越低,在后面分用戶管理的時候對擁護的權限劃分的空間就越大,因為主配置文件最高的限制服務先讀主配置文件,然后再讀用戶的配?置文件



重起服務



到此虛擬USER就建好了



J:在VSFTPD。CONF所在的目錄中創建virtaul文件目錄



并在文件目錄中創建以你用戶名命名的配置文件



moonlight



在moonlight中添加









Anon_world_readable_only=no







Write_enable=yes







Anon_upload_enable=yes







Anon_other_write_enable=yes









此用戶就有了上傳、下載、刪除文件目錄、修改文件名和瀏覽的權限



K:修改vsftpd2.conf



加入user_config_dir=/vsftpd.conf所在的目錄/virtual



重起服務器就搞定了



配置





Anonymous_enable=yes (允許匿名登陸)







Dirmessage_enable=yes?(切換目錄時,顯示目錄下.message的內容)







Local_umask=022 (FTP上本地的文件權限,默認是077)







Connect_form_port_20=yes?(啟用FTP數據端口的數據連接)*







Xferlog_enable=yes?(激活上傳和下傳的日志)







Xferlog_std_format=yes (使用標準的日志格式)







Ftpd_banner=XXXXX?(歡迎信息)







Pam_service_name=vsftpd?(驗證方式)*







Listen=yes?(獨立的VSFTPD服務器)*







Anon_upload_enable=yes (開放上傳權限)







Anon_mkdir_write_enable=yes?(可創建目錄的同時可以在此目錄中上傳文件)







Write_enable=yes (開放本地用戶寫的權限)







Anon_other_write_enable=yes (匿名帳號可以有刪除的權限)







Anon_world_readable_only=no (放開匿名用戶瀏覽權限)







Ascii_upload_enable=yes (啟用上傳的ASCII傳輸方式)







Ascii_download_enable=yes (啟用下載的ASCII傳輸方式)







Banner_file=/var/vsftpd_banner_file (用戶連接后歡迎信息使用的是此文件中的相關信息)







Idle_session_timeout=600(秒)?(用戶會話空閑后10分鐘)







Data_connection_timeout=120(秒) (將數據連接空閑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?(將客戶端的數據連接端口改在







Pasv_max_port=60000 50000—60000之間)







Max_clients=200?(FTP的最大連接數)







Max_per_ip=4?(每IP的最大連接數)







Listen_port=5555?(從5555端口進行數據連接)







Local_enble=yes?(本地帳戶能夠登陸)







Write_enable=no?(本地帳戶登陸后無權刪除和修改文件)







這是一組







Chroot_local_user=yes?(本地所有帳戶都只能在自家目錄)







Chroot_list_enable=yes?(文件中的名單可以調用)







Chroot_list_file=/任意指定的路徑/vsftpd.chroot_list







(前提是chroot_local_user=no)







這又是一組







Userlist_enable=yes?(在指定的文件中的用戶不可以訪問)







Userlist_deny=yes







Userlist_file=/指定的路徑/vsftpd.user_list







又開始單的了







Banner_fail=/路徑/文件名 (連接失敗時顯示文件中的內容)







Ls_recurse_enable=no







Async_abor_enable=yes







One_process_model=yes







Listen_address=10.2.2.2?(將虛擬服務綁定到某端口)







Guest_enable=yes (虛擬用戶可以登陸)







Guest_username=所設的用戶名 (將虛擬用戶映射為本地用戶)







User_config_dir=/任意指定的路徑/為用戶策略自己所建的文件夾







(指定不同虛擬用戶配置文件的路徑)







又是一組







Chown_uploads=yes?(改變上傳文件的所有者為root)







Chown_username=root







又是一組







Deny_email_enable=yes (是否允許禁止匿名用戶使用某些郵件地址)







Banned_email_file=//任意指定的路徑/xx/







又是單的







Pasv_enable=yes?( 服務器端用被動模式)







User_config_dir=/任意指定的路徑//任意文件目錄?(指定虛擬用戶存放配置文件的路徑)





如需要使用本地用戶登陸關閉來賓用戶,必須設置如下命令:





anonymous_enable=no



guest_enable=no



local_enable=yes



write_enable=yes



local_umask=022



chroot_list_enable=yes



chroot_list_file=/etc/vsftpd.chroot_list (如沒有則自己創建)



?



(在etc/vsftpd.chroot_list?填入需要登陸的本地用戶名)





過程中遇到的問題:



注意事項:



修改vsftpd的默認根目錄的方法



修改vsftpd的配置文件,添加下面三行



local_root=/media/ftp/pub

chroot_local_user=YES

anon_root=/var/www/html/



local_root?表示本地用戶登錄后的根目錄,也就是非匿名,而是輸入用戶名和密碼登錄進入的,這里順便說一下ftp登錄的格式

ftp://username:passwd@localhost



anon_root anonymous用戶,即匿名用戶訪問的主目錄





但是這時候可能會出現以下報錯:



[root@localhost pub]# lftp localhost

lftp localhost:~> ls

ls: Login failed: 500 OOPS: vsftpd: refusing to run with writable anonymous
root



原因還是權限設置問題:

是ftp默認主目錄權限設置不對,我這里報這個錯誤是因為/media/ftp設置權限為777,/media/ftp/pub設置權限也為777。正確的權限設置是將/media/ftp權限設置為755,chmod 755 /media/ftp后重啟ftp服務就ok了。



另:

如果你是默認的ftp目錄出現此問題,那一定是這個/home/ftp的權限不對所致,這個目錄的權限是不能打開所有權限的;是您運行了chmod
777 /home/ftp所致;如果沒有ftp用戶這個家目錄,當然您要自己建一個;



如下FTP用戶的家目錄是不能針對所有用戶、用戶組、其它用戶組完全開放;

[root@localhost ~]# ls -ld /home/ftp

drwxrwxrwx 3 root root 4096 2005-03-23 /home/ftp



修正這個錯誤,應該用下面的辦法;

[root@localhost ~]# chown root:root /home/ftp

[root@localhost ~]# chmod 755 /home/ftp



有的弟兄可能會說,那匿名用戶的可讀、可下載、可上傳怎么辦呢?這也簡單,在/home/ftp下再建一個目錄,權限是777的就行了,再改一改vsftpd.conf就OK了;沒有什么難的;



vsFTPd出于安全考慮,是不準讓ftp用戶的家目錄的權限是完全沒有限制的,您可以去讀一下vsFTPd的文檔就明白的了;否則也不能稱為最安全的FTP服務器了,對不對?



解決ftp 425 bad ip connecting錯誤



vsftp內網正常登陸,但外網就會出現



425 bad ip connecting問題



解決辦法



編輯/etc/vsftpd/vsftpd.conf

添加pasv_promiscuous=YES



重起服務就可以了



vsftpd?TCP_wrapper?結合限制用戶的ip地址登錄



vsftpd?與TCP_wrapper?結合到一塊來實現這種要求

/etc/hosts.allow?定義允許的地址:

/etc/hosts.deny?定義拒絕的來源地址.



如下:

/etc/hosts.allow



[root@BJFS-PIM root.adminssh]# cat /etc/hosts.allow

#

# hosts.allow This file describes the names of the hosts which are

# allowed to use the local INET services, as decided

# by the ‘/usr/sbin/tcpd’ server.

#

vsftpd :123.103.47.0/255.255.255.0 218.240.63.0/255.255.255.0
59.46.172.0/255.255.255.0 10.0.0.0/255.0.0.0 60.2.80.0/255.255.255.0
218.249.230.0/255.255.255.0 160.10.0.0/255.255.0.0 218.246.69.0/255.255.255.0
125.35.3.0/255.255.255.0:allow



/etc/hosts.deny

#

# hosts.deny This file describes the names of the hosts which are

# *not* allowed to use the local INET services, as decided



#

# The portmap line is redundant, but it is left to remind you that?

# the new secure portmap uses hosts.deny and hosts.allow. In particular

# you should know that NFS uses portmap!



vsftpd : ALL : DENY



將tcp_wrappers=yes添加至/etc/vsftpd/vsftpd.conf?中



vi /etc/vsftpd/vsftpd.conf

tcp_wrappers=YES



重新啟動vsftpd

[root@home vsftpd]# /sbin/service vsftpd restart

?來自:?http://hi.baidu.com/squiant/blog/item/91243eb477dab9c336d3ca3b.html

轉載于:https://www.cnblogs.com/leyton/p/4743763.html

總結

以上是生活随笔為你收集整理的ubuntu_ftp_server配置方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。