Centos 安裝vsftpd


一、安裝准備工作

1、問題1

Linux安裝FTP時報錯,No package vsftp available. Error: Nothing to do

先安裝Install Repository,執行命令

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

有可能會遇到問題 -bash: wget: command not found

那就先安裝wget

方法1、rpm 安裝


rpm 下載源地址:http://mirrors.163.com/centos/6.2/os/x86_64/Packages/

下載wget的RPM包:http://mirrors.163.com/centos/6.2/os/x86_64/Packages/wget-1.12-1.4.el6.x86_64.rpm

rpm ivh wget-1.12-1.4.el6.x86_64.rpm 安裝即可。

如果客戶端用的是SecureCRT,linux下沒裝rzsz 包時,rz無法上傳文件怎么辦?我想到的是安裝另一個SSH客戶端:SSH Secure Shell。然后傳到服務器上安裝,這個比較費勁,所以推薦用第二種方法,不過如果yum包也沒有安裝的話,那就只能用這種方法了。

方法2、yum安裝

 

這種比較快捷

yum -y install wget

二、開始安裝vsftpd

1、在線安裝vsftpd

yum install -y vsftpd

2、啟動ftp

systemctl start vsftpd.service

3、查看ftp是否啟動

service vsftpd status 

安裝ftp工具

 

 測試匿名鏈接ftp,出現ftp>表示成功

 

 

 

4、去掉匿名登錄

  修改文件 /etc/vsftpd/vsftpd.conf

#是否匿名登錄
anonymous_enable=YES 修改為 NO
chroot_local_user=YES 
  #用於指定用戶列表文件中的用戶是否允許切換到上級目錄。 默認值為NO。
  #通過搭配能實現以下幾種效果:  
  #①當chroot_list_enable=YES,chroot_local_user=YES時,在/etc/vsftpd.chroot_list文件中列出的用戶,可以切換到其他目錄; 未在文件中列出的用戶,不能切換到其他目錄。  
  #②當chroot_list_enable=YES,chroot_local_user=NO時,在/etc/vsftpd.chroot_list文件中列出的用戶,不能切換到其他目錄; 未在文件中列出的用戶,可以切換到其他目錄。  
  #③當chroot_list_enable=NO,chroot_local_user=YES時,所有的用戶均不能切換到其他目錄。  
  #④當chroot_list_enable=NO,chroot_local_user=NO時,所有的用戶均可以切換到其他目錄。  
  chroot_list_enable=YES 
  chroot_list_file=/etc/vsftpd/chroot_list 
  allow_writeable_chroot=YES 
  #加上這行解決了無法登陸的問題 



  重啟ftp:

[root@localhost ~]# systemctl restart vsftpd.service

  

 查看ftp運行狀態

  

  [root@localhost ~]# systemctl status vsftpd.service

  

 

 

5、創建新的ftp用戶組和目錄和其它設置

  ①創建用戶組

[root@localhost ~]# groupadd ftpgroups

  

  ②創建ftp目錄

[root@localhost ~]# mkdir /home/ftp

  

  ③創建ftp用戶,指定可訪問目錄,並加入到用戶組,命名為ftpuser

[root@localhost ~]# useradd -d /home/ftp/ -g ftpgroups ftpuser

 

 這里出現警告,是因為我們用mkdir創建了,繼續操作就行了

  

  ④設置ftp用戶只能登錄ftp,不能訪問服務器

[root@localhost ~]# usermod -s /sbin/nologin ftpuser

  

  ⑤設置ftpuser用戶密碼

  我這里設置ftp.1234

[root@localhost ~]# passwd ftpuser

  

  ⑥設置設置賬戶權限

[root@localhost ~]# chown -R ftpuser /home/ftp/
[root@localhost ~]# chmod 777 /home/ftp/

   

  ⑦增加用戶進入list使它能訪問根目錄

[root@localhost ~]# vi /etc/vsftpd/chroot_list

  添加上用戶:ftpuser

 

  ⑧編輯pam認證文件,注銷一行

[root@localhost ~]# vi /etc/pam.d/vsftpd

  #auth required pam_shells.so

  繼續,然后重啟ftp服務

 

  ⑨重新設置一下權限

[root@localhost ~]# chown -R ftpuser /home/ftp/
[root@localhost ~]# chown 777 /home/ftp/
[root@localhost ~]# setsebool allow_ftpd_full_access on
[root@localhost ~]# systemctl restart vsftpd.service

  這里有一點問題就是,關閉防火牆可以訪問ftp,開啟就無法訪問,待解決中....

關閉防火牆
systemctl stop firewalld.service
重啟防火牆
systemctl restart firewalld.service

 

6、訪問ftp服務

  我這里的 ftp://192.168.20.200/

 

7、修改ftp默認端口

  1、修改vsftpd.conf

  文件路徑:/etc/vsftpd/vsftpd.conf,在最后添加或者修改以下內容

#登錄FTP服務器,依據/etc/pam.d/vsftpd中內容進行認證;
pam_service_name=vsftpd

#vsftpd.user_list和ftpusers配置文件里用戶禁止訪問FTP;
userlist_enable=YES

#設置vsftpd與tcp wrapper結合進行主機的訪問
tcp_wrappers=YES

allow_writeable_chroot=YES

#修改的端口
listen_port=2121
pasv_enable=YES
pasv_min_port=1050
pasv_max_port=1060
pasv_promiscuous=YES
ftpd_banner=Welcome to FTP service

2、修改iptables

路徑:/etc/sysconfig/iptables,添加一下兩行,對應vsftpd.conf文件里 

listen_port=2121
pasv_min_port=1050
pasv_max_port=1060

 

-A INPUT -p tcp -m state --state NEW -m tcp --dport 1050:1060 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2121 -j ACCEPT

3、開放端口

依次執行

#添加端口
[root@localhost ~]# firewall-cmd --zone=public --add-port=2121/tcp --permanent

[root@localhost ~]# firewall-cmd --zone=public --add-port=1050-1060/tcp --permanent

#重啟防火牆
[root@localhost ~]# systemctl restart firewalld.service

#查看監聽端口
[root@localhost ~]# netstat -ntpl | grep vsftpd
 命令安裝netstat:yum -y install net-tools

 

 

 4、現在可以用端口訪問了

ftp://192.168.20.200:2121/

如果不行,看看telenet是否能通

 cmd→telnet 192.168.20.200 2121

出來下面的界面,說明端口修改成功

 

 

 

參考文章:https://www.cnblogs.com/letyouknowdotnet/p/11403097.html

附帶linux常用命令:https://www.cnblogs.com/w-yu-chen/p/12870033.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM