ftp(file transfer protocol)檔案傳輸協議,用於在internet上控制檔案的雙向傳輸。ftp主要作用是讓使用者連線乙個遠端計算機(這些計算機上執行著ftp伺服器程式)檢視遠端計算機有哪些檔案,然後把檔案從遠端計算機上拷貝到本地計算機,或把本地檔案傳送到遠端計算機。1,安裝vsftp工具及建立使用者該服務在小公司用的比較多,由於ftp服務的安全性較差,所以大公司不使用該服務。
[root@dl-001 src]# yum install vsftpd
[root@dl-001 src]# useradd -s /sbin/nologin virftp
說明: vsftpd可以使用系統級別的使用者進行登入,但是這樣做不安全,所以需要使用vsftpd建立乙個虛擬使用者。在此建立乙個系統普通使用者的作用是使vsftpd的虛擬使用者來進行對映,然後完成資料的傳輸。
2,編輯虛擬使用者密碼檔案,並更改檔案許可權
[root@dl-001 src]# vim /etc/vsftpd/vsftpd_login
test1
dinglet1
tese2
dinglet2
[root@dl-001 src]# chmod 600 /etc/vsftpd/vsftpd_login
說明: 該檔案中內容奇數行為使用者名稱,偶數行為使用者密碼。
3,檔案轉換
將該密碼檔案轉換成計算機能識別的二進位制檔案。
[root@dl-001 src]# db_load -t -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
[root@dl-001 src]# ls -l /etc/vsftpd/
總用量 32
-rw-------. 1 root root 125
8月 314:
10 ftpusers
-rw-------. 1 root root 361
8月 314:
10 user_list
-rw-------. 1 root root 5030
8月 314:
10 vsftpd.conf
-rwxr--r--. 1 root root 338
8月 314:
10 vsftpd_conf_migrate.sh
-rw-------. 1 root root 30
1月 3 09:
45 vsftpd_login
-rw-r--r--. 1 root root 12288
1月 3 09:
47 vsftpd_login.db //檢視生成密碼檔案成功
4,建立虛擬使用者配置檔案[root@dl-001 src]# mkdir /etc/vsftpd/vsftpd_user_conf
[root@dl-001 src]# cd !$
cd /etc/vsftpd/vsftpd_user_conf
[root@dl-001 vsftpd_user_conf]# vim test1 //建立test1虛擬使用者配置檔案
local_root=/home/virftp/test1
anonymous_enable=no
write_enable=yes
local_umask=022
anon_upload_enable=no
anon_mkdir_write_enable=no
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
[root@dl-001 vsftpd_user_conf]# ls
test1
說明:保持虛擬使用者配置檔案和虛擬使用者名稱一致。
5,建立虛擬使用者家目錄
[root@dl-001 vsftpd_user_conf]# mkdir /home/virftp/test1
[root@dl-001 vsftpd_user_conf]# touch /home/virftp/test1/dl.txt
[root@dl-001 vsftpd_user_conf]# chown -r virftp:virftp /home/virftp
6,虛擬使用者密碼匹配[root@dl-001 vsftpd_user_conf]# vim /etc/pam.d/vsftpd
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
[root@dl-001 vsftpd_user_conf]# ls /lib64/security/pam_userdb.so //檢視該檔案是否存在
/lib64/security/pam_userdb.so
說明: 在該檔案中新增這兩行內容,用於指定使用者密碼檔案位置。
注意: 在centos6中「/lib64/security/pam_userdb.so」該檔案區分版本(32位、64位)。
7,編輯vsftpd主配置檔案
[root@dl-001 vsftpd_user_conf]# vim /etc/vsftpd/vsftpd.conf //編輯vsftpd的主配置檔案
vim /etc/vsftpd/vsftpd.conf
將anonymous_enable=yes 改為 anonymous_enable=no
//匿名使用者
將#anon_upload_enable=yes 改為 anon_upload_enable=no
將#anon_mkdir_write_enable=yes 改為 anon_mkdir_write_enable=no //是否允許建立目錄
再增加如下內容
chroot_local_user=yes
guest_enable=yes
guest_username=virftp
virtual_use_local_privs=yes
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=yes
8,啟動服務並檢視監聽的埠[root@dl-001 vsftpd_user_conf]# systemctl start vsftpd
[root@dl-001 vsftpd_user_conf]# ps aux|grep vsftp
root 2514
0.00.0
53216
572 ? ss10:
140:00 /usr/sbin/vsftpd /etc/vsftd/vsftpd.conf
root 2516
0.00.0
112680
976 pts/0
r+ 10:14
0:00 grep --color=auto vsftp
[root@dl-001 vsftpd_user_conf]# netstat -lntp
active
internet connections (only servers)
proto
recv-q
send-q
local
address
foreign
address
state
pid/program name
tcp 0
00.0.0.0
:111
0.0.0.0
:*listen
1/systemd
tcp 0
00.0.0.0:22
0.0.0.0
:*listen
1463/sshd
tcp 0
0127.0.0.1:25
0.0.0.0
:*listen
2211/master
tcp6 00:
::3306::
:*listen
1986/mysqld
tcp6 00:
::111:::*
listen
1/systemd
tcp6 00:
::21:
::*listen
2514/vsftpd
tcp6 00:
::22:
::*listen
1463/sshd
tcp6 00:
:1:25
:::*listen
2211/master
說明:ftp服務監聽21埠;sshd監聽22埠;telnet監聽23埠。 使用vsftpd搭建FTP服務
配置ftp服務 ftp工作在tcp ip模型的應用層,基於的傳輸協議是tcp,ftp客戶端和伺服器之間的連線是可靠的,面向連線的,為資料的傳輸提供了可靠的保證。使用yum工具安裝vsftpd包 yum install y epel release yum install y vsftpd db4 u...
linux使用vsftpd開啟ftp服務
1.安裝vsftpd伺服器 vsftpd是目前linux最好的ftp伺服器工具之一,其中的vs就是 very secure 很安全 的縮寫,可見它的最大優點就是安全,除此之外,它還具有體積小,可定製強,效率高的優點。如果選擇完全安裝red hat linux 9.0,則系統會預設安裝vsftpd伺服...
ubuntu下使用vsftpd搭建ftp伺服器
用什麼開頭呢?就用這個吧。1.安裝vsftpd sudo apt get install vsftpd 2.說明要求,伺服器需要供三種使用者訪問,,本地使用者和虛擬使用者,就是anonymous,密碼任意的使用者,本地使用者就是linux系統中真實存在的使用者,虛擬使用者是為了使客戶能訪問ftp伺服...