首页 > 代码库 > Linux服务器中限制FTP用户访问方式

Linux服务器中限制FTP用户访问方式

FTP(File Transfer Protocol)协议:是一个用于在计算机间上传、下载文件的协议。 FTP工作在客户端/服务器端的模式中. FTP服务器持续监听来自远处客户端的FTP需求,在收到远处客户端的需求后,它负责管理登陆及建立连接。建立会话期间,执行FTP客户端发过来的命令。进入FTP服务器可以用匿名或者鉴权两种方式来管理。出于安全考虑,LINUX中的大部分系统,会考虑采用鉴权模式,即进入/访问FTP服务器,必须用用户名或密码的方式。


因为FTP不是一个安全协议,所以必须尽量被限制。出于安全考虑,因为很多系统会使用CHROOT jail(监牢),因此,FTP用户除了使用自己的家目录(/home/username)外,禁止访问其他目录。


下面说下如何配置,登陆服务器,sudo到root用户。

  • 备份:/etc/vsftpd/vsftpd.conf文件:                                                 
      • # cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.old
  • 编辑:/etc/vsftpd/vsftpd.conf文件:                                               
      • # vi /etc/vsftpd/vsftpd.conf
              如果没有的话,增加下面的行:
              userlist_enable=YES
              userlist_deny=NO
              anonymous_enable=NO

  • 注释:/etc/vsftpd/user_list中的用户,仅保留必须使用FTP的用户。这个用户必须和具体的FTP登陆方式相匹配。
       # vsftpd userlist
       # If userlist_deny=NO, only allow users in this file
       # If userlist_deny=YES (default), never allow users in this file,
       # and
       # do not even prompt for a password.
       # Note that the default vsftpd pam config also checks
       #/etc/vsftpd.ftpusers
       # for users that are denied.
       ftpuse
  • 在服务器上,传HUP挂起进程到vsftpd服务进程。                                              1.首先查找PID进程
    •   
    # ps -ef | grep vsftpd                                          2.然后输入下面的命令   #kill -HUP <PID of vsftpd>

其他管理ftp服务的命令:

[root]# service vsftpd stop        //-->停ftp服务
[root]# service vsftpd start       //-->启ftp服务
[root]# service vsftpd status      //-->查看ftp服务状态