工具和中間件-linux-3-ftl

1.ftp服務器安裝

安裝ftp服務器:  yum install vsftpd -y

關閉ftp服務器:systemctl stop vsftpd.service

啓動ftp服務器:systemctl start vsftpd.service

查看ftp服務器狀態:systemctl status vsftpd.service

設置ftp服務器開機自啓:

2.創建ftp用戶並指定對應的上傳目錄

創建一個目錄:   mkdir -p /home/wwwroot/ftptest

創建用戶ftptest,並指定用戶目錄:  useradd -d /home/wwwroot/ftptest -g ftp -s /sbin/nologin ftptest

把目錄/home/wwwroot/ftptest的擁有者設置爲ftptest:  chown -R ftptest /home/wwwroot/ftptest

使ftptest用戶擁有這個目錄的讀寫權限:  chmod -R 775 /home/wwwroot/ftptest

爲ftptest用戶設置密碼:  passwd ftptest            (paw123###)

3.在vsftpd服務器中配置該用戶

a.刪除默認情況下vsftpd服務器的允許匿名登陸模式

        首先通過vi命令打開ftp服務器配置文件:vi /etc/vsftpd/vsftpd.conf

         然後把本來的anonymous_enable=YES   修改爲  anonymous_enable=NO

b.限制用戶對於其他目錄的訪問

       首先通過vi命令打開ftp服務器配置文件: vi /etc/vsftpd/vsftpd.conf

#chroot_list_enable=YES

# (default follows)

#chroot_list_file=/etc/vsftpd.chroot_list


並修改爲:

chroot_list_enable=YES      #表示對用戶訪問進行限制

# (default follows)

chroot_list_file=/etc/vsftpd/chroot_list    #對chroot_list用戶清單裏面指定的用戶進行限制

c.添加用戶到用戶清單中

            首先通過vi命令打開chroot_list文件:vi /etc/vsftpd/chroot_list

           然後增加一行: ftptest

d.允許用戶的寫權限

         vsftpd服務器是這樣的,一旦某個用戶被限制訪問了,那麼默認情況下,該用戶的寫權限也被剝奪了。 這就導致ftp客戶端連接上服務器之後無法上傳文件。

         首先通過vi命令打開ftp服務器配置文件:  vi /etc/vsftpd/vsftpd.conf

         在最後面新加一行:allow_writeable_chroot=YES

4.ftp的端口配置

             vsftpd有兩種端口,一個是21端口,用來監聽客戶端連接請求的,一般說來是固定的。另一種是,一旦獲取到請求之後,再專門用戶服務端和客戶端傳輸數據的端口。

             打開配置文件:vi /etc/vsftpd/vsftpd.conf

            在最後添加:這表示使用被動模式,用於傳輸數據的端口分配從30000-30010之間。

pasv_enable=YES

pasv_min_port=30000

pasv_max_port=30010

5.用戶鑑權

          因爲用戶 ftptest 是 nologin的,所以存在鑑權的問題。 如果鑑權問題不解決,就是永不停息的 530錯誤。

方式一: pam.d/vsftpd 文件

          編輯 vi /etc/pam.d/vsftpd   註釋掉: auth required pam_shells.so

方式二:shells 文件

         編輯 vi /etc/shells   添加一行:/sbin/nologin

6.重啓ftp服務器

              systemctl restart vsftpd.service

              systemctl status vsftpd.service

7.鏈接

      http://how2j.cn/k/deploy2linux/deploy2linux-ftpuser/1601.html

8.防火牆

     linux的防火牆,vmware所在windows機器的防火牆

 

查看防火牆狀態        firewall-cmd --state

關閉防火牆          systemctl stop firewalld.service

禁止開機啓動啓動防火牆    systemctl disable firewalld.service

9.客戶端連接:

       ftp://192.168.162.128 (爲ip address中的ip)    

      

10.linux連接ftp:

     ftp localhost

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章