打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Centos7 部署FTP服务器
userphoto

2023.10.13 广东

关注
FTP服务器配置
1、知识要点:
相关知识要点:FTP服务是文件传输服务。文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。
FTP工作原理:
            
优点:具备更强的文件传输可靠性和更高的效率。
匿名用户:通过使用同一个用户名anonymous,密码不限。
FTP工作模式分为两种:主动传输模式(Active FTP)、被动传输模式(Passive FTP)
1、主动传输模式:
2、被动传输模式:
2、ftp服务器配置安装
准备工作配置ip地址、yum安装配置
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
配置ip地址
#vi/etc/selinux/conf
#setenforce 0
关闭安全配置
enforcing改为disabled
注:安全配置关闭了要系统重启才生效
临时生效
#cd /etc/yum.repos.d/
#mv CentOS-Base.repo CentOS-
#vi CentOS-Media.repo
yum安装配置
重命名文件
修改配置文件
//mnt/    //这里为本地源路径
Gpgcheck=0  //0表示不要检测,1 表示需要检测
Enabled=1     //表示开启本地源
#systemctl stop firewalld
#systemctl disable firewalld
关闭防火墙
设置开机关闭
reboot
重启系统
# mount /dev/cdrom /mnt/
#yum –y install vsftpd
临时挂载
安装vsftpd
Service vsftpd restart  重启vsftpd服务
测试vsftpd服务
FTP 命令的格式:ftp主机名或IP地址
Vsftp主要配置文件
1、/etc/pam.d/vsftpd
2、/etc/vsftpd/vsftpd.conf
3、/etc/vsftpd/ftpusers
4、/etc/vsftpd/user_list
5、/var/ftp
FTP传输方式:
ASCII模式:文本模式,以文本序列传输数据。
二进制模式:Binary模式,以二进制序列传输数据。
Vsftpd主配置文件参数说明:
local_enable=YES|NO     //是否允许本地用户登录
local_umask=022         //设置本地用户上传文件的默认权限掩码值
local_root=/var/ftp     //设置本地后所在根目录
local_max_rate=50000  //设置本地用户最大传输速度,单位bps,0表示不限制
chroot_local_user=YES|NO  //是否将所有用户锁定在主目录
chroot_list_enable=YES|NO  //是否启动锁定用户的名单
chroot_list_file=/etc/vsftpd/chroot_list //要开启锁定用户名单才能激活此功能,该目录需自己创建
anonymous_enable=YES|NO  //是否允许匿名登录FTP
no_anon_password=YES|NO   //控制匿名用户登录时是否需要密码,YES为不需要,NO为需要
anon_world_readable_only=YES|NO   //是否允许匿名用户游览下载文件
anon_upload_enable=YES|NO //是否允许匿名用户上传文件   注:如果开启了selinux,要把sftpd_anon_write的布尔值设置为no。
anon_mkdir_write_enable=YES|NO  //是否允许匿名用户创建目录的写入权限
anon_other_write_enable=YES|NO  //是否允许用户有其他的写入权限,如改名、删除文件夹等。
anon_root=/var/ftp //设置匿名用户的ftp根目录、匿名用户登录所在的目录
anon_umask=022 //匿名用户上传文件的默认权限掩码值
anon_max_rate=20000 //设置匿名用户的上传最大传输速度,单位为bytes/sec,0表示不限制
write_enable=YES|NO //允许用户访问时,是否允许他们有写入的权限
download_enable=YES|NO  //是否允许下载文件
listen=YES|NO   //设置vsftpd服务器是否以独立(standalone)模式运行
listen_port=21  //设置FTP服务建立连接所侦听的端口号
listen_address=IP address   //设置在指定的IP地址上侦听用户的FTP请求,如果没设置会对服务器所有IP地址进行侦听
connect_from_port_20=YES|NO   //是否确信端口传输来自20
chown_upload=YES|NO //是否改变上传文件的属主
chown_username=username  //是否改变上传文件的属主,如果需要输入一个系统用户名
pasv_enable=YES   //允许被动模式连接
port_enable=YES  //port为主动模式,pasv为被动模式,二者不能同时使用
pasv_max_port=24600  //设置用于被动模式的服务器最大端口
pasv_min_port=24500  //设置用于被动模式的服务器最小端口
userlist_enable=yes|no   //是否启用user_list用户列表文件
userlist_deny=yes|no    //是否禁止user_list列表文件中额用户账号
max_clients=0     //设置FTP服务器允许最大客户端连接数 0表示不限制
max_per_ip=0   //设置每个IP地址允许与FTP服务器同时建立连接的数目  0表示不限制
xferlog_enable=YES|NO   //是否启动用日志记录FTP
xferlog_file=/var/log/vsftpd.log  //设置日志文件名及路径
xferlog_std_format=YES|NO    //是否用标准格式存储日志,若禁止此选项,将使用vsftpd自己的日志格式
pam_service_name=vsftpd   //设置PAM认证服务的配置文件名,该文件位于/etc/pam.d 目录下
tcp_wrappers=yes|no  //是否启用tcp_wrappers访问控制
idle_session_timeout=600 //设置默认的断开不活跃session的时间
date_connection_timeout=120 //设置数据传输超时时间
use_localtime=YES|NO  //是否使用本地时间
accept_timeout=60 //将客户端空闲1分后关闭连接数
#acsii_upload_enable=YES|NO //是否使用ASCII方式上传文件
#accii_download_enable=YES|NO  //是否使用ACCII方式下载文件
guest_enable=YES|NO   //设置启动虚拟用户功能
guest_username=ftp  //指定虚拟用户的宿主用户
user_config_dir=/etc/vsftpd/vuser_conf  /设定虚拟用户个人vsftp的服务文件存放路径
ftp_banner=Welcome blah FTP service  //定义欢迎话语
banner_file=/etc/vsftpd/banner  //当使用登入时会出现定义的话语
dirmessage_enable=YES|NO  //是否显示目录说明文件
message_file=.message   //设置目录消息文件
chomd_enable=YES|NO  //是否本地用户登录的客户可以通过“SITE CHMOD”命令来修改文件权限
file_open_mode=0777  //上传文件权限
匿名用户登录FTP服务器
mount /dev/cdrom /mnt
yum –y  install vsftpd
临时挂载
安装vsftp服务
#chomd 777 /var/ftp/pub
#vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
#systemctl restart vsftpd
匿名用户可上传配置
修改pub权限进行上传
编辑配置文件
允许匿名用户访问
允许匿名用户上传文件
允许匿名用户创建目录
客户端测试
本地用户登入FTP服务器
#vi /etc/vsftpd/vsftpd.conf
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
vi /etc/vsftpd/chroot_list
限制所有用户
限制部分用户
需要手动创建chroot_list文件
本地用户设置
Local_enable=YES
Local_umask=022
Local_max_rate=20000
Local_root=/ftp
Chroot_local_user=NO
Chroot_list_enable=YES
Chroot_list_file=/etc/vsftpd/chroot_list
是否允许本地用户登录
设置本地用户上传文件的默认权 022
设置本地用户最大上传速度
设置本地用户登录后所在的目录
将本地用户限定在主目录
启动锁定用户的名单
限制本地用户的名单,每一个用户占一行
如果想限制部分本地用户登录FTP利用user_list文件进行设置
Userlist_enable=yes
Userlist_deny=NO
#vi /etc/vsftpd/user_list
打开用户功能
允许列表中用户登录系统
加上允许的用户名,每个用户各占一行
虚拟用户登录
mkdir /ftpuser
vi /ftpuser/ftpuser.txt
ftp1
123
ftp2
123
创建用户文件夹
创建账号文件
账号
密码
db_local –T –t hash –f /ftpuser/ftpuser.txt /ftpuser/ftpuser.db
chomd   700 /ftpuser/ftpuser.db
创建数据库文件
设置权限
Useradd –d /var/vsftpd –s /sbin/nologin ftpuser
Chomd 755 /var/vsftpd
创建系统账号,可省略
vi /etc/pam.d/vsftpd
auth  required    pam_userdb.so db=/vsftpd/ftpuser
account required  pam_userdb.so  db=/vsftpd/ftpuser
创建PAM认证文件
指定虚拟用户数据库文件的文置
注:这里不需要写扩展名“db”
vi/etc/vsftpd/vsftpd.conf
guest_enable=YES
guest_username=ftpuser
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd
编辑主配置文件、添加相关参数
表示启用虚拟用户映射功能
表示指定所映射的系统用户名称
表示指定PAM认证文件
表示虚拟用户配置文件的存放目录
vi /etc/vsftpd/ftp1
anon_upload_enable=YES
anon_download=YES
创建虚拟用户ftp1,设置相关权限
允许匿名用户上传
允许匿名用户下载
vi /etc/vsftpd/ftp2
anon_upload_enable=YES
anon_download=YES
创建虚拟用户ftp2,设置相关权限
允许匿名用户上传
允许匿名用户下载
#systemctl restart vsftpd
重启vsftpd服务
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
修改SELinux设置,使vsftp在enforcing?security?enhance...
亚马逊云服务平台介绍(8) – EC2 搭建FTP服务器
Linux中vsFTP添加用户
ubuntu安装ftp服务器(一般配置)
Ubuntu 用vsftpd 配置FTP服务器
Ubuntu搭建FTP服务器方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服