CentOS 7安装FTP

安装ftp

yum -y install vsftpd

    设置开机自启

systemctl enable vsftpd.service

     启动

systemctl start vsftpd.service

   

     ftp相关命令:
         启动:systemctl start vsftpd.service
         重启:systemctl restart vsftpd.service
         停止:systemctl stop vsftpd.service
         查看状态:systemctl status vsftpd.service

 

修改selinux

      外网是可以访问上去了,可是发现没法返回目录(使用ftp的主动模式,被动模式还是无法访问),也上传不了,因为selinux作怪了。

      修改selinux:

      执行以下命令查看状态:

 getsebool -a | grep ftp  

      执行上面命令,再返回的结果看到两行都是off,代表没有开启外网的访问,分别执行

setsebool -P allow_ftpd_full_access on
setsebool -P tftp_home_dir on

 

配置vsftpd

       创建vsftpd使用的系统用户,主目录为/home/vsftpd,禁止ssh登录。创建之后所有虚拟用户使用这个系统用户访问文件。

 useradd vsftpd -d /home/vsftpd -s /bin/false

 

     创建这个虚拟用户

vi /etc/vsftpd/ftpusers.conf

     添加内容:

user
123456

      这就创建了虚拟用户user,密码123

      根据这个文件创建数据库文件,并设置数据库文件的访问权限

db_load -T -t hash -f /etc/vsftpd/ftpusers.conf /etc/vsftpd/ftpusers.db
chmod 600 /etc/vsftpd/ftpusers.db

     接下来我们设置启用这个数据库文件

vi /etc/pam.d/vsftpd

      注释当前文件所有内容,加入以下内容

auth        required    /lib64/security/pam_userdb.so db=/etc/vsftpd/loginusers
account     required    /lib64/security/pam_userdb.so db=/etc/vsftpd/loginusers

    创建虚拟用户主目录,目录名必须和我们的虚拟用户名称一样,上面我们创建的虚拟用户为 user

mkdir -p /home/vsftpd/user

    创建虚拟用户配置文件

mkdir /etc/vsftpd/userconf
vi /etc/vsftpd/userconf/user

      这里vi编辑的文件名称必须与虚拟用户名一致,我们上面创建的虚拟用户为user,然后加入以下内容:

local_root=/home/vsftpd/user/
write_enable=YES

      注:这里我们设定主目录为我们创建的虚拟用户主目录 /home/vsftpd/user

 

 

       修改主配置文件。修改前先备份

cp /etc/vsftpd/vsftpd.conf  /etc/vsftpd/vsftpd.conf_bak

      修改

vi /etc/vsftpd/vsftpd.conf

      更改

anonymous_enable=NO

     去掉这些的注释

chroot_local_user=YES
ascii_upload_enable=YES
ascii_download_enable=YES

     在文件最后增加

guest_enable=YES
guest_username=vsftpd
user_config_dir=/etc/vsftpd/userconf
allow_writeable_chroot=YES

     配置介绍:

            anonymous_enable=NO 禁止匿名用户登录
            chroot_local_user=YES 禁止用户访问除主目录以外的目录
            ascii_upload_enable=YES ascii_download_enable=YES 设定支持ASCII模式的上传和下载功能
            guest_enable=YES 启动虚拟用户
            guest_username=vsftpd 虚拟用户使用的系统用户名
            user_config_dir=/etc/vsftpd/userconf 虚拟用户使用的配置文件目录
            allow_writeable_chroot=YES 最新版的vsftpd为了安全必须用户主目录(也就是/home/vsftpd/user)没有写权限,才能登录,或者使用allow_writeable_chroot=YES

     重启服务,使配置生效

systemctl restart vsftpd

 

设置防火墙

         开放ftp服务

firewall-cmd --permanent --add-service=ftp

        重启防火墙

systemctl restart firewalld.service

浏览器连接:ftp://IP

输入我们配置的虚拟用户名密码

 到此ftp安装完成! 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值