linux上安裝配置vsftpd(轉)

 

轉自:http://www.webarch.org/category/linux
生產環境是Centos5.6,因爲須要提供ftp服務,就找了一款比較小巧的ftp服務器端軟件,vsftpd(vsftpd 的名字表明」very secure FTP daemon」.
vsftpd在安全性、高性能及穩定性三個方面有上佳的表現。
它提供的主要功能包括虛擬IP設置、虛擬用戶、Standalone、inetd操做模式、強大的單用戶設置能力及帶寬限流等。

安全是它的開發者 Chris Evans 考慮的首要問題之一。在這個 FTP 服務器設計開發的最開始的時候,高安全性就是一個目標。html

 
 1.查看是否安裝vsftp
 rpm -qa | grep vsftpd
 若是出現vsftpd-2.0.5-21.el5,說明已經安裝 vsftp
 
 安裝vsftp
 yum -y install vsftpd
 
 2.測試 是否安裝成功 (ip 改爲本身啊,不要用俺的這次登陸爲匿名登陸 user: anonymous 密碼爲空 若是成功登陸會有下面內容 這說明vsftpd安裝成功)
 [root@localhost ~]#service vsftpd start
 爲 vsftpd 啓動 vsftpd:[肯定]
 
 3,配置vsftpd
 # whereis vsftpd
 vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
 yum安裝的主要目錄爲上述的3個目錄,其中配置文件vsftpd.conf在/etc/vsftpd中,下面看下怎麼配置vsftpd.conf
 
 # 默認配置文件: /etc/vsftpd.conf
 #     下面是配置的選項及說明
 ######### 核心設置 ###########
 
 # 容許本地用戶登陸
 local_enable=YES
 # 本地用戶的寫權限
 write_enable=YES
 
 # 使用FTP的本地文件權限,默認爲077
 # 通常設置爲022
 local_umask=022
 
 # 切換目錄時
 # 是否顯示目錄下.message的內容
 dirmessage_enable=YES
 dirlist_enable = NO
 #驗證方式
 #pam_service_name=vsftpd
 
 # 啓用FTP數據端口的數據鏈接
 connect_from_port_20=YES
 
 # 以獨立的FTP服務運行
 listen=yes
 
 # 修改鏈接端口
 #listen_port=2121
 
 ######### 匿名登陸設置 ###########
 
 # 容許匿名登陸
 anonymous_enable=NO
 
 # 若是容許匿名登陸
 # 是否開啓匿名上傳權限
 #anon_upload_enable=YES
 
 # 若是容許匿名登陸
 # 是否容許匿名創建文件夾並在文件夾內上傳文件
 #anon_mkdir_write_enable=YES
 
 # 若是容許匿名登陸
 # 匿名賬號能夠有刪除的權限
 #anon_other_write_enable=yes
 
 # 若是容許匿名登陸
 # 匿名的下載權限
 # 匿名爲Other,可設置目錄/文件屬性控制
 #anon_world_readable_only=no
 
 # 若是容許匿名登陸
 # 限制匿名用戶傳輸速率,單位bite
 #anon_max_rate=30000
 
 ######### 用戶限制設置 ###########
 
 #### 限制登陸
 
 # 用userlist來限制用戶訪問
 #userlist_enable=yes
 
 # 名單中的人不容許訪問
 #userlist_deny=no
 
 # 限制名單文件放置的路徑
 #userlist_file=/etc/vsftpd/userlist_deny.chroot
 
 #### 限制目錄
 
 # 限制全部用戶都在家目錄
 #chroot_local_user=yes
 
 # 調用限制在家目錄的用戶名單
 chroot_list_enable=YES
 
 # 限制在家目錄的用戶名單所在路徑
 chroot_list_file=/etc/vsftpd/chroot_list
 
 ######### 日誌設置 ###########
 
 # 日誌文件路徑設置
 xferlog_file=/var/log/vsftpd.log
 
 # 激活上傳/下載的日誌
 xferlog_enable=YES
 
 # 使用標準的日誌格式
 #xferlog_std_format=YES
 
 ######### 安全設置 ###########
 
 # 用戶空閒超時,單位秒
 #idle_session_timeout=600
 
 # 數據鏈接空閒超時,單位秒
 #data_connection_timeout=120
 
 # 將客戶端空閒1分鐘後斷開
 #accept_timeout=60
 
 # 中斷1分鐘後從新鏈接
 #connect_timeout=60
 
 # 本地用戶傳輸速率,單位bite
 #local_max_rate=50000
 
 # FTP的最大鏈接數
 #max_clients=200
 
 # 每IP的最大鏈接數
 #max_per_ip=5
 
 ######### 被動模式設置 ###########
 
 # 是否開戶被動模式
 pasv_enable=yes
 
 # 被動模式最小端口
 pasv_min_port=5000
 
 # 被動模式最大端口
 pasv_max_port=6000
 
 ######### 其餘設置 ###########
 # 歡迎信息
 ftpd_banner=Welcome to Ftp Server!
 
 
 4 添加ftp防火牆規則:
 /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
 /etc/rc.d/init.d/iptables save
 /etc/init.d/iptables restart

在文件/etc/sysconfig/iptables中添加如下記錄,後執行service iptables restart重啓
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
 
 5 添加用戶(注意,該處添加nologin類型用戶ftpuser):
 useradd -d /home/ftp -s /sbin/nologin ftpuser
 若是已啓動vsftpd,從新啓動
 pkill vsftpd /usr/sbin/vsftpd &
 
 6 到此,整個小巧的ftp服務器搭建成功。可使用FileZilla FTP或FlashFXP等客戶端軟件登錄ftp server了。linux

http://www.cnblogs.com/itech/archive/2012/09/16/2687378.htmlweb

 http://blog.csdn.net/bluishglc/article/details/42398811安全

sftp ncftp服務器

 

 

常見問題及解決辦法:
一、root 用戶220拒絕
解決辦法:
在/etc/vsftpd.ftpusers和/etc/vsftpd.user_list中將root註釋掉,保存文件後當即生效
緣由:
[root@test ums-client]# more /etc/vsftpd.user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd.ftpusers
# for users that are denied.
#root


session

2.設定ftp登錄時的默認目錄
修改vsftp默認用戶訪問目錄在配置文件目錄 /etc/vsftpd/下的 vsftpd.conf文件中。
找到並打開/etc/vsftpd/vsftpd.conf, 設置添加如下代碼:
local_root=/home/xxx
那麼ftp用戶訪問的默認目錄就是xxx這個目錄了。
ftp用戶訪問的默認目錄設置好了, 還能夠單獨設置這個目錄的訪問權限如(777,755等權限), 方法請參考文章: vsftp 設置ftp用戶訪問目錄權限的命令
注意設置好了須要重啓vsftp服務器:
service vsftpd restart
重啓後你再在客戶端鏈接看看是否是指定的目錄呀。tcp

三、vsftpd下顯示的時間與系統時間不一致
ftp上來顯示的時間與系統時間不一致,是由於默認狀況下,vsftpd 是用GMT作爲它的時間的,因此和系統的時間(GMT+8會會相差8個小時)能會不一致。
修改也很簡單:
vi /etc/vsftpd/vsftpd.conf
在最後加入一行:
use_localtime=YES
存盤後,重啓vsftpd:
service vsftpd restart
這樣就好了性能

http://www.chinaunix.net/old_jh/4/347483.html測試

 按上述設置並重啓vsftpd後,時間顯示正常:ui

 

四、如何有選擇的把用戶限制在家目錄中呢?
咱們要本身建一個文件,在/etc目錄中或/etc/vsftpd目錄中(假如您的vsftpd配置文件都是放在這個目錄的話);
#touch /etc/vsftpd.chroot_list
以beinan和nanbei這兩個用戶限制在他們所在的家目錄中,而其它的FTP用戶不作此限制。
在vsftpd.chroot_list這個文件中,把beinan和nanbei添上去就行,注意,每一個用戶佔一行。
beinan
nanbei
而後改/etc/vsftpd/vsftpd.conf文件,找以下的兩行
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
若是沒有這樣的兩行,就能夠本身添加上去也是同樣的。
設置好後,從新vsFTPD服務器。
補充一之補充:如何把系統內全部的FTP用戶都限制在家目錄中呢??經juliaugong兄的提示,我查找了vsFTPd的洋文說明,證實這個選項是一刀切的解決全部的用戶都能限制在家目錄中
咱們能夠經過更改vsftpd.conf文件,加入以下的一行
chroot_local_user=YES
改完配製文件,不要忘記重啓vsFTPd服務器;

五、如何讓綁定IP到vsFTPd?
如何讓綁定IP到vsFTPd?也就是說,如何讓用戶只能經過某個IP來訪問FTP。其實這個功能頗有意思。若是綁定的是內網的IP,外部是沒有辦法訪問的。若是綁定的是對外服務的IP,內網也只能經過對外服務的IP來訪問FTP
在vsftpd.conf中加一行,以個人局域網爲例,請看第一帖中的操做環境,這樣外網就不能訪問個人FTP了,內網也可能經過192.168.0.2來訪問FTP;
listen_address=192.168.0.2
http://os.51cto.com/art/201102/245528.htm

相關文章
相關標籤/搜索