centos7下如何安装ftp服务

2023-12-01 0 458
目录
  • centos7安装ftp服务
    • 安装
    • 建立用户
    • 配置用户
    • 配置vsftpd并启动
    • 登录ftp
  • centos7安装ftp服务登录不上的坑
    • 防火墙的设置
    • Selinux关闭或者修改后才支持ftp服务
    • 测试ftp本地是否可以登录
  • 总结

    centos7安装ftp服务

    安装

    安装vsftpd :

     [root@ftp ~]# yum install -y vsftpd    

    安装epel-release ,借助epel的yum扩展源来下载db4-utils:

    [root@ftp ~]# yum install -y epel-release 

    安装db4-utils :

    [root@ftp ~]# yum install -y db4-utils 

    建立用户

    1.建立系统账户(和虚拟账户相关联的)

    [root@ftp ~]# useradd virftp -s /sbin/nologin

    2.建立虚拟用户的账号文件,并赋予权限

    [root@ftp ~]# vi /etc/vsftpd/vsftpd_login
    test1
    000000                     #奇数行为用户名,偶数行为上一行用户名所对应的密码
    test2                         
    123456                    
    [root@ftp ~]# chmod 600 /etc/vsftpd/vsftpd_login 

    3.对账号文件生成对应的库文件

    [root@ftp ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

    配置用户

    1、创建目录用于存放用户的文件

    [root@ftp ~]# mkdir /etc/vsftpd/vsftpd_user_conf
    [root@ftp ~]# cd /etc/vsftpd/vsftpd_user_conf/
    [root@ftp vsftpd_user_conf]# vi test1
    local_root=/home/virftp/test1        #账户的家目录
    anonymous_enable=NO                #不允许匿名账号登录
    write_enable=YES                    #可写
    local_umask=022                    #用户的umask值
    anon_upload_enable=NO            #不允许匿名账号上传文件
    anon_mkdir_write_enable=NO        #不允许匿名账户可写

    2、创建用户的家目录及文件

    [root@ftp~]# mkdir /home/virftp/test1
    [root@ftp ~]# touch /home/virftp/test1/ly.txt

    3、给家目录赋予权限,并映射到系统账号

    [root@ftp ~]# chown -R virftp:virftp /home/virftp/

    4、修改登录认证文件,将虚拟用户密码文件写入

    [root@ftp~]# vi /etc/pam.d/vsftpd 
    auth       sufficient   /lib64/security/pam_userdb.so   db=/etc/vsftpd/vsftpd_login #添加
    account    sufficient   /lib64/security/pam_userdb.so   db=/etc/vsftpd/vsftpd_login #添加
    #%PAM-1.0
    session    optional     pam_keyinit.so    force revoke
    auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
    auth       required     pam_shells.so
    auth       include      password-auth
    account    include      password-auth
    session    required     pam_loginuid.so
    session    include      password-auth

    配置vsftpd并启动

    1、修改vsftpd的全局配置文件,并启动vsftpd

    [root@ftp ~]# vi /etc/vsftpd/vsftpd.conf
    anonymous_enable=NO             #找到并修改为此句
    anon_upload_enable=NO            #找到并修改为此句
    anon_mkdir_write_enable=NO        #找到并修改为此句
    #添加以下内容
    chroot_local_user=YES
    guest_enable=YES
    guest_username=virftp             #虚拟用户
    virtual_use_local_privs=YES            #现在使用的是虚拟用户
    user_config_dir=/etc/vsftpd/vsftpd_user_conf
    allow_writeable_chroot=YES
    [root@ftp ~]# systemctl start vsftpd

    登录ftp

    1、登录 (安装lftp软件,登录vsftpd)

    [root@ftp ~]# yum install -y lftp
    [root@ftp ~]# lftp test1@127.0.0.1
    Password: 
    lftp test1@127.0.0.1:~> ls        
    -rw-r–r–    1 1000     1000            0 Dec 03 08:21 ly.txt
    lftp test1@127.0.0.1:/> quit

    centos7安装ftp服务登录不上的坑

    防火墙的设置

    1. 需要关闭window的防火墙以及杀毒软件的拦截

    直接百度,有很多,就不再赘述

    2.关闭cenos7的防火墙 或者防火墙开启 21 端口

    直接关闭

    #查看防火墙状态
    systemctl status firewalld.service
    #关闭防火墙
    systemctl stop firewalld.service

    关闭防火墙成功:

    centos7下如何安装ftp服务

    防火墙开启 21 端口

    #开放端口
    firewall-cmd –zone=public –add-port=21/tcp –permanent

    Selinux关闭或者修改后才支持ftp服务

    1.直接关闭Selinux

    #修改配置项SELINUX=disabled
    vi /etc/selinux/config

    centos7下如何安装ftp服务

    如果修改配置项后,需要重启系统才会生效,如果不想重启系统可以使用下面设置Selinux属性的方法

    2.修改设置Selinux属性

    #查看Selinux 中关于vsftpd 的参数
    getsebool -a | grep ftp

    centos7下如何安装ftp服务

    如果看到上面属性是关闭的

    #运行以下命令修改:
    setsebool -P allow_ftpd_full_access on
    setsebool -P ftpd_home_dir on
    #重启vsftpd
    service vsftpd restart

    centos7下如何安装ftp服务

    测试ftp本地是否可以登录

    #安装ftp命令
    yum -y install ftp
    # 测试本地登录 ftp IP
    ftp 192.168.0.XXX

    登陆成功

    centos7下如何安装ftp服务

    然后用工具登录试一试(我用的是Xftp)

    centos7下如何安装ftp服务

    卸载vsftpd

    #RPM Package Manager,RPM包管理器卸载的方法
    – rpm -q 软件名… #查询软件包是否安装
    – rpm -ivh 软件名-版本信息.rpm… #安装软件包
    – rpm -e 软件名… #卸载程序
    rpm -q vsftpd #查询软件是否安装
    rpm -ql vsftpd #查询已安装软件的安装清单
    rpm -e vsftpd #卸载软件程序
    # rpm -ivh vsftpd-3.0.2-9.el7.x86_64.rpm #卸载

    常用命令

    #查看所有安装的服务
    systemctl list-unit-files –type=service
    #查看所有运行服务
    netstat -tlnp
    #查看ftp服务端口号
    getsebool -a | grep ftp

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持悠久资源网。

    收藏 (0) 打赏

    感谢您的支持,我会继续努力的!

    打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
    点赞 (0)

    悠久资源 Linux服务器 centos7下如何安装ftp服务 https://www.u-9.cn/server/linux/412.html

    常见问题

    相关文章

    发表评论
    暂无评论
    官方客服团队

    为您解决烦忧 - 24小时在线 专业服务