安装ftp在centos7下,
此类文章很多,这里也只是总结一下实践经历。
本文主要来源:
https://blog.51cto.com/meiling/2071122
作者M_ling
但做了修改,否则不对,主要是#guest_enable=YES ,需去除井号。
另做了限制,只允许ftp访问特定目录,这是必须的。
另外设置了umask,确保文件666属性,文件夹777属性。
安装依赖
yum -y install vsftpd
yum -y install db4-utils
yum -y install pam*
首先,应该使用被动模式。PASV模式。
查看版本
vsftpd -v
vsftpd: version 3.0.2
创建两个测试用文件夹
/var/test1
/var/test2
当前用户最好是root,
然后
chmod 777 /var/test1
chmod 777 /var/test2
核心配置
备份原配置
mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
这里使用虚拟用户模式配置。
防火墙需开启一个命令端口(假定3378,不使用默认的21),和一段数据端口假定 21221到21231
如果是阿里云,则
云服务器-》右侧更多 -》 网络和安全组 -》 安全组配置 -》
内网入方向全部规则 -》 添加
允许,自定义tcp,21221/21231,IPv4地址段访问,0.0.0.0/0
允许,自定义tcp,3378,IPv4地址段访问,0.0.0.0/0
总之,加两条通过规则。
然后
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
local_umask=022
#tcp_wrappers=NO
reverse_lookup_enable=NO
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES
#listen=YES
listen_port=3378
connect_from_port_20=YES
pasv_enable=YES
pasv_promiscuous=YES
pasv_min_port=21221
pasv_max_port=21231
#accept_timeout=120
connect_timeout=120
data_connection_timeout=180
idle_session_timeout=600
local_max_rate=0
#dirmessage_enable=NO
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
#log_ftp_protocol=YES
xferlog_std_format=YES
guest_enable=YES
guest_username=root
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vuser_conf
guest_username 一般填写目录所有者,一般为 root 或者 www、ftp 等。
虚拟用户权限配置
mv /etc/vsftpd/user_list /etc/vsftpd/user_list.bak
vi /etc/vsftpd/user_list
内容如下:
test1
test2
表示我用这两个虚拟用户。
touch /etc/vsftpd/chroot_list
mkdir /etc/vsftpd/vuser_conf
vim /etc/vsftpd/vuser_conf/test1
内容如下:注意此文件名必须是其中一个虚拟用户
local_root=/var/test1
write_enable=YES
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=000
anon_umask=000
继续,
vim /etc/vsftpd/vuser_conf/test2
内容如下:注意此文件名必须是其中一个虚拟用户
local_root=/var/test2
write_enable=YES
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=000
anon_umask=000
local_roo这项,这是该虚拟用户特定的文件夹,可以随意改,无限制。
日志文件
touch /var/log/vsftpd.log
chown ftp:ftp /var/log/vsftpd.log
虚拟用户认证
vi /etc/vsftpd/vsftpd_vuser
内容:
test1
123456
test2
123456
db_load -T -t hash -f /etc/vsftpd/vsftpd_vuser /etc/vsftpd/vsftpd_vuser.db
chmod 600 /etc/vsftpd/vsftpd_vuser.db
mv /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
vi /etc/pam.d/vsftpd
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_vuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_vuser
最后。
systemctl start vsftpd
然后用客户端去连接就可以了。
test1用户 123456
对应的是/var/test1这个目录,注意这个目录是可以随意指定的。
然后上传的文件权限是666,文件夹权限是777
test2用户,密码123456
对应的是/var/test2目录,都一样。
分享到:
相关推荐
CentOS5.3下vsftp虚拟用户配置实例,在CentOS5中可通用。
centos7 Vsftp FTP服务器安装指南
CentOS 5.3下vsftp创建新用户
Centos7.9安装配置vsftpd
centos6.8搭建vsftp服务 centos6.8搭建vsftp服务centos6.8搭建vsftp服务
Centos7下安装vsftpd并启用虚拟用户访问
在Centos7上搭建(安装)vsFTP服务的文档,包括配置访问ftp的用户、开启root用户访问ftp。
CentOS 7系统下安装、部署KVM虚拟化环境的详细安装配置步骤
VSFTP及FTP的rpm包,用于CentOS 7,可以直接进行rpm进行安装。经过具体的测试,安装后可以直接进行使用。 VSFTP版本:vsftpd-3.0.2-25.el7.x86_64 FTP版本:ftp-0.17-67.el7.x86_64
Linux CentOs下配置Vsftp虚拟用户帐号禁止下载权限并在windows下可以登录的详细步骤(成功案例附WIN平台FTP客户端) 本人花了3天的时间做了测试现在正常使用 照着一步一步做就可以成功配置 并提供可以在WINDOWS系统上...
安装配置vsftpd做FTP服务,我们的Web应用使用git管理进行迭代,公共文件软件存储使用开源网盘Seafile来管理,基本够用。想不到FTP的使用的场景,感觉它好像老去了,虽然现在基本没有用到这个工具,但刚好公司公司刷...
详细演示了在CentOS7.0环境下,设置虚拟用户访问vsFTP服务的过程。包含:配置过程说明文档(PDF)+配置过程演示视频(MP4)
Centos7下安装MongoDB
centos7配置nginx虚拟主机
CentOS6.3安装配置vsftp,vsftp配置文件的详细描述以及示例。
本文基于CentOS 7下采取一台机器充当虚拟路由,来实现Windows环境与Linux环境中相互通信。具体见下文,供大家参考。 一、环境及需求说明 本地测试环境,由于Win7+VMware这台机器网卡太新,无法被VMware EXSi识别,...
删除 vsftp FTP用户 以及添加用户全过程
现在我们常见的一些关于Linux的系统很多,但是使用的更多的一般都是CentOS和Ubuntu,今天我就来记录一下关于centos下java的安装和环境变量的配置。 首先使用xshell连接到centos7,我使用的是centos7 *64位,所以一切...
Centos5.5下Qt的安装配置
centos65-VSFTP服务器配置.doc