• 基于CentOS安装FTP服务器


    操作系统环境:

    CentOS Linux release 7.4.1708 (Core)

    使用yum安装ftp服务:

    yum install -y vsftpd

    添加系统用户作为登录ftp服务器并修改ftp配置文件:

    [root@localhost ~]# useradd ftp1 -s /sbin/nologin -d /ftp_data && echo "123456"|passwd ftp1 --stdin  #添加用户并设置访问的ftp目录
    [root@localhost ~]# chown ftp1:ftp1 /ftp_data/
    [root@localhost vsftpd]# mv vsftpd.conf vsftpd.conf.bak #备份配置文件
    [root@localhost vsftpd]# cat vsftpd.conf.bak |grep -v '^#' > vsftpd.conf
    [root@localhost vsftpd]# vim vsftpd.conf #修改禁止虚拟用户登录ftp服务器
    [root@localhost vsftpd]# systemctl restart vsftpd.service #重启vsftpd
    [root@localhost vsftpd]# systemctl enable vsftpd.service #开启自动启动vsftpf

    关于vsftpd三种用户的区分:

    本地用户:用户在FTP服务器拥有账号,且该账号为本地用户的账号,可以通过自己的账号和口令进行授权登录,登录目录为自己的home目录$HOME 

    虚拟用户:用户在FTP服务器上拥有账号,但该账号只能用于文件传输服务。登录目录为某一特定的目录,通常可以上传和下载 

    匿名用户:用户在FTP服务器上没有账号,登录目录为/var/ftp

    关于配置文件/etc/vsftpd/vsftpd.conf参数说明:

    anonymous_enable=NO    # 不允许匿名访问,禁用匿名登录
    chroot_local_user=YES   # 启用限定用户在其主目录下
    use_localtime=YES     # 使用本地时(自行添加)
    chroot_list_enable=YES  #是否启动限制用户的名单 YES为启用  NO禁用(包括注释掉也为禁用)
    local_enable=YES      # 允许使用本地帐户进行FTP用户登录验证
    allow_writeable_chroot=YES # 如果启用了限定用户在其主目录下需要添加这个配置,解决报错 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
    xferlog_enable=YES     # 启用上传和下载的日志功能,默认开启。
    local_umask=022      # 设置本地用户默认文件掩码022
    # FTP上本地的文件权限,默认是077,不过vsftpd安装后的配置文件里默认是022

    关闭防火墙和selinux:

    
    

    [root@localhost vsftpd]# setenforce 0  #临时关闭selinux

    [root@localhost vsftpd]# systemctl stop firewalld.service

    [root@localhost vsftpd]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config #永久关闭

    如果不愿意关闭防火墙,需要防火墙添加FTP服务:

    [root@localhost vsftpd]# systemctl start firewalld.service
    [root@localhost vsftpd]# firewall-cmd --permanent --zone=public --add-service=ftp
    success
    [root@localhost vsftpd]# firewall-cmd --reload
    success

    客户端测试可以正常连接服务器并成功上传文件:

  • 相关阅读:
    Tomcat 服务器体系结构
    tomcat的下载和启动
    tomcat解决端口号占用问题
    我的wmware
    Xshell的使用
    GCC的-wl,-rpath=参数
    Matlab图像处理(01)-Matlab基础
    CMake最好的学习资料
    使用valgrind进行内存泄漏和非法内存操作检测
    CLion提示can't find stdio.h等错误
  • 原文地址:https://www.cnblogs.com/wenwei-blog/p/8890436.html
Copyright © 2020-2023  润新知