CentOS中如何搭建FTP服务器
创始人
2024-12-22 14:22:57
0次

1 基本环境

CentOS中如何搭建FTP服务器

2 ftp工作模式

2.1 ftp通道

ftp工作会启动两个通道:

控制通道,数据通道

在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种模式:port模式(主动模式)和pasv(被动模式)

2.2 port模式

在客户端需要接收数据时,ftp_client(大于1024的随机端口)----port命令-----ftp_server(21)发送port命令,这个port命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ftp_server将通过自己的tcp 20端口和port中包含的端口建立新的连接来传送数据。

2.3 pasv模式

传送数据时,ftp_client---pasv命令---ftp_server(21)发送pasv命令时,ftp_server自动打开一个1024--5000之间的随机端口并且通知ftp_client在这个端口上传送数据,然后客户端向指定的端口发出请求连接,建立一条数据链路进行数据传输。

3 安装vsftp

# rpm -qa vsftpd   #检查是否已安装
# yum -y install vsftpd
# chkconfig --level 35 vsftpd on   #设置开机自启动
# chkconfig --list|grep vsftpd    #检查开机是否是自动启动

4 ftp文件说明

# rpm -ql vsftpd
/etc/logrotate.d/vsftpd    #vsftpd的日志文件
/etc/pam.d/vsftpd      #pam认证文件
/etc/rc.d/init.d/vsftpd    #启动脚本
/etc/vsftpd         #vsftpd的配置文件存放目录
/etc/vsftpd/ftpusers     #禁止使用vsftpd的用户列表文件
/etc/vsftpd/user_list     #禁止或允许使用vsftpd的用户列表文件
/etc/vsftpd/vsftpd.conf    #ftp的主配置文件
/etc/vsftpd/vsftpd_conf_migrate.sh   #vsftpd操作的一些变量和设置
/var/ftp         #匿名用户目录
/var/ftp/pub       匿名用户的下载目录

5 配置ftp

5.1 vsftpd.conf文件参数说明

黄色部分为添加的,红色为修改的

anonymous_enable=no    #是否开启匿名登录
local_enable=yes       #是否允许本地用户登录
write_enable=yes       #是否允许上传
local_umask=022        #默认的umask码
dirmessage_enable=yes     #是否显示目录说明文件
xferlog_enable=yes       #是否记录ftp传输过程
connect_from_port_20=yes   #是否确定端口传输来自20
xferlog_std_format=yes     #是否使用标准的ftp xferlog模式
chroot_list_enable=yes      #是否将系统用户限制在自己的home目录下
chroot_list_file=/etc/vsftpd/chroot_list  #列表不受限制的用户
listen=yes            #是否开启监听
pam_service_name=vsftpd     #服务名称
userlist_enable=yes
tcp_wrappers=yes

5.2 关闭selinux

# setenforce 0
# sed -i 's#selinux=enforcing#selinux=disabled#g' /etc/selinux/config

6 创建虚拟用户

6.1 创建一个用户

创建用户后修改用户的shell为nologin,让用户不能登录系统,只能使用ftp之内的服务

# useradd -d /home/ftp/test -g ftp -s /sbin/nologin test
# echo 123456|passwd --stdin test #设置密码

6.2 将用户test添加到chroot_list中

# touch /etc/vsftpd/chroot_list 
# echo test >>/etc/vsftpd/chroot_list

6.3 启动vsftp服务

# /etc/init.d/vsftpd start

6.4 登陆ftp方式

6.4.1 文件夹登陆

在文件夹路径框输入: 按回车登陆                                            

6.4.2 浏览器登陆

浏览器里输入    输入用户名test和密码123456进行测试

6.4.3 cmd命令行登陆

打开windows cmd窗口输入:ftp 10.0.0.8 按回车输入用户名和密码登陆

6.4.4 第三方客户端登陆

比如xftp客户端登陆

7 其他参数说明

max_client=100       #vsftpd最大支持链接数100个ip
max_per=5         #每个ip能支持的5个链接
local_max_rate=81920     #限制传输速度
listen_address=ip       #绑定某个ip到vsftpd,只允许该ip访问
xferlog_file=/var/log/vsftpd.log  #日志存放位置

8 常见报错

8.1 报错1

[root@oldboyedu45-wang ~]# service vsftpd start

为 vsftpd 启动 vsftpd:500 oops: bad bool value in config file for: chroot_list_enable                                                           [失败]

此报错时由于chroot_list_enable后面有空格导致的

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...