大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
环境:
阿里云ECS centos 7.9
专有网络
安装:
1、先看看有没有安装,有的话卸载
rpm -qa | grep vsftpd
2、安装
yum install -y vsftpd ftp
3、ftp启停
systemctl start vsftpd
systemctl stop vsftpd
systemctl restart vsftpd
systemctl enable vsftpd
配置:
# cat /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
ftpd_banner=”welcome test Ftp Server.”
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
virtual_use_local_privs=YES
guest_enable=YES
user_config_dir=/etc/vsftpd/vuser_conf
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30200
pasv_promiscuous=YES
allow_writeable_chroot=YES
虚拟用户:
1、创建对外的目录
mkdir /data/ftp_dir2
mkdir /data/ftp_dir3
2、创建系统用户并授权ftp对外目录权限
useradd -s /sbin/nologin ftpuser
给不给密码貌似都行
chown ftpuser:ftpuser /data/ftp_dir2
chown ftpuser:ftpuser /data/ftp_dir3
3、允许系统用户更改目录
# cat /etc/vsftpd/chroot_list
ftpuser
4、创建ftp虚拟用户
格式就是上面用户名下面密码,可以有多对
# cat /etc/vsftpd/login.txt
ftpuser2
ftppasswd2
ftpuser3
ftppasswd3
使用刚刚创建的用户名密码文件生成 .db 文件
db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db
5、修改/etc/pam.d/vsftpd文件如下
注意最后两行指定的密码文件不带 .db ,系统会自动找到该文件
# cat /etc/pam.d/vsftpd
#%PAM-1.0
session optional pam_keyinit.so force revoke
#auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth required pam_shells.so
#auth include password-auth
#account include password-auth
session required pam_loginuid.so
session include password-auth
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
6、创建虚拟用户授权文件
先创建目录,该目录就是/etc/vsftpd/vsftpd.conf配置文件中指定的目录
/etc/vsftpd/vuser_conf
创建授权文件
# cat /etc/vsftpd/vuser_conf/ftpuser2
local_root=/data/ftp_dir2
virtual_use_local_privs=YES
guest_username=ftpuser
write_enable=YES
anon_umask=022
# cat /etc/vsftpd/vuser_conf/ftpuser3
local_root=/data/ftp_dir3
virtual_use_local_privs=YES
guest_username=ftpuser
write_enable=YES
anon_umask=022
注意:
1、授权文件名必须和上面的虚拟用户名一致
2、guest_username处绑定上面创建的系统用户,且该用户拥有ftp对外目录的权限才能进行读写
重启vsftpd服务
使用 ftpuser2 和 ftpuser3 用户进行连接测试
某些报错:
报错1: 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
原因是用户限制在ftp目录时默认不允许拥有写权限,需要增加下面配置
vim /etc/vsftpd/vsftpd.conf
# 添加一行配置 allow_writeable_chroot=YES
这个配置上面配置文件已经加入
报错2: 500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list
原因是系统用户没有变更目录权限,需要增加下面配置
# cat /etc/vsftpd/chroot_list
ftpuser
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/190018.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...