⑴ 怎麼用linux搭建ftp服務
一般來講,人們將電腦聯網的首要需求就是獲取資料,而文件傳輸是其中非常重要的方式之一,21世紀的互聯網是由幾千萬台個人電腦、工作站、小型機、大型機等等不同型號、架構的物理設備共同組成的,即便是個人電腦上也可能會裝有諸如Linux、Windows、UNIX、DOS等等不同的操作系統,所以為了能夠在如此復雜多樣的操作設備之間解決文件傳輸問題,於是便有了統一的FTP文件傳輸協議(File Transfer Protocol),這是一種能夠讓使用者在互聯網中上傳、下載文件的傳輸協議。很多同學在大學期間只知道FTP協議使用了21埠號,但實際上FTP文件傳輸協議默認佔用了20、21兩個埠號,20埠號用於進行數據傳輸,21埠號用於接受客戶端執行的相關FTP命令與參數,FTP服務端普遍更多的應用於內網中,具有易於搭建、方便管理的特點,並且可以藉助FTP客戶端工具還可以輕松實現文件的多點下載和斷點續傳技術
FTP伺服器就是支持FTP傳輸協議的主機,與大多數服務程序一樣,要想完成文件傳輸則需要FTP服務端和客戶端的配合才行,用戶可以通過客戶端向FTP服務端發送指令參數,FTP服務端從而會依據接受到的命令作出相應動作,比如顯示執行結果或把文件傳輸到客戶端主機上,FTP協議的傳輸有兩種不同的模式,主動模式是讓FTP服務端主動向客戶端發起鏈接請求,而被動模式則是讓FTP服務端等待客戶端的鏈接請求,默認情況下被動模式,因為咱們在第八章的防火牆課程中學習過,防火牆一般更多的是過濾從外網到內網的流量數據,因此有些時候必須改成主動模式才可以傳輸。
Vsftpd是一款運行在Linux操作系統上面的FTP服務端程序,Very SecureFTPDaemon顧名思義就是非常安全的FTP傳輸程序,vsftpd服務程序不僅完全開源且免費,而且具有很高的安全性、傳輸速率、支持虛擬用戶驗證功能等等其他FTP服務端程序所不具備的特點。配置妥當yum軟體倉庫後就可以來安裝vsftpd服務程序了:
#www.linuxprobe.com
[root@linuxprobe~]#yuminstallvsftpd-y
Loadedplugins:langpacks,proct-id,subscription-manager
………………省略部分輸出信息………………
================================================================================
================================================================================
Installing:
vsftpdx86_643.0.2-9.el7rhel166k
TransactionSummary
================================================================================
Install1Package
Totaldownloadsize:166k
Installedsize:343k
Isthisok[y/d/N]:y
Downloadingpackages:
Runningtransactioncheck
Runningtransactiontest
Transactiontestsucceeded
Runningtransaction
Installing:vsftpd-3.0.2-9.el7.x86_641/1
Verifying:vsftpd-3.0.2-9.el7.x86_641/1
Installed:
vsftpd.x86_640:3.0.2-9.el7
Complete!
iptables防火牆管理工具中默認禁止了ftp傳輸協議的埠號,因此咱們在正式配置vsftpd服務程序前還需要清空一下iptables防火牆的默認策略,並將當前已經被清理的防火牆策略狀態保存下來:
[root@linuxprobe~]#iptables-F
[root@linuxprobe~]#serviceiptablessave
iptables:Savingfirewallrulesto/etc/sysconfig/iptables:[OK]
vsftpd服務程序的主配置文件(/etc/vsftpd/vsftpd.conf)中參數總共有123行左右,但大多數都是以#(井號)開頭的注釋信息,咱們可以用grep命令的-v參數來過濾並反選出沒有包含#(井號)的參數行,也就是把所有的注釋信息都過濾掉,這樣再通過輸出重定向符寫會到原始的主配置文件名稱中即可:
[root@linuxprobe~]#mv/etc/vsftpd/vsftpd.conf/etc/vsftpd/vsftpd.conf_bak
[root@linuxprobe~]#grep-v"#"/etc/vsftpd/vsftpd.conf_bak>/etc/vsftpd/vsftpd.conf
[root@linuxprobe~]#cat/etc/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
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
劉遄老師給同學們整理出了vsftpd服務程序的主配置文件中常用的參數及作用介紹,您現在只要簡單的瀏覽一下,接下來的實驗中如果不明白再過來查閱就可以。
⑵ 如何在linux系統下搭建ftp伺服器
在linux中一般使用vsftp這個軟體搭建FTP伺服器。
首先要看你的是什麼linux系統,對於ubuntu、debian可通過apt-get install vsftpd命令安裝,對於centos、redhat等系統可通過yum install vsftpd命令安裝。
安裝成功後,需要修改/etc/vsftpd.conf配置文件。這個配置文件包含登錄ftp的用戶、密碼、訪問目錄的設置。
修改了配置文件後,執行/etc/init.d/vsftpd restart命令重啟ftp伺服器。那麼ftp伺服器就搭建完成了。
⑶ linux怎麼搭建ftp伺服器
在Linux中ftp伺服器的全名叫 vsftpd,我們需要利用相關命令來開啟安裝ftp伺服器,然後再在vsftpd.conf中進行相關配置,下面我來介紹在Ubuntu中vsftpd安裝與配置增加用戶的方法。
(1)、首先用命令檢查是否安裝了vsftpd
vsftpd -version
如果未安裝用一下命令安裝
sudo apt-get install vsftpd
安裝完成後,再次輸入vsftpd -version命令查看是否安裝成功
(2)、新建一個文件夾用於FTP的工作目錄
mkdir /home/ftp
(3)、新建FTP用戶並設置密碼以及工作目錄
ftpname為你為該ftp創建的用戶名
sudo useradd -d /home/ftp -s /bin/bash ftpname
為新建的用戶設置密碼
passwd ftpname
【注釋:用cat etc/passwd可以查看當前系統用戶】
(4)、修改vsftpd配置文件 [email protected]
用命令打開vsftpd.conf
vi vsftpd.conf
設置屬性值
anonymous_enable=NO #禁止匿名訪問
local_enable=YES
write_enable =YES
保存返回
(5)、啟動vsftpd服務
service vsftpd start
(6)、在資源管理器,或者瀏覽器中ftp伺服器
輸入賬號,密碼登錄即可
⑷ 怎樣在linux中搭建FTP伺服器
在創建FTP伺服器之有先命令: ps -ef |grep vsftpd
查一下系統有沒有安裝vsftpd這個伺服器,如果出現如下圖所示的界面說明沒有安裝。
然後再執行:yum install vsftpd -y
進行在線安裝vsftpd這個服務。
安裝成功以後需要把匿名登陸的這個功能關閉了。
使用命令: vim /etc/vsftpd/vsftpd.conf
然後在里成找到:
anonymous_enable=NO
然後再查看一下vsftpd這個服務有沒有啟動。
使用命令: chkconfig --list
如果你如下圖所示一樣沒有啟動。
沒有啟動使用啟動:chkconfig --level 35 vsftpd on
再接下來就是創建用戶名。
創建用戶名:useradd jingyan
再然後就是創建密碼。
命令:passwd jingyan
再輸入兩次密碼就可以了。
最後重啟一下服務:service vsftpd start
如果出現啟動失敗則可以使用:/etc/rc.d/init.d/vsftpd restart
成功鏈接FTP伺服器上。
⑸ 如何在linux上搭建ftp伺服器
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伺服器
vsftpd的服務軟體包位於RHED4的第1張光碟。包名是vsftpd-2.0.1-5.i386.rpm,插入光碟。
#mount -t iso9660 /dev/cdrom /media/cdrom //掛載光碟
mount: block device /dev/cdrom is write-protected, mounting read-only
#cd /media/cdrom/RedHat/RPMS
#ls vsftpd* //查找軟體包
vsftpd-2.0.1-5.i386.rpm
#rpm -ivh vsftpd-2.0.1-5.i386.rpm //安裝軟體包
Preparing... ########################################### [100%]
package vsftpd-2.0.1-5 is already installed
#rpm -ql vsftpd | grep /etc //查看etc目錄下的vsftpd相關文件
/etc/logrotate.d/vsftpd.log
/etc/pam.d/vsftpd
/etc/rc.d/init.d/vsftpd //vsftpd的啟動腳本文件
/etc/vsftpd
/etc/vsftpd.ftpusers
/etc/vsftpd.user_list
/etc/vsftpd/vsftpd.conf //配置文件
#grep -v '#' /etc/vsftpd/vsftpd.conf //查看ftp默認的配置
anonymous_enable=YES //允許匿名登錄
local_enable=YES //允許本地用戶登錄
write_enable=YES //對本地用戶有寫入的許可權
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES //ftp伺服器啟用ftp埠連接請求
xferlog_std_format=YES
pam_service_name=vsftpd //PAM認證服務的配置文件名稱,該文件保存在/etc/pam.d/目錄下
userlist_enable=YES //檢查user_list文件指定的用戶是不可以訪問vsftpd, /etc/vsftpd/user_list
listen=YES //Ftp伺服器處於獨立啟動模式
tcp_wrappers=YES
userlist_enable =YES //設置使用vsftp.user_list文件
userlist_deny =YES //設置使用vsftp.user_list文件用戶設置禁用帳號
#head -5 /etc/vsftpd/ftpusers //此文件保存不允許進行登錄的本地用戶
Users that are not allowed to login via ftp
root
bin //這些用戶不時普通的用戶,都是系統中具有較高許可權的帳號
daemon
adm
#grep -v '#' /etc/vsftpd/user_list //查看vsftpd/user_list文件中不可訪問ftp服務的用戶
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
#ls -l /etc/init.d/vsftpd* //查看vsftpd的啟動文件
-rwxr-xr-x 1 root root 1880 2004-10-04 /etc/init.d/vsftpd
#chkconfig --list vsftpd //查看vsftpd的運行級別
vsftpd 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:關閉 6:關閉
#chkconfig --level 35 vsftpd on //設置vsftpd的啟動運行級別3和5中自動啟動
#chkconfig --list vsftpd
vsftpd 0:關閉 1:關閉 2:關閉 3:啟用 4:關閉 5:啟用 6:關閉
#service vsftpd status //查看vsftpd的運行狀態
vsftpd 已停
#service vsftpd start //開啟vsftpd伺服器
為 vsftpd 啟動 vsftpd: [ 確定 ]
#service vsftpd restart //重新啟動vsftpd伺服器
關閉 vsftpd: [ 確定 ]
為 vsftpd 啟動 vsftpd: [ 確定 ]
#service vsftpd stop //停止vsftpd伺服器
關閉 vsftpd: [ 確定 ]
#service vsftpd start //啟動vsftpd伺服器
為 vsftpd 啟動 vsftpd: [ 確定 ]
#ftp 192.168.80.202 //測試vsftpd伺服器
Connected to 192.168.80.202.
220 (vsFTPd 2.0.1)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.80.202:root):ftp(或anonymous) //匿名用戶登錄可使用ftp或anonymous 也可用本地用戶
331 Please specify the password.
Password:[email protected] //使用郵箱作為密碼:[email protected]
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>ls //ls查看當前的目錄 測試成功
227 Entering Passive Mode (192,168,80,202,224,106)
150 Here comes the directory listing.
drwxr-xr-x 2 0 0 4096 Oct 04 2004 pub
226 Directory send OK.
ftp>bye //bye退出ftp伺服器
221 Goodbye.
linux下添加ftp用戶和創建ftp虛擬用戶
#useradd -g ftp -s /bin/nolongin test //創建test用戶,不讓用戶登錄系統 test屬於ftp組
# passwd test //給test用戶創建密碼
Changing password for user test.
New UNIX password:1234567 //輸入密碼:1234567
Retype new UNIX password:1234567 //確認輸入密碼:1234567
passwd: all authentication tokens updated successfully.
vsftpd虛擬用戶帳號的設置過程:
#vi login.txt //創建虛擬用戶口令文件,文件內容如下
mike
1234567
john
1234567
#db_load -T -t hash -f login.txt /etc/vsftpd/vsftpd_login.db //用db_load命令生成認證文件,-f虛擬用戶口令文件,即login.txt,生成的認證文件名vsftpd_login.db,該文件存放在/etc/vsftpd/目錄中
linux下FTP服務(vsftp)的搭建與配置祥解
如果報上圖的錯誤,則是系統未安裝下面的幾個RPM包,或者其中幾個RPM包,如下圖:
linux下FTP服務(vsftp)的搭建與配置祥解
#file /etc/vsftpd/vsftpd_login.db //查看vsftpd_login.db的文件類型
/etc/vsftpd/vsftpd_login.db: Berkeley DB (Hash, version 8, native byte-order)
#chmod 600 /etc/vsftpd/vsftpd_login.db //設置文件vsftpd_login.db許可權,對root用戶可讀可寫
#ls -l /etc/vsftpd/vsftpd_login.db
-rw------- 1 root root 12288 1月 21 22:24 /etc/vsftpd/vsftpd_login.db
#vi /etc/pam.d/vsftpd.vu //創建虛擬用戶認證所需的PAM文件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
# cat /etc/pam.d/vsftpd.vu //查看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 -d /home/ftptest ftpuser //建立虛擬的系統用戶帳號 帳號名 ftpuser 宿主錄/home/ftptest
# chmod 700 /home/ftptest/ //設置目錄許可權700
讓後設置vsftpd.conf配置文件,在修改配置文件前對其進行備份
#cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak //備份vsftpd.conf
#vi /etc/vsftpd/vsftpd.conf //在vsftpd.conf配置文件中添加虛擬用戶配置項 內容如下:
guest_enable=YES
guest_username=ftpuser
pam_service_name=vsftpd.vu
#service vsftpd restart //重新啟動vsftpdfuwuqi
#ftp 192.168.80.202 //登錄ftp伺服器
Connected to 192.168.80.202.
220 (vsFTPd 2.0.1)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.80.202:root): mike //用mike用戶進行登錄
331 Please specify the password.
Password:1234567 //密碼:1234567
230 Login successful. //230顯示登錄成功
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> bye //bye退出ftp伺服器
注意:報錯解讀:
linux下FTP服務(vsftp)的搭建與配置祥解
linux下FTP服務(vsftp)的搭建與配置祥解
上面兩個報錯的原因可以看出是配置文件錯誤,所以細心很重要;
linux下FTP服務(vsftp)的搭建與配置祥解
這個報錯到底是什麼原因呢?讓我們看看下圖的解答吧:
linux下FTP服務(vsftp)的搭建與配置祥解
二、對vsftpd虛擬用戶設置不同的許可權
#vi /etc/vsftpd/vsftpd.conf //編輯vsftpd.conf文件 添加如下內容:
user_config_dir=/etc/vsftpd_user_conf //設置用戶配置文件的保存目錄
#mkdir /etc/vsftpd_user_conf //創建虛擬用戶配置文件的保存目錄
#vi /etc/vsftpd_user_conf/mike //創建mike用戶配置文件,添加以下內容:
anon_world_readable_only=NO //mike表示用戶可以瀏覽Ftp目錄和下載文件
anon_upload_enable=YES //mike用戶可以上傳文件
anon_mkdir_write_enable=YES //mike用戶具有建立和刪除目錄的許可權
anon_other_write_enable=YES //mike用戶具有文件改名和刪除文件的許可權
⑺ 如何在linux搭建ftp伺服器
詳解Linux中搭建一個ftp伺服器。
ftp工作是會啟動兩個通道:
控制通道 , 數據通道
在ftp協議中,控制連接均是由客戶端發起的,而數據連接有兩種模式:port模式(主動模式)和pasv(被動模式)
PORT模式:
在客戶端需要接收數據時,ftp_client(大於1024的隨機埠)-PORT命令->ftp_server(21) 發送PORT命令,這個PORT命令包含了客戶端是用什麼埠來接收數據(大於1024的隨機埠),在傳送數據時,ftp_server將通過自己的TCP 20 埠和PORT中包含的埠建立新的連接來傳送數據。
PASV模式:
傳送數據時,ftp_client--PASV命令-->ftp_server(21) 發送PASV命令時,ftp_server自動打開一個1024--5000之間的隨機埠並且通知ftp_client在這個埠上傳送數據,然後客戶端向指定的埠發出請求連接,建立一條數據鏈路進行數據傳輸。
安裝ftp
#rpm -qa vsftpd 查看是否已經安裝
#yum install -y vsftpd
#rpm -ql vsftpd
/etc/logrotate.d/vsftpd. vsftpd的日誌文件
/etc/pam.d/vsftpd PAM認證文件
/etc/rc.d/init.d/vsftpd 啟動腳本
/etc/vsftpd vsftpd的配置文件存放的目錄
/etc/vsftpd/ftpusers 禁止使用vsftpd的用戶列表文件
/etc/vsftpd/user_list 禁止或允許使用vsftpd的用戶列表文件
/etc/vsftpd/vsftpd.conf 主配置文件
/etc/vsftpd/vsftpd_conf_migrate.sh vsftpd操作的一些變數和設置
/usr/sbin/vsftpd vsftpd的主程序
其他一些說明文檔和手冊文件略!
/var/ftp 用戶主目錄
/var/ftp/pub 用戶的目錄
#service vsftpd start
#chkconfig --level vsftpd
#chkconfig --level 2345 vsftpd on
2 用戶的登錄名:ftp(anonymous) 密碼空 ,登錄的目錄為/var/ftp
用用戶登錄的時候默認是只有的許可權,沒有上傳,創建和刪除的許可權:
#vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES 上傳
anon_mkdir_write_enable=YES 創建
anon_other_write_enable=YES 刪除
#service vsftpd restart
為了安全應該禁止用戶的登錄:
#vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
#anon_upload_enable=YES 上傳
#anon_mkdir_write_enable=YES 創建
#anon_other_write_enable=YES 刪除
#service vsftpd restart
3 創建一個直接登錄系統用戶來登錄ftp:
#useradd -s /sbin/nologin viong
#passwd viong
⑻ 怎麼用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調用說明啟動成功。
⑼ 如何在Linux上搭建FTP伺服器
Linux上搭建FTP伺服器,可以用雲幫手啊。
1.搭建資料庫、ftp功能;
2.有遠程登錄桌面功能;
3.文件傳輸功能;
雲幫手不僅僅可以遠程登錄,還有很多管理雲主機的功能。
1.像主機系統漏洞檢測修復;
2.實時查看主機資源使用狀態監控啊;
3.批量集中管理主機等等。
⑽ 如何在linux下搭建ftp伺服器
在LINXU平台上使用的FTP軟體有Wu-ftpd、Proftpd和vsftpd等。Wu-ftpd的歷史悠久,是最流行的FTP伺服器程序,穩定、出色,但發布較早,安全不及Proftpd及vsftpd。Proftpd在Wu-ftpd之後開發,安全性及穩定性有所提高。而vsftpd則是在Proftpd之後開發的,意為Very Sucure,吸取了Wu-ftpd和Proftpd的優點,安全性、速度、穩定性都有很大提高。
RHEL4(AS)中vsftpd的RPM軟體包在第1張光碟中,名為vsftpd-2.0.1-5.i386.rpm。默認情況下沒有安裝。Vsftpd的主配置文件是/etc/vsftpd.conf。未修改的主配置文件去掉注釋後如下(「;」後為解釋):
anonymous_enable=YES ;是否允許匿名訪問
local_enable=YES ;是否允許本地用戶登錄
write_enable=YES ;是否允許本地用戶寫入
local_umask=022 ;生向掩碼(文件生成掩碼),跟許可權有關,我記不住了,有興趣的朋友可以去查查,知道的朋友也請告訴我一下
dirmessage_enable=YES ;切換到FTP中的某目錄時,是否顯示該目錄下的隱含文件「.message」
xferlog_enable=YES ;是否啟用啟用上傳和下載日誌
connect_from_port_20=YES ;是否啟用FTP數據埠的連接請求
xferlog_std_format=YES ;是否讓FTP使用ftpd xferlog日誌格式
pam_service_name=vsftpd ;設置PAM認證服務的配置文件,位於/etc/pam.d目錄下
userlist_enable=YES ;需與userlist_file配合使用,稍後介紹
listen=YES ;是否處於獨立啟動模式
tcp_wrappers=YES ;為YES時,以tcp_wrappers作為主機訪問控制方式
(去掉後,vsftpd的配置文件就這么一點^_^。)
/etc/vsftpd.ftpusers保存著不允許進行FTP登錄的用戶帳戶,通常是許可權很高的用戶,以提高FTP的安全。
至於/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
…………(後略)
前面說的userlist_enalbe就跟這有關(重點是第二、三行)
另外,/vsr/ftp是匿名用戶的宿主目錄.
配置vsftpd的虛擬用戶:
1. 建立虛擬用戶口令庫文件(奇數行為用戶名,偶數行為密碼):
[[email protected]]cat vsftpd
abc
abc12321cba
efg
vsftpd.conf
2. 生成認證文件(db_load生成認證文件,「-f」用於指明虛擬用戶的口令庫文件,即:vsftpd.操作中,口令庫文件名可隨便取.「-t hash」指加密方式)
db_load -T -t hash -f vsftpd /etc/vsftpd/vsftpd_login.db
3.設置許可權,以提高安全:
chmod 600 /etc/vsftpd/vsftpd_login.db
4. 建立虛擬用戶的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
5.建立虛擬用戶的目錄,並設置相應許可權:
useradd -d /home/vsftpd virtual
chmod 700 /home/vsftpd/
6. 編輯vsftpd的配置文件:
vi /etc/vsftpd/vsftpd.conf
guest_enable=yes
guest_username=virtual
pam_service_name=vsftpd.vu
7. 對虛擬用戶設置不同許可權:
vi /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd_user_conf ;設置主配置文件
(:wq #保存退出)
mkdri /etc/vsftpd_user_conf
vi /etc/vsftpd_user_conf/abc ;為虛擬用戶配置許可權
anon_world_readable_only=no ;用戶可以瀏覽目錄並下載文件
anon_upload_enable=yes ;用戶可以上傳文件
anon_mkdir_write_enable=yes ;用戶可以添加和刪除目錄
anon_other_write_enable=yes ;用戶可以進行其它操作,如改名、刪除文件等。
(:wq)
service vsftpd restart
如果只想讓用戶下載的話,則配置為:
anon_world_readable_only=no
好了,自個兒看效果吧!!!
常見問題:
1.無法匿名訪問?
可能是vsftpd.conf中的anonyoums_enable出的錯,或者是你根本就沒連接到伺服器,也有可能是伺服器的iptables出的問題(過濾掉了),這種情況下一般與selinux無關。還有就是服務未運行。
2.創建的虛擬用戶無法訪問vsftpd?
原因或許是在創建虛擬用戶的時候出的錯,如果無法使用虛擬用戶訪問vsftpd的時候,建議先檢查在創建虛擬用戶時,打錯什麼字沒有,如果還是沒有檢查出什麼問題來的話,建議你直接推倒重做。還是一點差點忘記說了,就是在創建虛擬用戶的時候,盡量將虛擬用戶的密碼設長一點、復雜一點,我在測試的時候,就是因為密碼太短而幾次沒有成功。
3.在cmd下用虛擬用戶登錄vsftpd時,出現「200 PORT command successful. Consider using PASV.」的字樣是怎麼回事啊?
你所訪問的電腦上的防火牆在做怪!!!我就上過這個當!!!
4.其它問題?
一般情況下,vsftpd出現問題大多數都是因為配置文件出錯的,如果想要測試的話,建議在命令行了進行測試,當vsftpd出現問題時,它會在訪問端的界面上顯示原因。另外不成功的原因是因為伺服器上的防火牆沒有配置好。