FTP(vsftpd) for CentOS7
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,1 安装[root@CentOS7-01 ~]#yum -y install vsftpd2 vsftpd服务常见配置#主配置文件/etc/vsftpd/vsftpd.conf2.1 命令端口list
千家信息网最后更新 2025年02月04日FTP(vsftpd) for CentOS7
1 安装
[root@CentOS7-01 ~]#yum -y install vsftpd
2 vsftpd服务常见配置
#主配置文件/etc/vsftpd/vsftpd.conf
2.1 命令端口
listen_port=port #默认为21,如果需要将vsftpd服务暴露在公网,建议修改为其它端口
2.2 匿名用户登录
2.2.1 支持匿名用户
anonymous_enable=YES #默认为YES
2.2.2 匿名用户略过口令检查,默认为NO
修改前
修改后
# 在配置文件最后面加上下面的配置,然后重启vsftpdno_anon_password=YES[root@CentOS7-01 ~]#systemctl restart vsftpd
2.3 匿名用户上传
2.3.1支持匿名用户上传
默认情况下,匿名用户只能下载ugo三者都有读权限的文件,但是不能上传,如下图
# 要想支持匿名用户上传,需要修改配置文件anon_upload_enable=YES #把前面的#去掉即可,然后重启服务[root@CentOS7-01 ~]#systemctl restart vsftpd
虽然配置了允许匿名用户上传,但是再次上传还是报错,不过原因是因为目录权限导致
#默认情况下,/var/ftp/pub目录权限为755,所以匿名用户无法往这个目录上传文件# [root@CentOS7-01 ~]#ll /var/ftp/pub/ -ddrwxr-xr-x 2 root root 6 Dec 18 11:15 /var/ftp/pub/# 利用acl为ftp用户设置rwx权限[root@CentOS7-01 ~]#setfacl -m u:ftp:rwx /var/ftp/pub/[root@CentOS7-01 ~]#getfacl /var/ftp/pub/getfacl: Removing leading '/' from absolute path names# file: var/ftp/pub/# owner: root# group: rootuser::rwxuser:ftp:rwxgroup::r-xmask::rwxother::r-x
2.3.2 匿名创建目录
# 如上图所示,匿名用户默认不能创建目录,需改配置文件anon_mkdir_write_enable=YES #把前面的#去掉即可,然后重启服务[root@CentOS7-01 ~]#systemctl restart vsftpd
2.3.3 只能下载ugo三者都有读权限的文件,默认YES
# 如上图,复制f2文件到本地的时候,提示报错,来看下该文件的权限[root@CentOS7-01 ~]#ll /var/ftp/pub/total 0-rw------- 1 ftp ftp 0 Dec 18 11:23 f1-rw------- 1 ftp ftp 0 Dec 18 11:22 f2drwx------ 2 ftp ftp 6 Dec 18 11:33 新文件夹# 可以看到f2文件权限为600,只有属主有读权限,这里将它改为444就能下载了[root@CentOS7-01 ~]#chmod 444 /var/ftp/pub/f2
# 通过上面临时修改文件权限的方法虽然可以成功下载了,但如果文件量多起来了, 还是手工改权限是不现实的,所以,可以在配置文件加上如下配置,然后重启服务anon_world_readable_only=NO[root@CentOS7-01 ~]#systemctl restart vsftpd
2.3.4 指定匿名上传文件的umask,默认077
# 默认情况下匿名用户上传的文件权限为600,所有不能下载,要想能把上传的文件下载下来,可以修改配置文件anon_umask=033 #在配置文件加上此设置,然后重启服务[root@CentOS7-01 ~]#systemctl restart vsftpd# 添加了此配置之后,上传的文件默认权限就是644,而不用手动修改权限实现下载了
2.3.5 可删除和修改上传的文件,默认NO
# 要想实现匿名用户删除上传的文件,需修改配置文件anon_other_write_enable=YES #在文件最后添加此行,然后重启服务[root@CentOS7-01 ~]#systemctl restart vsftpd
2.4 指定匿名用户上传的文件的默认所有者和权限
# 在配置文件中,修改一下内容chown_uploads=YES #去掉前面的#号,默认为NOchown_username=hechunping #修改为指定的所有者chown_upload_mode=0644 #在文件最后加上此行# 测试上传新文件file1[root@CentOS7-01 ~]#ll /var/ftp/pub/total 0-rw-r--r-- 1 hechunping ftp 0 Dec 18 14:22 file1.txt
2.5 Linux系统用户
local_enable=YES #是否允许linux用户登录,默认YESwrite_enable=YES #允许linux用户上传文件,默认YESlocal_umask=022 #指定系统用户上传文件的默认权限,默认022
2.6 将系统用户映射为指定的guest用户
guest_enable=YES #所有系统用户都映射成guest用户guest_username=ftpuser #配合上面选项才生效,指定guest用户local_root=/ftproot #guest用户登录后所在的目录
2.7 禁锢系统用户
2.7.1 禁锢所有系统用户在其家目录中
#将前面的#去掉,然后重启服务chroot_local_user=YES #禁锢系统用户在其家目录中, 默认NO,即不禁锢[root@CentOS7-01 ~]#systemctl restart vsftpd
2.7.2 禁锢或不禁锢特定的系统用户在其家目录中,与上面设置功能相反
# 修改配置文件,然后重启服务chroot_list_enable=YES #去掉前面的#即可chroot_list_file=/etc/vsftpd/chroot_list #同上,该文件需手工创建[root@CentOS7-01 ~]#systemctl restart vsftpd# 注意1)当chroot_local_user=YES时,则chroot_list中用户不禁锢2)当chroot_local_user=NO时,则chroot_list中用户禁锢
2.7.3 出现的错误:500 OOPS: vsftpd: refusing to run with writable root inside chroot()
# 当用户被禁锢在其家目录的情况下,登录会出现上面的错误,因为vsftpd安全检查原因,根目录不能用写权限,但子目录可以有,解决的方法有以下两种1)去掉根目录的写权限chmod -w /home/user2)在配置文件最后添加如下配置,然后重启allow_writeable_chroot=YES
2.8 日志
# wu-ftp日志:默认启用xferlog_enable=YES 启用记录上传下载日志,此为默认值xferlog_std_format=YES 使用wu-ftp日志格式,此为默认值xferlog_file=/var/log/xferlog 可自动生成, 此为默认值# 上面的日志格式太简单,不易读,所以使用vsftpd日志# vsftpd日志:默认不启用dual_log_enable=YES #在配置文件最后加上此配置,然后重启服务vsftpd_log_file=/var/log/vsftpd.log #加了上面的配置后,该文件会自动生成。
2.9 提示信息
2.9.1 登录提示信息
ftpd_banner=Welcome to hechunping FTP service. #先将前面的#注释去掉,然后修改为自定义的提示信息banner_file=/etc/vsftpd/ftpbanner.txt #也可以加上此项配置,将提示信息写到自定义配置文件中[root@CentOS7-01 ~]#vim /etc/vsftpd/ftpbanner.txt^[[31m非法用户,禁止登录^[[0m#操作提示:先按crtl+v,然后不松开再按[
2.9.2 目录访问提示信息
dirmessage_enable=YES #默认值,不用动message_file=.message #在配置文件最后面加上,然后将这个文件建在要访问的目录中,比如用户hechunping的家目录/home/hechunping[root@CentOS7-01 ~]#vim /home/hechunping/.message^[[32m这是hechunping的家目录^[[0m
2.10 PAM模块实现用户访问控制
[root@CentOS7-01 ~]#vim /etc/vsftpd/vsftpd.confpam_service_name=vsftpd #此为默认值# pam配置文件/etc/pam.d/vsftpd# 在下面这个配置文件的用户将被拒绝登录ftp服务器[root@CentOS7-01 ~]#cat /etc/vsftpd/ftpusers# Users that are not allowed to login via ftprootbindaemonadmlpsyncshutdownhaltmailnewsuucpoperatorgamesnobody
2.11 是否启用控制用户登录的列表文件
userlist_enable=YES #默认值,不用动userlist_deny=YES(默认值) #黑名单,不提示口令,NO为白名单userlist_file=/etc/vsftpd/users_list #此为默认值,在此文件中的用户会被直接拒绝,甚至不会提示输入密码
2.12 指定运行vsftpd服务的用户身份
nopriv_user=nobody #此为默认值
2.13 连接数限制
max_clients=number #最大并发连接数,默认2000max_per_ip=number #每个IP同时发起的最大连接数,默认50
2.14 传输速率,字节/秒
anon_max_rate=0 #匿名用户的最大传输速率,默认为0,不限制local_max_rate=0 #本地用户的最大传输速率,默认为0,不限制
2.15 连接时间,以秒为单位
connect_timeout=60 #主动模式数据连接超时时长,默认值accept_timeout=60 #被动模式数据连接超时时长,默认值data_connection_timeout=300 #数据连接无数据输超时时长,默认值idle_session_timeout=300 #无命令操作超时时长,默认值
2.16 优先以文本方式传输
ascii_upload_enable=YES #默认为NOascii_download_enable=YES #同上
2.17 实现基于SSL的FTPS
# 查看是否支持SSL[root@CentOS7-01 certs]#ldd `which vsftpd` | grep libssl.so libssl.so.10 => /lib64/libssl.so.10 (0x00007f7dfd1fa000)# 创建自签名证书[root@CentOS7-01 ~]#cd /etc/pki/tls/certs/[root@CentOS7-01 certs]#make vsftpd.pemumask 77 ; \PEM1=`/bin/mktemp /tmp/openssl.XXXXXX` ; \PEM2=`/bin/mktemp /tmp/openssl.XXXXXX` ; \/usr/bin/openssl req -utf8 -newkey rsa:2048 -keyout $PEM1 -nodes -x509 -days 365 -out $PEM2 ; \cat $PEM1 > vsftpd.pem ; \echo "" >> vsftpd.pem ; \cat $PEM2 >> vsftpd.pem ; \rm -f $PEM1 $PEM2Generating a 2048 bit RSA private key.............................................+++........................+++writing new private key to '/tmp/openssl.SOcSWK'-----You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.-----Country Name (2 letter code) [XX]:CNState or Province Name (full name) []:beijingLocality Name (eg, city) [Default City]:beijingOrganization Name (eg, company) [Default Company Ltd]:abcOrganizational Unit Name (eg, section) []:ITCommon Name (eg, your name or your server's hostname) []:hechunpingEmail Address []:[root@CentOS7-01 certs]#lsca-bundle.crt make-dummy-cert renew-dummy-certca-bundle.trust.crt Makefile vsftpd.pem# 配置vsftpd服务支持SSL,然后重启服务,再使用客户端工具FileZilla测试[root@CentOS7-01 certs]#vim /etc/vsftpd/vsftpd.confssl_enable=YES # 默认为NOrsa_cert_file=/etc/pki/tls/certs/vsftpd.pem #指定证书位置[root@CentOS7-01 certs]#systemctl restart vsftpd
3 vsftpd虚拟用户
# a.什么是虚拟用户1)所有虚拟用户会统一映射为一个指定的系统账号:访问共享位置,即为此系统账号的家目录2)各虚拟用户可被赋予不同的访问权限,通过匿名用户的权限控制参数进行指定# b.虚拟用户账号的存储方式1)文件:编辑文本文件,此文件需要被编码为hash格式,奇数行为用户名,偶数行为密码db_load -T -t hash -f vusers.txt vusers.db2)关系型数据库中的表中:实时查询数据库完成用户认证vsftpd支持mysql库:pam要依赖于pam-mysql/lib64/security/pam_mysql.so/usr/share/doc/pam_mysql-0.7/README
3.1 实现基于文件验证的vsftpd虚拟用户
3.1.1 创建用户数据库文件
[root@CentOS7-01 ~]#cat /etc/vsftpd/vusers.txt hechunping123.comxiaoming123.com[root@CentOS7-01 ~]#cd /etc/vsftpd/db_load -T -t hash -f vusers.txt vusers.db[root@CentOS7-01 vsftpd]#chmod 600 vusers.db
3.1.2 创建用户和访问FTP目录
[root@CentOS7-01 vsftpd]#useradd -d /data/ftproot -s /sbin/nologin -r vuser[root@CentOS7-01 vsftpd]#mkdir -pv /data/ftproot/upload[root@CentOS7-01 vsftpd]#setfacl -m u:vuser:rwx /data/ftproot/upload
3.1.3 创建pam配置文件
[root@CentOS7-01 vsftpd]#vim /etc/vsftpd/vsftpd.confguest_enable=YESguest_username=vuserpam_service_name=vsftpd.db
3.1.4 为虚拟用户建立独立的配置文件
# a.指定各个用户配置文件存放的路径[root@CentOS7-01 vsftpd]#vim /etc/vsftpd/vsftpd.confuser_config_dir=/etc/vsftpd/vusers.d/# b.创建各个用户配置文件存放的路径[root@CentOS7-01 vsftpd]#mkdir /etc/vsftpd/vusers.d[root@CentOS7-01 vsftpd]#cd /etc/vsftpd/vusers.d# c.创建用户hechunping的配置文件,允许可读可写,其它用户只读[root@CentOS7-01 vusers.d]#cat hechunping anon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YES# d.创建用户xiaoming的配置文件,将其登录目录更改为/data/ftproot2[root@CentOS7-01 vusers.d]#cat xiaominglocal_root=/data/ftproot2
3.1.4.1 测试虚拟用户hechunping的权限
[root@CentOS7-01 vusers.d]#ll /data/ftproot/upload/total 0# 在另一台主机上用hechunping虚拟用户登录[root@CentOS7-02 ~]#ftp 192.168.7.71Connected to 192.168.7.71 (192.168.7.71).220 (vsFTPd 3.0.2)Name (192.168.7.71:root): hechunping331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp> ls227 Entering Passive Mode (192,168,7,71,44,8).150 Here comes the directory listing.drwxrwxr-x 2 0 0 6 Dec 23 12:07 upload226 Directory send OK.ftp> cd upload250 Directory successfully changed.ftp> ls227 Entering Passive Mode (192,168,7,71,146,66).150 Here comes the directory listing.226 Directory send OK.ftp> !lsanaconda-ks.cfg testftp> put testlocal: test remote: test227 Entering Passive Mode (192,168,7,71,176,83).150 Ok to send data.226 Transfer complete.ftp> ls227 Entering Passive Mode (192,168,7,71,108,131).150 Here comes the directory listing.-rw------- 1 997 995 0 Dec 23 12:11 test226 Directory send OK.# 从上面的结果发现虚拟用户hechunping是可读可写的
3.1.4.2 测试虚拟用户xiaoming的权限
[root@CentOS7-01 vusers.d]#ls /data/ftproot2/file1# 在另一台主机上用xiaoming虚拟用户登录[root@CentOS7-02 ~]#ftp 192.168.7.71Connected to 192.168.7.71 (192.168.7.71).220 (vsFTPd 3.0.2)Name (192.168.7.71:root): xiaoming331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp> ls227 Entering Passive Mode (192,168,7,71,228,90).150 Here comes the directory listing.-rw-r--r-- 1 0 0 0 Dec 23 09:43 file1226 Directory send OK.ftp> !lsanaconda-ks.cfg testftp> put testlocal: test remote: test227 Entering Passive Mode (192,168,7,71,106,6).550 Permission denied.ftp> cd /etc550 Failed to change directory.ftp> get file1local: file1 remote: file1227 Entering Passive Mode (192,168,7,71,187,241).150 Opening BINARY mode data connection for file1 (0 bytes).226 Transfer complete.ftp> # 从上面的结果来看,虚拟用户xiaoming不能写和切换到别的目录,只能下载指定登录的目录中的文件
3.2 实现基于MYSQL验证的vsftpd虚拟用户
环境准备OS:CentOS7FTP服务器1台数据库服务器一台
3.2.1 在数据库服务器上安装mysql数据库
[root@CentOS7-02 ~]#yum -y install mariadb-server[root@CentOS7-02 ~]#systemctl enable --now mariadb
3.2.2 在数据库服务上配置数据库以支持vsftpd服务
# a.建立存储虚拟用户信息的数据库和表MariaDB [(none)]> create database vsftpd;MariaDB [(none)]> use vsftpd;MariaDB [(none)]> CREATE TABLE users ( id INT AUTO_INCREMENT NOT NULL PRIMARY KEY, name CHAR(50) BINARY NOT NULL, password CHAR(48) BINARY NOT NULL );# b.添加虚拟用户,为了安全应该使用PASSWORD函数加密其密码后存储MariaDB [vsftpd]> INSERT INTO users(name,password) values('zhangsan',password('123.com'));Query OK, 1 row affected (0.00 sec)MariaDB [vsftpd]> INSERT INTO users(name,password) values('lisi',password('123.com'));Query OK, 1 row affected (0.00 sec)# c.创建连接vsftpd数据库的用户MariaDB [vsftpd]> grant select on vsftpd.* to vsftpd@'192.168.7.%' identified by '123.com';Query OK, 0 rows affected (0.00 sec)MariaDB [vsftpd]> flush privileges;Query OK, 0 rows affected (0.01 sec)
3.2.3 在FTP服务器上安装vsftpd和pam_mysql包
# a.安装vsftpd[root@CentOS7-01 ~]#yum -y install vsftpd# b.源码编译安装pam-mysql1)相关依赖包安装[root@CentOS7-01 ~]#yum install vsftpd gcc gcc-c++ make mariadb-devel pam-devel2)下载和编译安装pam-mysql[root@CentOS7-01 ~]#wget http://prdownloads.sourceforge.net/pam-mysql/pam_mysql-0.7RC1.tar.gz[root@CentOS7-01 ~]#tar xvf pam_mysql-0.7RC1.tar.gz[root@CentOS7-01 ~]#cd pam_mysql-0.7RC1[root@CentOS7-01 pam_mysql-0.7RC1]#./configure --with-pam-mods-dir=/lib64/security[root@CentOS7-01 pam_mysql-0.7RC1]#make -j `lscpu |awk 'NR==4{print $2}'` && make install[root@CentOS7-01 pam_mysql-0.7RC1]#ll /lib64/security/pam_mysql.*-rwxr-xr-x 1 root root 882 Dec 23 17:56 /lib64/security/pam_mysql.la-rwxr-xr-x 1 root root 141712 Dec 23 17:56 /lib64/security/pam_mysql.so
3.2.4 在FTP服务器上建立pam认证所需文件
[root@CentOS7-01 pam_mysql-0.7RC1]#cat /etc/pam.d/vsftpd.mysql auth required pam_mysql.so user=vsftpd passwd=123.com host=192.168.7.72 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2account required pam_mysql.so user=vsftpd passwd=123.com host=192.168.7.72 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
注:以上参考pam_mysql-0.7RC1.tar.gz包的README文档
crypt加密方式说明:
0 (or "plain") | 表示不加密 |
1 (or "Y") | 表示使用crypt(3)函数加密 |
2 (or "mysql") | 表示使用mysql password()函数加密 |
3 (or "md5") | 表示使用md5加密 |
4 (or "sha1") | 表示使用sha1加密 |
配置字段说明
auth | 表示认证 |
account | 验证账号密码正常使用 |
required | 表示认证要通过 |
pam_mysql.so | 该模块是默认的相对路径,是相对/lib64/security/路径而言,也可以写绝对路径;后面为给此模块传递的参数 |
user=vsftpd | 登录mysql的用户 |
passwd=123.com | 登录mysql的密码 |
host=192.168.7.72 | mysql服务器的ip地址 |
db=vsftpd | 指定连接mysql的数据库名称 |
table=users | 指定连接数据库中的表名 |
usercolumn=name | 当做用户名的字段 |
passwdcolumn=password | 当做用户名字段的密码 |
crypt=2 | 密码的加密方式为mysql password()函数加密 |
3.2.5 建立相应用户和修改vsftpd配置文件
# a.建立虚拟用户映射的系统用户及对应的目录[root@CentOS7-01 pam_mysql-0.7RC1]#useradd -d /data/ftproot -s /sbin/nologin -r vuser# b.拿掉ftp根目录的写权限[root@CentOS7-01 pam_mysql-0.7RC1]#chmod 555 /data/ftprootmkdir -pv /data/ftproot/{upload,pub}setfacl -m u:vuser:rwx /data/ftproot/{upload,pub}# c.确保/etc/vsftpd/vsftpd.conf中已经启用了以下选项anonymous_enable=YES# d.添加下面两项guest_enable=YES guest_username=vuser# e.修改下面一项,原系统用户将无法登录pam_service_name=vsftpd.mysql# f.启动并设置开机自启vsftpd服务[root@CentOS7-01 pam_mysql-0.7RC1]#systemctl enable --now vsftpd
3.2.6 在FTP服务器上配置虚拟用户具有不同的访问权限
vsftpd可以在配置文件目录中为每个用户提供单独的配置文件以定义其ftp服务访问权限,每个虚拟用户的配置文件名同虚拟用户的用户名。配置文件目录可以是任意未使用目录,只需要在vsftpd.conf指定其路径及名称即可# a.配置vsftpd虚拟用户使用的配置文件目录[root@CentOS7-01 pam_mysql-0.7RC1]#vim /etc/vsftpd/vsftpd.confuser_config_dir=/etc/vsftpd/vusers.d/# b.创建所需要的目录,并为虚拟用户提供配置文件[root@CentOS7-01 pam_mysql-0.7RC1]#mkdir /etc/vsftpd/vusers.d/[root@CentOS7-01 pam_mysql-0.7RC1]#cd /etc/vsftpd/vusers.d/[root@CentOS7-01 pam_mysql-0.7RC1]#touch zhangsan lisi[root@CentOS7-01 vusers.d]#lslisi zhangsan# c.配置虚拟用户的访问权限[root@CentOS7-01 vusers.d]#cat zhangsan anon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YES[root@CentOS7-01 vusers.d]#cat lisilocal_root=/data/ftproot2
3.2.6.1 测试虚拟用户zhangsan的权限
[root@CentOS7-01 ftproot]#tree -d /data/ftproot/data/ftproot├── pub└── upload2 directories# 在另一台主机上用虚拟用户zhangsan登录[root@CentOS7-02 ~]#ftp 192.168.7.71Connected to 192.168.7.71 (192.168.7.71).220 (vsFTPd 3.0.2)Name (192.168.7.71:root): zhangsan331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp> ls227 Entering Passive Mode (192,168,7,71,107,185).150 Here comes the directory listing.drwxrwxr-x 2 0 0 6 Dec 23 13:13 pubdrwxrwxr-x 2 0 0 6 Dec 23 13:32 upload226 Directory send OK.ftp> cd pub250 Directory successfully changed.ftp> !lsanaconda-ks.cfg file1 testftp> ls227 Entering Passive Mode (192,168,7,71,129,21).150 Here comes the directory listing.226 Directory send OK.ftp> put testlocal: test remote: test227 Entering Passive Mode (192,168,7,71,241,98).150 Ok to send data.226 Transfer complete.# 从上面的结果可以发现,虚拟用户zhangsan具有读写权限
3.2.6.2 测试虚拟用户lisi的权限
[root@CentOS7-01 ~]#tree /data/ftproot2//data/ftproot2/└── file10 directories, 1 file# 在在另一台主机上用虚拟用户lisi登录[root@CentOS7-02 ~]#ftp 192.168.7.71Connected to 192.168.7.71 (192.168.7.71).220 (vsFTPd 3.0.2)Name (192.168.7.71:root): lisi331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp> ls227 Entering Passive Mode (192,168,7,71,66,122).150 Here comes the directory listing.-rw-r--r-- 1 0 0 0 Dec 23 09:43 file1226 Directory send OK.ftp> !lsanaconda-ks.cfg file1 testftp> put testlocal: test remote: test227 Entering Passive Mode (192,168,7,71,32,137).550 Permission denied.ftp> cd /var550 Failed to change directory.ftp> get file1local: file1 remote: file1227 Entering Passive Mode (192,168,7,71,180,77).150 Opening BINARY mode data connection for file1 (0 bytes).226 Transfer complete.ftp> # 从上面的结果来看,虚拟用户lisi不能写和切换到别的目录,只能下载指定登录的目录中的文件
3.3 总结
基于文件和MySQL验证的vsftpd虚拟用户的区别:# a.基于文件验证的vsftpd虚拟用户需要手工创建存放用户名和密码的文本文件,不方便管理,并且该文件被编码为hash格式之后还能看到相关的信息[root@CentOS7-01 ~]#cat /etc/vsftpd/vusers.dba 낚23.comxiaoming ȩcRэh^123.comhechunping# b.基于MySQL验证的vsftpd虚拟用户不用事先创建相关的文本文件,直接在相关的用户表使用SQL语句创建即可,维护起来更加方便,并且密码是使用mysql password()函数加密过的,更加安全。推荐使用方式
用户
文件
配置
权限
目录
服务
登录
数据
数据库
系统
加密
密码
提示
服务器
面的
信息
日志
a.
b.
支持
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
郑州网络安全宣传结束了吗
济南计算机网络技术老师
服务器驱动升级导致蓝屏
edb数据库的字段查询
怎么登录电脑云服务器
青海省云主机服务器
永辉软件开发
微信消息服务器
宿城区直销网络技术供应商家
服务器 熊猫酒仙
宝塔一键部署无法创建数据库
网络安全技术警员适合女性吗
imaios服务器y无反应
搭建svn服务器
网络安全危机影响
数据库技术疫情防控
数据库建表怎么添加外键
对峙2怎么没有中国服务器了
同安区网络安全宣传
学而思教育网络技术
网络安全标准体系的意义
灵武市网络安全和信息化
胡素冉网络安全法观后感
残联网络安全事件应急预案方案
荆门软件开发工作
杭州网络安全研究待遇
iPhone软件开发者
网络安全法新闻发布会
石景山区信息化软件开发平台
郑州淘宝软件开发公司