美文网首页
centos 搭建ftp service

centos 搭建ftp service

作者: mountain369 | 来源:发表于2018-01-19 15:02 被阅读0次

    安装FTP:

    1. 安装vsftpd

    # 查看是否已安装 方法一

    [root@localhost ~]# rpm -q vsftpd

    vsftpd-3.0.2-21.el7.x86_64

    # 查看是否已安装 方法二

    [root@localhost ~]# vsftpd -v

    vsftpd: version 3.0.2

    # 安装 vsftpd

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

    2.查看位置:

    [root@localhost ~]# whereis vsftpd

    vsftpd: /usr/sbin/vsftpd/etc/vsftpd/usr/share/man/man8/vsftpd.8.gz

    3. 修改配置文件:

    [root@localhost ~]# vi /etc/vsftpd/vsftpd.conf

    保证下面3项为YES

        anonymous_enable=YES

        anon_upload_enable=YES

        anon_mkdir_write_enable=YES

    4. 启动vsftpd服务

    [root@localhost ~]# systemctl start vsftpd.service

    5.设置开机启动vsftpd服务

    [root@localhost ~]# systemctl enable vsftpd.service

    Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

    本地验证FTP是否可以访问:

    2.1 安装FTP

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

    2.2 使用anonymous访问,无需密码

    [root@localhost ~]# ftp localhost

    Trying ::1...

    Connected to localhost (::1).

    220 (vsFTPd 3.0.2)

    Name (localhost:root): anonymous

    331 Please specify the password.

    Password:

    230 Login successful.

    Remote system type is UNIX.

    Using binary mode to transfer files.

    ftp>

    220表示服务正常,可以登陆;230表示登陆成功。

    验证远程访问FTP:

    3.1关闭防火墙

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

    为防止防火墙重新开启,可永久关闭防火墙:

    [root@localhost ~]# systemctl disable firewalld.service

    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.

    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

    [root@localhost ~]#

    3.2 在window上输入ftp://IP地址,可看到ftp下的目录(pub为系统预设的)

    3.3文件读写

    到上面为止,我们发现ftp目录下并不能读写文件,这是由文件夹权限和selinux引起的。

    3.3.1 设置文件夹权限,将pub文件夹的权限设置为777

    [root@localhost ~]# chmod 777 -R /var/ftp/pub

    3.3.2 关闭selinux服务

    [root@localhost ~]# vi /etc/selinux/config

    #SELINUX=enforcing  改为  SELINUX=disabled

    note:修改配置文件必须 重启系统 才能生效:

           /usr/sbin/sestatus -v|grep -i SELINUX 可以查看状态。

    [root@localhost xdd]# setenforce 0  (临时设置生效)

    3.3.3 重启服务

    [root@localhost ~]# service vsftpd restart

    Redirecting to /bin/systemctl restart vsftpd.service

    3.3.4 至此 仍然不行,不知为何。 执行下面的后才可以

    [root@localhost pub]# getsebool -a |grep ftp

    ftpd_anon_write --> off

    ftpd_connect_all_unreserved --> off

    ftpd_connect_db --> off

    ftpd_full_access --> off

    ftpd_use_cifs --> off

    ftpd_use_fusefs --> off

    ftpd_use_nfs --> off

    ftpd_use_passive_mode --> off

    httpd_can_connect_ftp --> off

    httpd_enable_ftp_server --> off

    tftp_anon_write --> off

    tftp_home_dir --> off

    [root@localhost pub]# setsebool ftpd_full_access on

    至此,ftp上传至/var/ftp/pub 就完全没问题了

    reference: https://www.cnblogs.com/zhi-leaf/p/5983550.html

    相关文章

      网友评论

          本文标题:centos 搭建ftp service

          本文链接:https://www.haomeiwen.com/subject/abmooxtx.html