运营小白征程之实现root用户与虚拟用户登陆FTP服务器

允许Root用户登陆ftp操作
感悟:
学习如逆水行舟,不进则退。
师者,传道授业解惑也,人非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。(不是我说的,韩愈说的)学习中不懂得要先自己查询资料,如若无法解决就要问。
操作步骤解读:
修改配置文件
[root@zhs Desktop]# vim /etc/vsftpd/vsftpd.conf
内容更改为如下:
anonymous_enable=YES
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
root等一系列系统用户位于“黑名单”拉黑之中,要解除这种状态。
操作:(进入文档,删除root)
vi /etc/vsftpd/ftpusers
vi /etc/vsftpd/user_list
重启ftp服务
systemctl restart vsftpd
测试结果展示
[root@zhs Desktop]# ftp 192.168.100.128
Connected to 192.168.100.128 (192.168.100.128).
220 (vsFTPd 3.0.2)
Name (192.168.100.128:root): root
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
创建虚拟用户及权限管理
虚拟账户:安全性极高
实例操作:
操作:
cd /etc/vsftpd
vi vuser.list//创建用于进行FTP认证的用户数据库文件,其中奇数行为账户名,偶数行为密码。
文件中奇行账户偶行密码
例:a(账户)
A(密码)
生成VSFTPD的认证文件(并且修改认证文件的权限)
db_load -T -t hash -f vuser.list vuser.db
file vuser.db
权限设置:
chmod 600 vuser.db
删除目录(防止密码泄露)
rm -f vuser.list
为了方便管理FTP服务器上的数据,可以把这个系统本地用户的家目录设置为/var目录,为了安全起见,我们将这个系统本地用户设置为不允许登陆ftp服务器,着不会影响用户登录,但是可以避免黑客通过系统本地用户登陆
useradd -d /var/ftproot -s /sbin/nologin virtual
ls -ld /var/ftproot
chmod -Rf 755 /var/ftproot
调用组件认证
vim /etc/pam.d/vsftpd.vu
auth required pam_userdb.so db=/etc/vsftpd/vuser
account required pam_userdb.so db=/etc/vsftpd/vuser
用户目录创建
[root@zhs vsftpd]# mkdir /etc/vsftpd/vuser_dir
[root@zhs vsftpd]# cd /etc/vsftpd/vuser_dir
在需要赋予权限的用户文件下写入下列文本
vim a
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
(不需要赋予权限的直接创建空文件)
修改主文件内容
root@zhs vsftpd]# vi vsftpd.conf
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
allow_writeable_chroot=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd.vu
userlist_enable=YES
tcp_wrappers=YES
user_config_dir=/etc/vsftpd/vuser_dir
重启服务,开机自启
[root@zhs vsftpd]# systemctl restart vsftpd
[root@zhs vsftpd]# systemctl enable vsftpd
开端口(不开端口是没办法使用ftp的)
getsebool -a | grep ftp
setsebool -P ftpd_full_access=on
这是操作结果:
[root@zhs Desktop]# ftp 192.168.200.130
Connected to 192.168.200.130 (192.168.200.130).
220 (vsFTPd 3.0.2)
Name (192.168.200.130:root): a
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mkdir a
550 Create directory operation failed.
ftp> ls
227 Entering Passive Mode (192,168,200,130,187,208).
150 Here comes the directory listing.
drwx—— 2 1001 1001 6 Sep 07 08:26 a
226 Directory send OK.
ftp>exit

猜你喜欢

转载自blog.csdn.net/zhszss/article/details/82492651
今日推荐