阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS下vsftpd服务器搭建

141次阅读
没有评论

共计 3245 个字符,预计需要花费 9 分钟才能阅读完成。

CentOS 下 vsftpd 服务器搭建

1. 最为简单的 vsftpd 服务器搭建
1. 安装 vsftpd
1.yum 安装

 yum install vsftpd

2.rpm 文件安装 (如果没有 rpm 文件,可以到 http://rpmfind.net/ 网站下载)

rpm -ivh vsftpd-2.2.2-11.el6_4.1.x86_64.rpm

2. 防火墙 (centos 6.5 使用的是 iptables 防火墙)
1. 开放 21 端口

1
iptables -A INPUT -p tcp --dport 21 -j ACCEPT

2. 开放 20 端口

1
iptables -A INPUT -p tcp --dport 20 -j ACCEPT

3. 开放 20 主动端口

1
iptables -A INPUT -m state --state NEW -p tcp --dport 20 -j ACCEPT

4. 开放 21 主动端口

1
iptables -A INPUT -m state --state NEW -p tcp --dport 21 -j ACCEPT

5. 写入被动模式端口

1
2
echo pasv_min_port=30000 >> /etc/vsftpd/vsftpd.conf
echo_pasv_max_port=31000 >> /etc/vsftpd/vsftpd.conf

(注意:min 和 max 可以随意填写,但要遵守如下规则
max > min && min > 1000 && max < 65536)

6. 写入被动端口

1
iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT

7. 保存配置

1
/etc/init.d/iptables iptables save

8. 重启 iptables 防火墙

1
/etc/init.d/iptables iptables restart

3. 赋予权限

1
chmod -R 755 /var/ftp

4. 测试
成功!!!

2.ftp 匿名服务器
1. 配置
在 /etc/vsftpd/vsftpd.conf(此为 vsftpd 的主配置文件) 下:
打开以下配置即可 (删除前面的 #号,如果没有,可以自行添加,默认配置文件最好不要注释掉)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
anonymous_enable=YES
# 允许匿名访问
 
local_enable=YES
# 支持本地端实体用户登录
 
write_enable=YES
# 如果要允许用户上传
 
local_umask=022
# 限制上传文件的权限
 
anon_upload_enable=YES
# 允许上传文件
 
anon_mkdir_write_enable=YES
# 允许建立文件夹
 
anon_other_write_enable=YES
# 对文件有读写操作权限,意味着可以删除文件
 
xferlog_enable=YES
# 记录日志
 
xferlog_file=/var/log/xferlog
# 日志位置
 
pam_service_name=vsftpd
# 支持 PAM 模块的管理
 
tcp_wrappers=YES
# 支持 TCP Wrappers 的防火墙机制

2. 测试
CentOS 下 vsftpd 服务器搭建

能够访问,并且能够下载但是不能上传

3.selinux 的配置

查看 selinux:

1
getsebool -a | grep ftp

设置

1
setsebool -P allow_ftpd_anon_write=1 && setsebool -P allow_ftpd_full_access=1 &

命令执行比较慢,可以放入后台执行

4. 测试

成功

3. 实体用户配置
1. 配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
anonymous_enable=no
# 禁止匿名用户访问
 
local_enable=yes
# 支持实体用户登录
 
write_enable=yes
# 拥有写权限
 
local_umask=077
# 默认目录权限是 755 默认文件权限是 644
 
dirmessage_enable=yes
# 显示文件内容
 
connect_from_port_20=YES
# 主动连接
 
xferlog_std_format=YES
# 记录日志
 
listen=YES
# 使用 stand alone 方式启动
 
pam_service_name=vsftpd
# 支持 pam 模块
 
tcp_wrappers=yes
# 支持 tcp 防火墙
 
userlist_enable=yes
# 不允许 /etc/vsftpd/user_list 内的用户登录 vsftpd

2.selinux 的设置

1
setsebool -P ftp_home_dir=1

3. 测试

成功!!!

4.ftp 服务器安全
1.chroot
目录:/etc/vsftpd/chroot_list

使用:
1. 将需要限制的用户名写入即可,一排一个用户名,最好通过 >> 来写入
2. 设置 vsftpd.conf
chroot_list_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot
目的:
在文件内的用户名登录 ftp 之后,只能在用户主目录下

2.userlist
目录:/etc/vsftpd/user_list

使用:
1. 将需要限制的用户名写入即可,一排一个用户名,最好通过 >> 来写入
2. 设置 vsftpd.conf
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list

如果 [userlist_deny=NO]; 那么
此时文件内的用户才能访问 ftp

另外 [userlist_deny=YES]; 那么
此时文件内的用户不能访问 ftp

目的:
想让某人使用或者不使用 ftp 都可以

5. 总结

1.ftp 使用的端口为 20,21 其中 21 为通道端口,20 为连接端口

2. 防火墙与 selinux 开发规则即可

玩转 vsftpd 服务器的四大高级配置:http://www.linuxidc.com/Linux/2013-09/90565.htm

vsFTPd 配置教程:http://www.linuxidc.com/Linux/2013-09/90562.htm

Ubuntu 实用简单的 FTP 架设 http://www.linuxidc.com/Linux/2012-02/55346.htm

Ubuntu 上架设 FTP 服务器和 Apache 服务器 http://www.linuxidc.com/Linux/2011-04/35295.htm

Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm

RHEL6 平台下 SeLinux 和 vsftpd 的匿名上传的简单案例 http://www.linuxidc.com/Linux/2013-04/82300.htm

Linux 系统 vsftpd 源码安装 http://www.linuxidc.com/Linux/2013-03/81475.htm

openSUSE 13.2/13.1 下安装配置 FTP 服务器 vsftpd  http://www.linuxidc.com/Linux/2014-12/110070.htm

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-07/133305.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3245字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中