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伺服器就搭建完成了。
2. 如何在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
3. linux怎麼搭建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調用說明啟動成功。
4. 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伺服器
輸入賬號,密碼登錄即可
5. linux怎麼搭建ftp伺服器
vsftpd是一款在Linux發行版中最受推崇的FTP伺服器程序。特點是小巧輕快,安全易用。並且是一個完全免費開放源碼的ftp軟體方法/步驟1、用在線安裝 yum install vsftpd pam* db4*-y使用命令將vsftp配置為系統服務 chkconfig --level 35 vsftpd on2、配置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_user6、建立虛擬用戶 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.db8、設置資料庫文件訪問許可權 chmod 600 /etc/vsftpd/vconf/vir_user chmod 600 /etc/vsftpd/vconf/vir_user.db9、修改/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/userlocal11、根據第六步建立的用戶名建立一個文件 例如第六步建立的帳號是virtualuser,則新建一個virtualuser文件 touch /etc/vsftpd/conf/userlocal/virtualuser12、編輯該用戶訪問的文件路徑 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調用說明啟動成功。如有不清楚的可以再繼續看看網路經驗。
6. linux怎麼搭建ftp伺服器
安裝vsFTP軟體 啟動服務之後 useradd -d /houme/裂槐運FTPTEST -m FTPTEST passwd FTPTEST 輸入密碼 這樣就有肆梁一個FTP用戶可以用FTP來連接你的FTP伺服器 當然記得設明散置分配的目錄的許可權和組許可權
7. linux怎麼搭建ftp伺服器
一.安裝vsftp 服務
yum install -y vsftpd
創建用戶,設置密碼(User用於回傳日誌)
useradd -d /data/web.log user
echo "ftpuser" |passwd --stdin user
二.編輯vsftpd配置文件,限定用戶登錄到自己家目錄
/etc/vsftpd/vsftpd.conf
anonymous_enable=NO #禁制匿名用戶訪問
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
創建chroot_list空白文件
三.修改安全上下文
getsebool -a |grep ftp
setsebool -P ftp_home_dir on
service vsftpd restart #重啟服務
四.測試
8. 如何在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
兩項前面的#號,就可以完成匿名用戶的配置,此時匿名用戶既可以登錄上傳、下載文件。記得修改配置文件後需要重啟服務。
9. linux怎麼搭建ftp伺服器
FTP 是文件傳輸協議(File Transfer Protocol)的縮寫。顧名思義,FTP用於計算機之間通過網路進行文件傳輸。你可以通過FTP在計算機賬戶間進行文件傳輸,也可以在賬戶和桌面計算機之間傳輸文件,或者訪問在線軟體歸檔。但是,需要注意的是多數的FTP站點的使用率非常高,可能需要多次重連才能連接上。 今天來說一下在RHEL5下使用VSftpd來搭建ftp伺服器,在搭建之前首先要考慮自己的工作環境,我搭建ftp干什麼,公司的具體要求是什麼,然後再根據公司的需求來具體實施。下面是搭建的具體實驗步驟: 一、首先確定系統中已經安裝了VSftpd軟體包,可以使用如下命令來查看並安裝: liwei@linux# rpm -qagrep vsftpd (如果有的話執行第二條就行了,若沒安裝,可以使用如下命令來安裝) liwei@linux# mount /dev/cdrom /media //掛載光碟到系統中 liwei@linux# rpm -vih /media/Server/vsftpd-版本號 //安裝VSftpd 二、安裝好VSftpd軟體包後,然後就是給伺服器配置一個靜態IP地址,當然動態也可以,但一般伺服器最好使用靜態IP。配置IP地址的方法如下,我以配置192.168.0.1地址為例: liwei@linux# vi /etc/sysconfig/network-scritps/ifcfg-eth0 在打開的配置文件中修改: 復制代碼代碼如下: DEVICE=eth0 BOOTPROTO=static HAWADDR=00:0C:29:A2:8B:B8 ONBOOT=yes IPADDR=192.168.0.1 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 三、配置好IP地址後,然後就可以根據你自己的要求來修改vsftpd的配置文件來達到你的目標了,vsftpd的主配置文件為/etc/vsftpd/vsftpd.conf。下面用幾個例子來說明一下vsftpd的各個配置選項的作用。 1.匿名用戶配置: 在vsftpd.conf配置文件中,默認是允許匿名用戶登錄FTP伺服器的,但不允許上傳文件、不允許在伺服器上創建目錄,我們可以修改以下一些配置項來達到自己的要求: 復制代碼代碼如下: anonymous_enable=YES //接受匿名用戶 no_anon_password=YES //匿名用戶登錄時不詢問口令 anon_root=目錄路徑 //匿名用戶登錄後所在的位置,可以根據自己的實際需求來修改 write_enable=YES //可以上傳(全局控制) file_open_mode=0666 //上傳文件的許可權,配合umask使用 anon_upload_enable=NO //匿名用戶可以上傳 anon_mkdir_write_enable=YES //匿名用戶可以建立目錄 anon_other_write_enable=YES //匿名用戶可以重名名、刪除等許可權 anon_world_readable_only=YES //如果設為YES,匿名用戶登入者會被允許下載可閱讀的文檔 chown_uploads=YES //所有匿名上傳的文件的所屬用戶將會被更改為chown_username chown_username=user //匿名上傳文件所屬用戶名 除了以上這些匿名用戶的選項外我們還可以添加一些設置FTP伺服器的公共選項,通過這些選項可以為FTP伺服器設置一些不同的歡迎信息。 復制代碼代碼如下: ftpd_banner=Welcom to my FTP Server!!! //登錄時顯示的歡迎信息 dirmessage_enable=YES //允許為目錄配置顯示信息,顯示每個目錄下面message_file文件的內容 setproctitle_enable=YES //顯示會話狀態信息 下面來舉個例子來說明一下匿名用戶的應用: 為了公司的員工工作方便,公司決定搭建一台FTP伺服器,要達到的功能如下: 1.允許公司的任何員工把自己的一些文檔傳上FTP伺服器上保存起來以便下次使用, 2.允許員工自己創建目錄 3.員工登錄成功後顯示歡迎信息 如果要達到以上的要求只需要在vsftpd.conf配置文件中修改以下選項就OK了,如果默認沒有一些選項,可以自己手動添加: 復制代碼代碼如下: anonymous_enable=YES write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES ftpd_banner=Welcom to my FTP Server!!! 注意:如果只設置了anon_upload_enable=YES,但選項write_enabl未設置(或者設置成了NO),則匿名用戶仍然不能上傳文件。還有別忘記了修改FTP所處的文件夾的許可權。 修改完以上配置文件後,使用命令service vsftpd restart重啟一下vsftpd服務然後測試就OK了,其實上面這個例子很不安全,我只是舉個例子,如果實際中使用,可以使用下面講到的另兩種方法都可以。 2.本地用戶配置: 復制代碼代碼如下: local_enable=YES //啟用本地用戶 local_umask=022 //本地用戶上傳的文件的許可權,可以參考linux許可權部分來了解 local_root=目錄路徑 //本地用戶登錄FTP伺服器後所處的目錄 chroot_local_user=YES //限制本地用戶的根目錄為自己的主目錄 chroot_list_enable=YES //如果啟動這項功能,則所有列在chroot_list_file之中的使用者都不能更改根目錄 chroot_list_file=限制的用戶所處的文件路徑 在FTP伺服器上通常會有很多的本地用戶,那麼有時候我們希望一些用戶可以登錄FTP伺服器,而有的用戶我們不希望他們登錄,遇到這種情況該怎麼解決呢?可以使用如下選項來實現些功能: 復制代碼代碼如下: userlist_enable=YES //啟用userlist功能模塊 userlist_deny=YES //拒絕userlist文件中列出的用戶登錄FTP伺服器 userlist_file=userlist文件的的路徑 以上選項的意思就是我們假如不想讓一部分人登錄FTP伺服器,那麼我們可以寫一個文件把這些用戶加入到這個文件中去,然後把上面這個功能打開然後在userlist_file選項那指向這個文件的所在地,這樣這個文件中的用戶就不能登錄FTP伺服器了。相反假如我們userlist_deny設置成NO的話,意思就是userlist_file指向的那個文件里的用戶可以登錄FTP伺服器,其它用戶則不能登錄FTP伺服器。 本地用戶的應用比較簡單,只要系統中可以登錄的用戶要登錄FTP伺服器,直接輸入系統的用戶名和密碼就可以登錄了,默認登錄後是在自己的家目錄里,也就是/home/用戶文件夾里。許可權的控制就是修改這個目錄的許可權來控制就OK了。如果想控制某些用戶禁止登錄,則可以按照上面的userlist功能來進行限制就行了。 除了以上匿名用戶和本地用戶外的一些參數外還有網路和連接參數及下面會提到的日誌功能配置。 四、網路和連接參數配置, 下面是一些常用的網路和連接參數: 復制代碼代碼如下: max_clients=1000 //可接受的最大連接數,可以根據自己的實際情況來修改 max_per_ip=5 //每個IP地址的最大連接數,可以根據自己的實際情況來修改 anon_max_rate=51200 //匿名用戶的帶寬(b/s) local_max_rate=5120000 //本地用戶的帶寬(b/s) idle_session_timeout=600 //空閑連接超時時間 data_connection_timeout=120 //數據傳輸超時時間 ACCEPT_TIMEOUT=60 //PAVS請求超時時間 connect_timeout=60 //PORT模式連接超時時間 connect_from_port_20=YES //使用標準的20埠來連接FTP listen_address=地址或網段 //綁定到某個IP或網段,其他IP不能訪問該FTP listen_port=2121 //綁定到某個埠 ftp_data_port=2020 //數據傳輸埠 pasv_max_port=0 //PASV連接模式時可以使用port范圍的上界,0表示任意。 pasv_min_port=0 //PASV連接模式時可以使用port范圍的下界,0表示任意。 以上各個選項後都有說明,有需要的可以自己根據自己的情況來添加,這里就不再詳述了。其中PORT模式是FTP工作模式中的主動模式,PASV模式是FTP工作模式中的被動模式。 五、日誌功能配置 vsftpd可啟用日誌功能,這樣,文件的上傳與下載信息將被完整地記錄在xferlog_file選項所設置的日誌文件中,設置日誌功能的選項如下: 復制代碼代碼如下: xferlog_enable=YES //開啟日誌功能 xferlog_file=文件路徑 //日誌文件的存放位置 xferlog_std_format=YES //使用標准格式記錄日誌 vsftpd的專用日誌模式配置選項: 復制代碼代碼如下: al_log_enable=YES //採用vsftpd自己專用的日誌記錄方式 log_ftp_enable=YES //記錄所有的FTP命令日誌 vsftpd_log_file=文件路徑 //指定vsftpd日誌文件的位置 當以上兩種日誌功能都設置為NO時,還可以使用系統日誌來記錄FTP的日誌,設置選項如下: syslog_enable=YES //啟用後,默認的日誌寫入到/var/log/messages里 雖然可以使用這種方式來記錄FTP日誌,但是推薦使用最上面的兩種,因為這樣查看日誌時候比較清楚,容易分析日誌。 六、其他常用選項設置 復制代碼代碼如下: ascii_upload_enable=YES //用ASCII模式上傳, ascii_download_enable=YES //用ASCII模式下載 dirmessage_enable=YES //設置每個子目錄的歡迎信息。 banner_file=文件路徑 //設置歡迎信息的文件 ls_recurse_enable=YES //允許用戶使用ls -R命令 pam_service_name=vsftpd //定義PAM使用的名稱,默認為vsftpd guest_enable=YES //將所有的非匿名用戶都視為guest,即啟用虛擬用戶 guest_username=virtual //定義guest的使用者名稱
10. 如何在Linux操作系統下搭建ipv6ftp伺服器
Linux下可以配置vsftp服務來實現FTP的部署明友。
配置支持ipv6地址的服務只要啟用listen_ipv6=yes將ipv6的監聽設置開啟即可。
當然具體配置沒有那麼簡單,比如設置用戶許可權拉,部署過程中出現錯誤和排錯納談拉。最好網路一下配置說激茄槐明。