Centos下安裝FTP並進行虛擬使用者訪問方式配置

2021-09-01 16:42:06 字數 2914 閱讀 9261

(以下所有都是在root使用者下操作)

1、準備工作

yum install pam*

yum install db4*

首先安裝pam(用於使用者認證)和db4(用於生成虛擬使用者的使用者名稱密碼的db檔案)。

mkdir  /home/ftpuser

2、安裝vsftpd

yum install vsftpd

安裝以後會發現vsftpd的配置路徑在/etc/vsfpd/目錄下。同時會在系統內新增乙個名稱為ftp的使用者(當然也有了叫ftp的乙個組)。

vim /etc/passwd 檢視該使用者的引數:

該使用者不能通過登入系統,它的home主目錄在/var/ftp。(如果要更改該使用者的主目錄等引數可以:usermod -d /home/ftpuser ftp 。但是這不是必要的。)

設定vsftpd開機啟動:

chkconfig vsftpd on
這條命令也等同於:chkconfig --level 2345 vsftpd on

通過chkconfig --list

為了避免不能連線,修改selinux(也可能沒有必要):

setsebool -p ftpd_disable_trans=1
3、配置vsftpd.conf

現在設定完畢以後vsft.conf的所有內容為:

anonymous_enable=no

local_enable=yes

write_enable=yes

local_umask=022

xferlog_enable=yes

xferlog_file=/etc/vsftpd/vsftpd.log

xferlog_std_format=yes

connect_from_port_20=yes

idle_session_timeout=600

listen=yes

pam_service_name=vsftpd

userlist_enable=yes

guest_enable=yes

guest_username=ftp

user_config_dir=/etc/vsftpd/virtualuser_conf

重要引數說明:

anonymous_enable=no 不允許匿名訪問

write_enable=yes #可寫(可上傳)

xferlog_enable=yes

xferlog_file=/etc/vsftpd/vsftpd.log

xferlog_std_format=yes

這3項由於設定log日誌,記得在/etc/vsftpd/下新建乙個vsftpd.log檔案。

guest_enable=yes  #啟用虛擬使用者

guest_username=ftp  #虛擬使用者借用的系統本地使用者名

user_config_dir=/etc/vsftpd/virtualuser_conf  #虛擬使用者的配置檔案路徑,所以別忘了在/etc/vsftpd/目錄下新建乙個virtualuser_conf資料夾

4、配置虛擬使用者

local_root=/home/ftpuser

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

引數說明:

touch virtualuser_passwd.txt

裡面的內容為:

tang

passwd1

tony

passwd2

奇數行是使用者名稱,偶數行是密碼,這裡建了兩個虛擬使用者,但是tony這個使用者沒有給設定。

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

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

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

再增加以下兩句

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

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

5、設定伺服器上的目錄許可權

chown -r ftp:ftp /home/ftpuser

chmod u=rwx /home/ftpuser

6、測試

好了,所有配置完了測試一下,瀏覽器訪問 或者用flashfxp連線就行了。

/ ftp搭建好以後遇到乙個問題,就是apache伺服器的站點怎麼能讓ftp使用者訪問到,比如進行網頁更新以後能用ftp上傳到**的目錄下。

apache的配置檔案/etc/httpd/conf.d裡預設設定的根站點目錄為/var/www/html/,這是乙個目錄,剛開始的想法是在/home/ftpuser/目錄下建乙個指向/var/www/html/的軟鏈結。但是遺憾的是在ftp客戶端展不開這個鏈結,說開啟目錄失敗。哎,那就反過來,將真正的**站點內容放在/home/ftpuser/www/下,/var/www/裡新增乙個指向/home/ftpuser/www/的軟鏈結(鏈結的名稱是html),在/var/www/目錄下執行:

ln -s /home/ftpuser/www html
執行ls -l /var/www可以看到:

這樣問題就解決了,而且瀏覽器訪問**網頁也沒有任何問題。

Centos下安裝FTP並進行虛擬使用者訪問方式配置

1.安裝認證所需包12 root localhost yum install pam root localhost yum install db4 首先安裝pam 用於使用者認證 和db4 用於生成虛擬使用者的使用者名稱密碼的db檔案 2.安裝vsftpd 1 root localhost yum ...

Centos下安裝FTP並進行虛擬使用者訪問方式配置

1.安裝認證所需包 root localhost yum install pam root localhost yum install db4 首先安裝pam 用於使用者認證 和db4 用於生成虛擬使用者的使用者名稱密碼的db檔案 2.安裝vsftpd root localhost yum inst...

centos 下FTP的安裝

一 檢視是否安裝有ftp相關的安裝包 rpm qa grep vsftpd ftp的安裝包就是vsftpd 檢視到我的系統中沒有安裝相關的包,所以先把安裝包裝上。yum y install vsftpd 這裡如果沒有配置yum源,可以直接用rpm的方式安裝也是一樣的 檢視一下是否安裝成功 二 啟動服...