`

FTP服务器搭建

阅读更多
   众所周知,FTP服务器用来上传和下载文件,采用FTP协议。

    首先我们来安装FTP
1.$ yum install vsftpd(vsftpd是众多FTP软件中较为安全的一个)。
2.修改配置文件vsftpd.conf,路径为/etc/vsftpd/vsftpd.conf
   如果是ubuntu系统的话,路径为   /etc/vsftpd.conf

以下我针对两种身份进行ftp设定
 
第一种:针对实体账号设定

1.vi /etc/vsftpd/vsftpd.conf
2.修改配置,最后配置信息如下
 
  anonymous_enable=NO  //匿名用户登录
  local_enable=YES    //实体用户登录
  write_enable=YES    //是否可以上传文件
  local_umask=002      //建立目录(755)和文件(644)权限
  userlist_enable=YES  //自定义阻挡实体用户访问
   userlist_deny=YES    //与userlist_enable一起用,起阻拦用户登录用
  userlist_file=/etc/vsftpd/uesr_list  //该文件默认不存在,需手动建立,内容可复制/etc/vsftpd/ftpusers文件,效果类似
  //与服务器相关设置
  use_localtime=YES   //这个尽量选YES,否则系统用格林威治时间
  dirmessage_enable=YES   //若目录下有.message会显示该内容
  xferlog_enable=YES     //启动日志记录,记录于/var/log/xferlog
  connect_from_port_20=YES //从20端口进行连接,支持主动连接
  xfelog_std_format=YES    //支持wuftp日志文件格式。
  listen=YES                 //支持stand alone 方式启动
  pam_service_name=vsftpd   //支持pam模块管理
  tcp_wrappers=YES  //支持tcp wrappers防火墙机制
  banner_file=/etc/vsftpd/welcome.txt  //用户登录提示,需手动建立

  #添加针对某些实体用户来chroot的相关设置
  chroot_local_user=YES
  chroot_list_enable=YES
  chroot_list_file=/etc/vsftpd/chroot_list
 
  如果按以上配置需创建chroot_list文件:
  $ vi /etc/vsftpd/chroot_list //建立不被chroot的用户帐号列表,即使没有帐号存在,该文件也要存在
 

  3.重启ftp服务器
  $ /etc/init.d/vsftpd restart
  $ chkconfig vsftpd on   //设置开机启动

  第二种,针对匿名用户登录
  1.创建提供匿名用户下载上传文件的目录
  $ mkdir /var/ftp/uploads
  $ mkdir /var/ftp/downloads
  #如果让用户可以上传下载文件
   $ chown ftp /var/ftp/uploads
   $ chown ftp /var/ftp/downloads

  2.修改vsftpd.conf
  $ vi /etc/vsftpd/vsftpd.conf
   
    #与匿名用户相关信息
    anonymous_enable=YES
   no_anon_password=YES  //匿名登录时,是否校验密码
    anon_max_rate=1000000  //最大带宽使用为1MB/s
   data_connection_timeout=60 //数据流连接timeout为60秒
    idle_connection_timeout=600 //匿名用户无操作10分钟后断线
    max_clients=50  //最大连接数50
   max_per_ip=5  //每个ip最多有5个连接
  
   #让匿名用户可以自己上传下载文件
    write_enable=YES
    anon_other_write_enable=YES
   anon_mkdir_write_enable=YES
   anon_upload_enable=YES
   
    #与实体用户相关信息
     local_enable=NO
   #与服务器相关信息
    use_localtime=YES
   dirmessage_enable=YES
   xferlog_enable=YES
   connect_from_port_20=YES
   xferlog_std_format=YES
   listen=YES
   pam_service_name=vsftpd
   tcp_wrappers=YES
   banner_file=/etc/vsftdp/anon_welcome.txt  //需手动建立,提示文件
   
  3.重启服务器
   $ /etc/init.d/vsftpd restart

  如果以上配置,登录时有报错 500 OOPS:cannot change directory:home/test/
  修改SELinux防火墙如下
   $ getsebool -a |grep ftp
   $ setsebool -P ftp_home_dir=1
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics