Linux FTP 匿名,本地,虚拟用户服务的搭建

1.smdb:TCP 139端口 (SMB协议),445端口(CIFS协议)
2.nmbd:UDP137-138端口 (NetBIOS协议)
3.mount -o :远程挂载 (需要安装samba4-libs包,cifs-utils包)
4.FTP连接
*
控制连接TCP21,发送FTP命令
*
数据连接 TCP20,用于上传下载数据

5.FTP主动被动模式
*
主动:客户机打开端口,等待服务器发送数据(tcp21端口,tcp20端口)
*
被动:服务器打开端口,等待客户机发送数据(tcp20端口,一个未知高级端口)

6.FTP传输模式
*
文本模式:ASCII,字符编码方式,用于纯文本文件的发送
*
二进制模式:(Binary 模式)用于传输文本文件和非文本文件

7.C/S:客户端服务 B/S:浏览器服务

8.FTP服务分为三种
*
匿名用户名:用户名为ftp或者anonymous,提供任意密码即可.
*
本地用户(搭建的sercer端服务器):要求有用户名和相对应密码,适用于使用者都是使用此服务器的人。
*
虚拟用户(出于安全考虑):通过独立的用户数据库文件(映射主机内创建的用户)来进行登录验证。

9.server端需要安装vsftpd软件,设置时系统权限和配置文件权限都要打开,配置文件修改后要重启服务,并且关闭防火墙和selinux。

10.匿名FTP服务搭建
重点:开启系统权限,修改配置文件
yum -y install vsftpd ftp #安装软件
rpm -ql vsftpd |less #查看是否成功安装
systemctl restart vsftpd #开启vsftpd功能
netsat -anpt |grep 21 #测试
或打开浏览器或宿主机此电脑或linux中搜索 ftp://192.168…测试
ll /var/ftp/pub/ -d #查看权限或 grep ftp /etc/passwd
chown ftp /var/ftp/pub #设为属主
rpm -qc vsftpd #查看配置文件
cd /etc/vsftpd #切换目录
ls #查看
cp vsftpd.conf{,.ori} #安全备份
vi vsftpd.conf
在这里插入图片描述
systemctl restart vsftpd #重启服务
ll /var/ftp/pub
可在当前目录创建测试文件检测

11.本地用户FTP服务搭建

useradd amber
useradd tom #创建用户
echo “123” |passwd --stdin amber &> /dev/null
echo “123” |passwd --stdin amber &> /dev/null #设置密码
tail -2 /etc/shadow #查看
cd /etc/vsftpd #切换目录
vim vsftpd.conf
添加 allow_writeable_chroot=YES
systemctl start vsftpd #开启服务
自主测试即可

12.黑名单

/etc/vsftpd目录下 有两个黑名单分别为ftpusers,user_list。
ftpusers优先级高于user_list。
user_list也可以设置为白名单,需要修改配置文件 /etc/vsftpd/vsftpd.conf,在其中加入userlist_deny=NO,
userlist_enable=YES。

13.虚拟FTP服务搭建

cd /etc/vsftpd
cp vsftpd.conf.ori vsftpd.conf #若之前做过别的要改回初始配置文件
vim vusers.txt #加入用户例如zhangsan 123 李四 456 …

file vuser.txt
db_load -T -t hash -f vusers.txt vusers.db
file vusers.db
chmod 600 vusers.*
useradd -d /var/ftproot -s /sbin/nologin vuser
#以上步骤修改文件为博客里数据库格式

cd /etc/pam.d
cp vsftpd vsftpd.vu
vim vsftpd.vu
在这里插入图片描述
#以上步骤为PAM认证过程配置

vim vsftpd.conf
在这里插入图片描述
systemctl restart vsftpd #重启服务
chmod 777 /var/ftproot #更改权限
touch /var/ftproot/vuser.txt #创建测试文件 开启匿名权限后可以上传文件(在 /etc/vsftpd.conf中加入anno_other_write_enable=YES)

14.虚拟FTP中不同用户不同配置方法
cd /etc/vsftpd
mkdir vusers_dir
touch vusers_dir/{zhangsan,lisi,wangwu…}
vim vusers_dir /wangwu
写入anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/ftp/wangwu
mkdir /ftp/wangwu -p
chmod 777 /ftp/wangwu
touch /ftp/wangwu/wangwu.txt
vim vsftpd.conf
添加
user_config_dir=/etc/vsftpd/vusers_dir

猜你喜欢

转载自blog.csdn.net/qq_39109226/article/details/109539618