RHEL CentOS中vsftp安裝與配置

2021-08-25 18:40:58 字數 4255 閱讀 2099

一般我們在安裝完系統後都會自動安裝了vsftp服務了,但是有時候還是得需要自己動手的,比如這兩天就在給我朋友配置了一下,順手把過程記錄下來,以便需要的時候查閱或者給需要的朋友提供方便:)

1. 安裝

使用 chkconfig --list來檢視是否裝有vsftpd服務;

使用yum命令直接安裝:

yum -y install vsftpd

然後為它建立日誌檔案:

touch /var/log/vsftpd.log

這樣簡單的兩個命令就完成了vsftp的安裝,但是如果你現在想這樣ftp://your_ip來訪問的話,那還不行,為什麼??很簡單,許可權的問題!

2. 啟動與配置自啟動

使用chkconfig --list來檢視vsftpd服務啟動項情況;

如果看到的是如下顯示的結果:

vsftpd0:off1:off2:off3:off4:off5:off6:off

服務全部都是off的,注意這裡的off表示的是伺服器啟動的時候是否會自啟動服務,我們使用如下命令來配置其自啟動:

chkconfig --level 2345 vsftpd on #2345對應的是上面對應的0-6項

檢視與管理ftp服務:

啟動ftp服務:service vsftpd start

檢視ftp服務狀態:service vsftpd status

重啟ftp服務:service vsftpd restart

關閉ftp服務:service vsftpd stop

3. 配置vsftp服務

#vi/etc/vsftpd/vsftpd.conf

anonymous_enable=no #設定不允許匿名訪問

local_enable=yes #設定本地使用者可以訪問。注:如使用虛擬宿主使用者,在該專案設定為no的情況下所有虛擬使用者將無法訪問。

chroot_list_enable=yes #使使用者不能離開主目錄

xferlog_file=/var/log/vsftpd.log #設定vsftpd的服務日誌儲存路徑。注意,該檔案預設不存在。必須要手動touch出來

ascii_upload_enable=yes #允許使用ascii模式上傳

pam_service_name=vsftpd #pam認證檔名。pam將根據/etc/pam.d/vsftpd進行認證

以下這些是關於vsftpd虛擬使用者支援的重要centos ftp服務配置專案。預設vsftpd.conf中不包含這些設定專案,需要自己手動新增rhel/centos ftp服務配置。

guest_enable=yes #設定啟用虛擬使用者功能。

guest_username=ftp #指定虛擬使用者的宿主使用者。-rhel/centos中已經有內建的ftp使用者了

user_config_dir=/etc/vsftpd/vuser_conf #設定虛擬使用者個人vsftp的rhel/centos ftp服務檔案存放路徑。存放虛擬使用者個性的centos ftp服務檔案(配置檔名=虛擬使用者名稱)

3.2建立chroot list,將ftp使用者加入其中:

touch /etc/vsftpd/chroot_list

echo ftp >> /etc/vsftpd/chroot_list

3.3進行認證:

首先,安裝berkeley db工具,很多人找不到db_load的問題就是沒有安裝這個包。

yum install db4 db4-utils

然後,建立使用者密碼文字/etc/vsftpd/vuser_passwd.txt ,注意奇行是使用者名稱,偶行是密碼

ftpuser1

ftppass1

ftpuser2

ftppass2

接著,.生成虛擬使用者認證的db檔案

db_load -t -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db

隨後,編輯認證檔案/etc/pam.d/vsftpd,全部注釋掉原來語句

再增加以下兩句

auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd

account required pam_userdb.so db=/etc/vsftpd/vuser_passwd

最後,建立虛擬使用者個性rhel/centos ftp服務檔案

mkdir /etc/vsftpd/vuser_conf/

vi /etc/vsftpd/vuser_conf/ftpuser1

內容如下:

local_root=/opt/var/ftp1 虛擬使用者的根目錄(根據實際修改)

write_enable=yes 可寫

anon_umask=022 掩碼

anon_world_readable_only=no

anon_upload_enable=yes

anon_mkdir_write_enable=yes

anon_other_write_enable=yes

4. 為目錄附許可權並重啟動vsftp服務:

mkdir /opt/var/ftp/ftpuser1

chmod 777 /opt/var/ftp/ftpuser1

service vsftpd restart

5. 常見問題:

5.1553 could not create file

一般都是selinux的問題,設定selinux的乙個值,重啟伺服器即可。

setsebool -p ftpd_disable_trans 1

service vsftpd restart

5.2500 oops: bad bool value in config file for: write_enable

注意你的centos ftp服務檔案中保證每一行最後沒有任何空格,一般出錯就是在多餘的空格上。

在配置檔案中新增或修改anon_umask項的值。如anon_umask=022或000

6. 使用命令新增ftp使用者(與3.3類似)

6.1 新增ftp使用者,命令格式:

#adduser -d /目錄路徑 -g ftp -s /sbin/nologin 使用者名稱

如使用:

#adduser -d /opt/dongge -g ftp -s /sbin/nologin dongge

增加了乙個名為dongge的使用者,它的目錄屬於/opt/dongge下面,屬於ftp使用者組。此使用者是不可以登陸我們終端伺服器的。

6.2 新增密碼:

#passwd dongge

設定使用者名為ftpuser的使用者在目錄下可以讀寫的許可權

#chown -r dongge:ftp /opt/dongge/

6.3目錄掛載:

如果我們想把/opt/dongge目錄掛到我們的ftp目錄下面,可以使用mount命令

#mount –-bind /opt/dongge /var/ftp/dongge

這樣我們就完成了新增使用者與掛載目錄的配置。

新增如下**:

alias /fileshare "/var/ftp/ftpuser1"

options indexes multiviews

allowoverride none

order allow,deny

allow from all

8. 偷懶vsftp的配置方法

完成步驟1,2,3.1後,直接將如下**新增到/etc/vsftpd/vsftpd.conf檔案中:

write_enable=yes 可寫

anon_umask=022 掩碼

anon_world_readable_only=no

anon_upload_enable=yes

anon_mkdir_write_enable=yes

anon_other_write_enable=yes

重啟vsftpd服務即可:)簡單吧,呵呵呵

Linux CentOS 7 安裝配置vsftp

學習linux時間不長,首次安裝了vsftp,按照網上的各種帖子嘗試配置,不過都沒打到預期,不是被拒絕連線,就是連線超時,總之就是各種問題啊。當然了,不是別人配置的不對,而是自己不是太懂linux,選擇的配置引數彼此之間不知道 起了衝突。所以結合自己的系統把安裝配置過程記錄下來,方便以後學習總結。y...

RHEL Centos下VSFTPD伺服器搭建

linux下安裝配置vsfptd伺服器,並通過客戶端驗證。centos 6 區域網配置vsftpd伺服器 實現 本地使用者和虛擬使用者登入的配置。可以上載檔案,上載後的檔案的許可權為rw r r 可以建立目錄,但是不能刪除檔案,的登入目錄為 var vsftpd。本地使用者fayero和clinux...

擴充套件虛擬機器中RHEL CentOS7 的磁碟空間

三 檢視擴充套件後的結果 vmware虛擬機器編輯虛擬機器設定 然後根據提示建立新的分割槽 n 新建。w 儲存退出 reboot 注意磁碟型別與現有一致 可以使用df t檢視 mkfs t 型別 dev sda 新增的磁碟分割槽 lvs pvcreate dev sda df h 檢視根目錄所在的組...