溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

RHEL搭建FTP服務(wù)器的詳細步驟

發(fā)布時間:2021-08-13 09:42:17 來源:億速云 閱讀:506 作者:chen 欄目:系統(tǒng)運維

這篇文章主要介紹“RHEL搭建FTP服務(wù)器的詳細步驟”,在日常操作中,相信很多人在RHEL搭建FTP服務(wù)器的詳細步驟問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”RHEL搭建FTP服務(wù)器的詳細步驟”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

1、RHEL搭建FTP中首先修改配置文件使主機獲得***Ip地址
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=172.16.16.111
NETMASK=255.255.0.0
GATEWAY=172.16.16.1
ONBOOT=yes
TYPE=Ethernet

重啟配置文件使之生效
# /etc/init.d/network restart
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Setting network parameters: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]

需要關(guān)掉iptables系統(tǒng)防火墻,使用命令:
# service iptables stop
把安全級別調(diào)低
# vi /etc/selinux/config
把其中的:SELINUXTYPE=targeted改為SELINUXTYPE=disabled
在系統(tǒng)中vsftpd并沒被默認安裝,需要使用rpm命令安裝一下
它在RHEL4的第1張光盤中,包文件的名稱是vsftpd-2.0.1-5.i386.rpm

首先需要掛載光盤
# mount /dev/cdrom /media/cdrom
# cd /media/cdrom/RedHat/RPMS
# ls -l vsftpd*
-rw-r--r-- 25 root root 122195 Jan 6 2005 vsftpd-2.0.1-5.i386.rpm
掛載上去后,把它安裝上去
# rpm -ivh vsftpd-2.0.1-5.i386.rpm
warning: vsftpd-2.0.1-5.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]

我們看一下vsftpd.conf的配置文件
# grep -v '#' /etc/vsftpd/vsftpd.conf(去除注釋行后的配置文件)
anonymous_enable=YES  //anonymous_enable設(shè)置為yes時,ftp服務(wù)器允許匿名登錄,即用戶可使用用戶名ftp或anonymous進行ftp登錄,登錄口令為用戶E-mail地址。
local_enable=YES      //local_enable設(shè)置為yes時允許本地用戶登錄,本地用戶指lunux系統(tǒng)中的用戶賬號。
write_enable=YES      //write_enable設(shè)置為yes時,ftp服務(wù)器開放對本地用戶的寫權(quán)限
local_umask=022      //local_umask設(shè)置項設(shè)置本地用戶的文件生成掩碼,配置文件中的設(shè)置為022。
dirmessage_enable=YES   //dirmessage_enable設(shè)置為yes時,當切換到ftp服務(wù)器中的某個目錄時,將顯示該目錄下的".message"隱含文件的內(nèi)容.    
xferlog_enable=YES     //xferlog_enable設(shè)置為yes時,ftp服務(wù)器將啟用上傳和下載日志。
connect_from_port_20=YES  //connect_from_port_20設(shè)置為yes時,ftp服務(wù)器將啟用ftp數(shù)據(jù)端口的連接請求。
xferlog_std_format=YES    //xferlog_std_format設(shè)置為yes時,ftp服務(wù)器將使用標準的ftpd xferlog日志格式。
pam_service_name=vsftpd   //pam_service_name設(shè)置PAM認證服務(wù)的配置文件名稱,該文件保存在"/etc/pam.d/"目錄下。
userlist_enable=YES     //userlist_enable設(shè)置為yes時,ftp服務(wù)器將檢查userlist_file設(shè)置文件中指定的用戶是否可以訪問vsftpd服務(wù)器;userlist_file配置項默認值是"/etc/vsftpd.usr_list"文件。
listen=YES         //listen設(shè)置為yes時,ftp服務(wù)器將處于獨立啟動模式。
tcp_wrappers=YES  //tcp_wrappers設(shè)置為yes時,ftp服務(wù)器將使用tcp_wrappes作為主機訪問控制方式。tcp_wrappers可以實現(xiàn)linux系統(tǒng)中網(wǎng)絡(luò)服務(wù)的基于主機地址的訪問控制,在"/etc"目錄中的hosts.allow和host.deny兩個文件用于設(shè)置tcp_wrappers的訪問控制,hosts.allow文件設(shè)置允許訪問記錄,host.deny文件設(shè)置拒絕訪問記錄。

啟動vsftpd服務(wù)器
# service vsftpd start
Starting vsftpd for vsftpd: [ OK ]

關(guān)閉可以使用:
service vsftpd stop
Shutting down vsftpd: [ OK ]

查看服務(wù)器的運行狀態(tài)使用:
# service vsftpd status
vsftpd is stopped

添加兩個本地用戶,使用本地用戶登錄ftp
# useradd aa
# passwd aa
# useradd bb
# passwd bb

并改變目錄的屬主和屬組
# chown aa.aa /home/aa
# chown bb.bb /home/bb
# ls -l /home
total 24
drwx------ 4 aa   aa   4096 May 26 12:15 aa
drwx------ 4 bb   bb   4096 May 26 12:16 bb

設(shè)置宿主目錄權(quán)限
# chmod 770 /home/aa
# chmod 770 /home/bb
# ls -l /home
total 24
drwxrwx--- 4 aa   aa   4096 May 26 12:15 aa
drwxrwx--- 4 bb   bb   4096 May 26 12:16 bb

這時可以登錄ftp
1、使用匿名用戶登錄
# ftp 172.16.16.121
Connected to 172.16.16.121.
220 (vsFTPd2.0.1)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (172.16.16.121:root): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (172,16,16,121,208,47)
150 Here comes the directory listing.
drwxr-xr-x    2 0        0            4096 Oct 04 2004 pub
226 Directory send OK.

其中匿名用戶登錄使用ftp或anonymous作為ftp登錄的用戶名,在vsftpd的默認設(shè)置時輸入任何字符串或直接回車都可以登錄,匿名用戶登錄后將以ftp服務(wù)器系統(tǒng)中的"/var/ftp"目錄作為匿名用戶的ftp根目錄。

2、使用本地用戶登錄
# ftp 172.16.16.121
Connected to 172.16.16.121.
220 (vsFTPd2.0.1)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (172.16.16.121:root): aa
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (172,16,16,121,223,86)
150 Here comes the directory listing.
-rw-r--r--    1 0        0              19 May 26 03:48 11.txt
226 Directory send OK.
使用put命令可以將ftp客戶機中的文件上傳到ftp服務(wù)器中。
ftp> put 22.txt
local: 22.txt remote: 22.txt
227 Entering Passive Mode (172,16,16,121,86,19)
150 Ok to send data.
226 File receive OK.
30 bytes sent in 0.00086 seconds (34 Kbytes/s)
使用get命令可以將ftp服務(wù)器中的文件下載到ftp客戶機中。
ftp> get 22.txt
local: 22.txt remote: 22.txt
227 Entering Passive Mode (172,16,16,121,143,82)
150 Opening BINARY mode data connection for 22.txt (30 bytes).
226 File send OK.
30 bytes received in 0.0005 seconds (58 Kbytes/s)

不過使用本地ftp用戶賬號存在一定的安全性,首先它是系統(tǒng)賬號,一旦ftp服務(wù)器出現(xiàn)安全漏洞會對整個ftp服務(wù)器所在的linux主機造成威脅;另外就是本地用戶賬號可以離開用戶宿主目錄,轉(zhuǎn)換到系統(tǒng)中的其他目錄中,這對系統(tǒng)的安全有著一定的威脅??墒窃O(shè)置ftp本地用戶禁錮在宿主目錄中,這樣可以防止它切換到其他的目錄中。
在vsftpd服務(wù)器的配置文件vsftpd.conf中添加配置項chroot_local_user設(shè)置為YES,vsftpd服務(wù)器將會把本地用戶禁錮在用戶宿主目錄中。

chroot_local_user=YES,配置完后記得要重啟服務(wù),這樣ftp本地用戶就只可以訪問自己的目錄了。

配置ftp服務(wù)器的虛擬目錄,在vsftpd服務(wù)器中支持匿名用戶、本地用戶和虛擬用戶3類用戶賬號
在前面認識了兩種,其中匿名用戶是名為anonymous或ftp的ftp用戶,匿名ftp用戶登錄后將ftp服務(wù)器中的"/var/ftp"作為ftp根目錄。匿名用戶通常用于提供公共文件的下載。

本地用戶賬號時ftp服務(wù)器中的系統(tǒng)用戶賬號,使用ftp本地用戶賬號登錄ftp服務(wù)器后,登錄目錄為本地用戶的宿主目錄。本地ftp用戶賬號通常和web服務(wù)器一起提供虛擬主機服務(wù),作為網(wǎng)頁虛擬主機更新網(wǎng)頁的途徑。

虛擬用戶賬號時為了保證ftp服務(wù)器的安全性,由vsftpd服務(wù)器提供的非系統(tǒng)用戶賬號。虛擬用戶ftp登錄后將把指定的目錄作為ftp根目錄。虛擬用戶與本地用戶具有類似的功能。

2、RHEL搭建FTP中虛擬用戶賬號的設(shè)置過程
1、建立虛擬用戶口令庫文件.
建立虛擬用戶的口令庫,文件中奇數(shù)行設(shè)置虛擬用戶的用戶名,偶數(shù)行設(shè)置用戶的口令.
使用文本編輯器建立名為logins.txt的用戶口令庫文件
# vi logins.txt
ee
123
rr
456

2、生成vsftpd的認證文件.
首先我們需要安裝一下db4-utils-4.2.52-7.1.i386.rpm,在第3張光盤中.
# cd /media/cdrom/RedHat/RPMS/
# rpm -ivh db4-utils-4.2.52-7.1.i386.rpm
warning: db4-utils-4.2.52-7.1.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...########################################### [100%]
package db4-utils-4.2.52-7.1 is already installed
然后使用db_load命令生成認證文件,"-f"命令選項設(shè)置的值時虛擬用戶的口令庫文件,即:logins.txt.命令的參數(shù)設(shè)置為需要生成的認證文件名vsftpd_login.db,該文件放置在目錄"/etc/vsftpd"中.  
# db_load -T -t hash -f logins.txt /etc/vsftpd/vsftpd_login.db
設(shè)置vsftpd_login.db文件的權(quán)限只對root用戶可讀可寫.即600.
# chmod 600 /etc/vsftpd/vsftpd_login.db
[root@benet01 ~]# ls -l /etc/vsftpd/vsftpd_login.db
-rw------- 1 root root 12288 May 26 12:54 /etc/vsftpd/vsftpd_login.db

3、建立虛擬用戶所需的PAM配置文件.
在"/etc/pam.d"目錄中建立vsftpd虛擬用戶身份認證所需的PAM配置文件,名稱為vsftpd.vu.
# vi /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
# 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

4、建立虛擬用戶及所要訪問的目錄并設(shè)置相應(yīng)權(quán)限.
建立vsftpd虛擬用戶所需的系統(tǒng)用戶賬號,賬號為zhen,指定用戶的宿主目是"/home/ftpsite/",設(shè)置宿主目錄的權(quán)限是700(vsftpd服務(wù)器中的所有虛擬用戶賬號登錄后都將在"/home/ftpsite"目錄中)
# useradd -d /home/ftpsite zhen
# chmod 700 /home/ftpsite

5、設(shè)置vsftpd.conf配置文件
在對vsftpd.conf配置文件修改前,先將它原來的文件備份,以便出現(xiàn)配置錯誤時可進行恢復.
# cd /etc/vsftpd
# cp vsftpd.conf vsftpd.conf.bak
在vsftpd.conf配置文件添加虛擬用戶的配置項:
guest_enable=yes
guest_username=zhen
pam_service_name=vsftpd.vu
所有配置完成后,重新啟動vsftpd服務(wù)程序
# service vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
可以對不同的用戶設(shè)置不同的權(quán)限.

3、RHEL搭建FTP中vsftpd服務(wù)器中的虛擬用戶可以靈活的針對不同的用戶賬號設(shè)置不同的用戶權(quán)限:
1、設(shè)置主配置文件
在vsftpd配置文件中添加user_config_dir配置項,并設(shè)置用戶配置文件的保存路徑
user_config_dir=/etc/vsftpd_user_conf(設(shè)置在"/etc/vsftpd_user_conf"目錄中保存虛擬用戶的配置文件.)
2、建立用戶配置文件目錄
# mkdir /etc/vsftpd_user_conf
3、為虛擬目錄建立單獨的配置文件
為用戶建立獨立的配置文件,配置文件名稱和用戶名相同,并給他相應(yīng)的權(quán)限.
# vi /etc/vsftpd_user_conf/rr
anon_world_readable_only=no //表示用戶可以瀏覽ftp目錄和下載文件.
# ftp 172.16.16.121
Connected to 172.16.16.121.
220 (vsFTPd2.0.1)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (172.16.16.121:root): rr
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (172,16,16,121,250,156)
150 Here comes the directory listing.
-rw-r--r--    1 0        0              29 May 26 05:27 44.txt
-rw-r--r--    1 0        0               0 May 26 05:30 55.txt
-rw-r--r--    1 503      503             0 May 26 05:24 afile
-rw-r--r--    1 503      503             0 May 26 06:10 file01

到此,關(guān)于“RHEL搭建FTP服務(wù)器的詳細步驟”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI