在lftp上用!command执行本地命令
lftp testftp@172.16.178.153:/> !ls
a a.bin.sql a.sql all.sql anaconda-ks.cfg install.log install.log.syslog
获取配置文件帮助:
[root@sherry vsftpd]# man vsftpd.conf
配置文件:
[root@sherry vsftpd]# vim /etc/vsftpd/vsftpd.conf
# 注释
# 是否启用匿名用户
anonymous_enable=YES
# 匿名用户默认再根目录下没有写权限 子目录文件系统有写权限和服务进程开启写就可以写入 跟目录不能改权限
# 上传
#anon_upload_enable=YES
# 删除
#anon_other_write_enable=YES
# 创建目录
#anon_mkdir_write_enable=YES
# 是否允许本地用户访问
local_enable=YES
# 是否允许本地用户上传
write_enable=YES
# 禁锢所有用户家目录 默认no
chroot_local_user=YES
# 开启对记录文件中的用户 禁锢功能 跟上面chroot_local_user=YES 不能同时使用
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list
# 登入信息显示
#ftpd_banner=Welcome to blah FTP service.
# 还可以引入文件
#banner_file=/etc/vsftpd/banner
# 在有.messages的目录 切换到此目录就会显示.messages里面信息
dirmessage_enable=YES
# 用户列表是否启用 默认是黑名单
# 黑名单:userlist_enable=YES userlist_deny=YES 第二选项可省略
# 白名单: userlist_enable=YES userlist_deny=NO
userlist_enable=YES
# 连接限制
# 最大并发连接数
#max_clients
# 每个ip可同时发起并发请求
#max_per_ip
# 传输速率
# 匿名用户的最大传输速率,单位是“字节/秒”
#anon_max_rate
# 本地用户的最大传输速率,单位是“字节/秒”
#local_max_rate
# 上传文件的umask
# 匿名用户上传文件的umask;
#anno_umask
# 本地用户上传文件的umask;
#local_umask
# 修改匿名用户上传文件的属主和属组:
#chown_uploads=YES
#chown_username=someuser
# 日志
xferlog_enable=YES
#xferlog_file=/var/log/xferlog
很多系统用户不能登入比如root:
[root@sherry tftp]# 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
[root@sherry tftp]# cat /etc/vsftpd/ftpusers
# Users that are not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
所有的虚拟用户会映射会一个系统用户,访问时的文件目录是为此系统用户的家目录;
虚拟用户配置:
hash编码的文件:奇数行为用户名,偶数行为密码
关系型数据库:pam-mysql实现认证
查询pam_mysql.so是否安装
[root@sherry vsftpd]# ls /lib64/security/pam_m
pam_mail.so pam_mkhomedir.so pam_motd.so
yum install pam_mysql -y
[root@sherry vsftpd]# ls /lib64/security/pam_m
pam_mail.so pam_mkhomedir.so pam_motd.so pam_mysql.so