CentOS7 +vsftpd (一)之 匿名

ftp的搭建是一个基础性的工作,CentOS7 +vsftpd 是一个比较容易实现的平台,但在搭建中问题会不少,本系列将通过四篇随笔与大家分享。

一、CentOS7

1、实验环境为:VMware Workstation Pro +CentOS 7 64位最小化安装(略)(网络采用桥接方式)。

2、安装完后,网络设置(如果未能启用网络,请采用以下步骤)

[root@localhost pub]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.21 netmask 255.255.255.0 broadcast 192.168.1.255 <======================未启用网络设备,没有这些IP,请执行 ifup ens33
inet6 fe80::ccbe:f76:f63f:8270 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:09:37:0a txqueuelen 1000 (Ethernet)
RX packets 4721 bytes 426895 (416.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3090 bytes 384658 (375.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost pub]# ifup ens33 <=======================ens33 你的网络设备名,

3、安装工具 VIM

yum install -y vim

4、设置静态IP地址

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33  <=======================ens33 你的网络设备名
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=4c9cac13-3d1d-451a-88ba-91aaddfa09d5
DEVICE=ens33
ONBOOT=yes <=======================开机启动
BOOTPROTO=static <=================静态IP方式
IPADDR=192.168.1.21 <================IP
NETMASK=255.255.255.0 <=================子网掩码
DNS1=192.168.1.1 <=================DNS1
DNS2=114.114.114.114 <=============DNS2
GATEWAY=192.168.1.1 <=============网关

5、测试网络

[root@localhost pub]# ping baidu.com
PING baidu.com (123.125.114.144) 56(84) bytes of data.
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=1 ttl=52 time=46.7 ms
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=2 ttl=52 time=48.8 ms
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=3 ttl=52 time=46.6 ms
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=5 ttl=52 time=40.8 ms
64 bytes from 123.125.114.144 (123.125.114.144): icmp_seq=6 ttl=52 time=40.9 ms
^C
--- baidu.com ping statistics ---
6 packets transmitted, 5 received, 16% packet loss, time 5023ms
rtt min/avg/max/mdev = 40.880/44.798/48.869/3.288 ms

二、vsftp 安装

1、服务器上安装,并测试

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

[root@localhost ~]# systemctl start vsftpd
[root@localhost ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[root@localhost ~]# systemctl status vsftpd
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled; vendor preset: disabled)
Active: active (running) since Thu -- :: EDT; 50s ago
Main PID: (vsftpd)
CGroup: /system.slice/vsftpd.service
└─ /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf Oct :: localhost.localdomain systemd[]: Starting Vsftpd ftp daemon...
Oct :: localhost.localdomain systemd[]: Started Vsftpd ftp daemon.
Hint: Some lines were ellipsized, use -l to show in full. [root@localhost ~]# yum install -y ftp [root@localhost ~]# ftp 192.168.1.21
Connected to 192.168.1.21 (192.168.1.21).
(vsFTPd 3.0.)
Name (192.168.1.21:root): anonymous
Please specify the password.
Password:
Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
Entering Passive Mode (,,,,,).
Here comes the directory listing.
drwxr-xr-x Aug : pub
Directory send OK.
ftp> quit
Goodbye.

2、进阶设置

通过第一步的安装,说明vsftpd已在服务器上运行,并能在服务器上访问,下面的设置是为了能从网络上访问a、防火墙

[root@localhost ~]# firewall-cmd --zone=public --add-service=ftp --permanent

[root@localhost ~]# firewall-cmd --reload

b、匿名用户权限

[root@localhost ~]# cd /etc/vsftpd/
[root@localhost vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@localhost vsftpd]# cp vsftpd.conf vsftpd.conf_`date +%F`
[root@localhost vsftpd]# ls
ftpusers vsftpd.conf vsftpd_conf_migrate.sh
user_list vsftpd.conf_2017-10-05 [root@localhost vsftpd]# mkdir /www
[root@localhost vsftpd]# mkdir /www/ftp
[root@localhost vsftpd]# mkdir /www/ftp/pub
[root@localhost vsftpd]# mkdir /www/ftp/pub/upload [root@localhost vsftpd]# chmod 777  /www/ftp/pub/upload <================匿名用户口的上传目录
[root@localhost pub]# vim /etc/vsftpd/vsftpd.conf <================修改这个配置文件 内容如下
[root@localhost pub]# grep -Ev '(^#\s.*|^#|^$)' /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
anon_mkdir_write_enable=YES
anon_root=/www/ftp/pub
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

c、SElinux设置

550错误是vsftpd最为常见的错误,多是由SElinux设置、vsftpd.conf和FTP目录权限引起,这三者搞清楚,vsftpd设置起来就很容易,如出错重点也是检查这三处

[root@localhost ~]# getsebool -a | grep ftpd <====================最小化安装Selinux 级别为 1 即 ===>Current mode:  enforcing
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
[root@localhost ~]# setsebool -P ftpd_full_access on <========================开启ftpd全部存取权限 #========================================如果以上仍然不行,可用 setenforce 0 临时下调 Selinux 级别 0 相当于关闭Selinux =====可能确定故障点 == [root@localhost ~]# setenforce 1 <====================重新开启Selinux
[root@localhost pub]# systemctl restart vsftpd

三、关键

1、防火墙

2、FTP目录权限

3、vsftpd.conf设置  参见 http://yuanbin.blog.51cto.com/363003/108262/

4、Selinux级别与开关

CentOS7 +vsftpd (一)之 匿名的更多相关文章

  1. centos7: vsftpd安装及启动: ftp配置(以虚拟用户为例)

    centos7: vsftpd安装及启动: ftp配置 1安装: yum -y install vsftpd /bin/systemctl start vsftpd.service #启动 /bin/ ...

  2. CentOS7 vsftpd 安装及配置

    0x:卸载vsftpd [root@localhost ~]# yum remove vsftpd [root@localhost ~]# find / -name "vsftpd*&quo ...

  3. centos7: vsftpd安装及启动

    安装: yum -y install vsftpd service vsftpd start  注意这句:centos7不能这么启动了 chkconfig vsftpd on vsftpd.conf配 ...

  4. LInux CentOS7 vsftpd 配置注释

    本文首发: https://www.somata.work/2019/LinuxCentOSvsftpdConfigComment.html vsftpd.conf anonymous_enable= ...

  5. 使用Vsftpd服务(匿名访问模式、本地用户模式)

    FTP协议占用两个端口号: 21端口:命令控制,用于接收客户端执行的FTP命令. 20端口:数据传输,用于上传.下载文件数据.. FTP数据传输的类型: 主动模式:FTP服务端主动向FTP客户端发起连 ...

  6. Centos7 vsftpd虚拟用户权限控制(vsftpd虚拟用户限制IP访问)

    实验目标:(新增限制虚拟机用户登陆的IP) 实现在同一跟目录下对admin,upload,download三个虚拟用户的不同权限的控制.具体权限控制列表如下: 用户名 权限说明 admin 管理员,可 ...

  7. CentOS7 install vsftpd

    #mkdir -p /var/ftp/xcl/ #yum install -y vsftpd#useradd -g ftp -M -d /var/ftp/xcl -s /sbin/nologin xc ...

  8. CentOS7.2配置vsftpd

    环境 CentOS7.2 (安装镜像CentOS-7-x86_64-DVD-1611) 本文默认使用root用户操作 目标 实现CentOS7.2上安装vsftpd,使用新创建的ftpuser用户便可 ...

  9. Ubuntu下VSFTPD(五)(匿名FTP设置方法)

    匿名FTP设置方法: 通常在登录FTP服务器的用户不确定的情况下,应将FTP服务器设置为允许匿名账号登录的FTP服务器 1.启用匿名帐号   anonymous_enable=YES   local_ ...

随机推荐

  1. String.equals()方法

    public boolean equals(Object anObject) {     if (this == anObject) {         return true;     }      ...

  2. JavaScript中你所不知道的Object(二)--Function篇

    上一篇(JavaScript中你所不知道的Object(一))说到,Object对象有大量的内部属性,而其中多数和外部属性的操作有关.最后留了个悬念,就是Boolean.Date.Number.Str ...

  3. 《Java程序设计》终极不改版

     半年前的作品,上传只为纪念~ 成绩: ____0.1______ Java程序设计  课程设计 题 目:大学生信息管理系统 学 院:  计算机与软件学院 专 业:     网络工程_____­ .  ...

  4. 201521145048《Java程序设计》第8周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 1.2 List<Map.Entry<String, In ...

  5. 201521123023《java程序设计》第三周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; p ...

  6. 201521123076 《Java程序设计》第11周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...

  7. 201521123039 《java程序设计》第九周学习总结

    1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? ...

  8. [js高手之路]Node.js模板引擎教程-jade速学与实战3-mixin

    强大的mixin mixin类似于函数的功能,可以达到模块复用的效果 mixin show: 定义一个类似函数的功能,名字叫show,里面的就是他的内容 +show: 调用show,每调用一次执行一次 ...

  9. Linux tomcat 去除项目名端口号直接用ip或者域名访问网站

    网站开发过程中,一般的工程访问路径是  http://10.10.10.10:8080/projectName如何设置成http://10.10.10.10/ 解决方法: 首先,进入tomcat的安装 ...

  10. Eclipse 版本选择

    查看Eclipse的版本号: 1. 找到eclipse安装目录 2. 进入readme文件夹,打开readme_eclipse.html 3. readme_eclipse.html呈现的第二行即数字 ...