Linux搭建ftp服务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux搭建ftp服务相关的知识,希望对你有一定的参考价值。
ftp(文件传输协议)服务默认使用TCP协议的20、21端口与客户端进行通信。20端口用于建立数据连接,并传输文件数据;21端口用于建立控制连接,并传输ftp控制指令。
ftp数据连接分为 主动模式和被动模式;
客户端与服务器建立数据连接以后,就可以根据从控制连接中发送的ftp命令进行上传和下载文件。传输过程中是否进行字符转换,分为文本模式和二进制模式。使用二进制模式笔文本模式更有效率。大多数ftp客户端可以根据文件类型自动选择文件传输模式,无需用户手工指定。
ftp用户类型分为:
1.匿名用户;
2.本地用户;
3.虚拟用户。
接下来我们就在linux环境中搭建ftp服务
1.确定本地的IP地址,关闭防火墙,关闭selinux;
2.自己简单创建yum仓库;
3.挂载系统盘,创建ftp服务;
4.首先进入ftp服务的主配置文件中;
接下来介绍一些常用的配置选项参数
匿名用户常用的参数:
anonymous_enable=YES 是否允许匿名访问
anon_umask=022 设置匿名用户所上传文件的默认权限掩码值
anon_root=/vat/ftp 设置匿名用户的宿主目录(默认为/var/ftp)
anon_upload_enable=YES 是否允许匿名用户上传文件
anon_mkdir_write_enable=YES 是否允许匿名用户有创建目录的写入权限
anon_other_write_enable=YES 是否允许匿名用户有其他写入的权限(例如改名、修改、删除等)
本地用户常用的参数:
local_enable=YES 是否允许本地系统用户访问
local_umask=022 设置本地用户所上传文件的默认权限掩码值
local_root=/var/ftp 设置本地用户的ftp根目录(默认为用户的宿主目录)
chroot_local_user=YES 是否将ftp本地用户禁锢在宿主目录中
local_max_rate=0 限制本地用户的最大传输速率(0为无限制),单位是字节/秒(B/s)
全局配置常用的参数:
listen=YES 是否以独立的运行方式监听服务
listen_address=0.0.0.0 设置监听ftp服务的IP地址
listen_port=21 设置监听ftp服务的端口号
write_enable=YES 启用任何形式的写入权限(比如上传、删除文件等)都需要开启此项
download_enable=YES 是否允许下载文件(比如建立仅限于浏览、上传的ftp服务器时可将其设置 为"NO")
xferlog_enable=YES 启用xferlog日志,默认记录到/var/log/xferlog
xferlog_std_format=YES 启用标准的xferlog日志格式
connect_from_port_20=YES 允许服务器主动模式
pasv_enable=NO 禁止被动模式连接;默认允许被动模式连接
pam_service_name=vsftpd 设置用于用户认证的PAM文件位置(/etc/pam.d/目录中对应的文件名)
userlist_enable=YES 是否启用user_list用户列表文件
max_clients=0 最多允许多少客户端同时连接(0为无限制)
max_per_ip=0 对来自同一个IP地址的客户端,最多允许多少个并发连接(0为无限制)
tcp_wrappers=YES 是否启用TCP_Wrappers主机访问控制
常用的配置差不多就这些(配置文件严格区分大小写)
接下来我们先使用匿名用户登录ftp服务器(匿名用户默认登录的文件夹是/var/ftp/pub目录)
1.先给pub目录设置权限(匿名用户对应系统用户ftp)
2.在主配置文件中填写
3.保存退出启动服务就可以匿名登录访问了(并且可以删除、修改)
(配置文件如果有错误,启动服务时会报错误,根据错误查看自己的配置文件)
接下来使用客户机访问测试
接下来我们搭建基于本地用户匿名访问(本地用户默认登录到自己的宿主目录中)
1.在全局模式中添加以下内容
2.创建系统用户(用于测试)
3.重新加载ftp服务
接下来客户机进行测试
匿名用户登陆上去,右击空白页选择登录
以上是关于Linux搭建ftp服务的主要内容,如果未能解决你的问题,请参考以下文章
Linux---Linux中Ubuntu镜像之下搭建FTP服务