CentOS7下的vsftpd服务器和客户端
目录
1、安装vsftpd服务器和ftp客户端;
2、配置vsftpd服务器,允许普通用户登录、下载、上传文件;
3、配置vsftpd服务器,允许anonymous用户登录、下载、上传文件;
4、配置vsftpd服务器,允许root用户登录、下载、上传文件;
5、只允许IP地址为192.168.98.1(Windows主机)和192.168.98.33(Linux主机)的ftp客户端访问vsfptd服务器;
TCP_Wrappers的工作原理
配置tcp_wrappers的两种方式(本次vsftpd的要求)
6、利用vsftpd服务器搭建yum源,并配置yum客户端测试安装卸载软件包。
1、安装vsftpd服务器和ftp客户端;
yum install -y vsftpd
yum install -y ftp
# 启动vsftpd
systemctl start vsftpd
systemctl enable vsftpd
2、配置vsftpd服务器,允许普通用户登录、下载、上传文件;
## 默认普通用户可以登录 上传 下载
# 在192.168.98.11上创建用户
useradd zhouxingchi -p 123456
# 在其家目录创建文件zhou.txt
cd /home/zhouxingchi
touch zhou.txt
# 在192.168.98.33上创建文件test.txt(因为上传只能为文本文件或者二进制文件)访问vsftpd服务器
touch test.txt
ftp 192.168.98.11
# 输入用户zhouxingchi,密码123456
# 登录成功后上传文件,下载文件,查看文件(普通用户默认都可以)
put test.txt
get zhou.txt
3、配置vsftpd服务器,允许anonymous用户登录、下载、上传文件;
## 默认anonymous可以登录、下载,但没有上传权限
# vsftpd的配置文件在/etc/vsftpd/vsftpd.conf
vi /etc/vsftpd/vsftpd.conf
# 将配置文件中该行的“#”去掉
# anon_upload_enable=YES
anon_upload_enable=YES
# 重启vsftpd服务
systemctl restart vsftpd
# 使用匿名用户登录
ftp 192.168.98.11
# 输入anonymous,密码直接enter,尝试上传文件
put test.txt # 依旧提示不可创建,但并非被拒绝
local: test.txt remote: test.txt
227 Entering Passive Mode (192,168,98,11,86,235).
553 Could not create file.
# 这里是因为对/var/ftp/pub目录没有写的权限,这里新建一个目录,设置权限为777
mkdir /var/ftp/pub/incoming
chmod 777 /var/ftp/pub/incoming
touch /var/ftp/pub/incoming/incoming.txt
# 这下在incoming文件夹下就可以上传文件了
ftp> cd incoming
ftp> put test.txt
local: test.txt remote: test.txt
227 Entering Passive Mode (192,168,98,11,47,177).
150 Ok to send data.
226 Transfer complete.
4、配置vsftpd服务器,允许root用户登录、下载、上传文件;
# 在/etc/vsftpd/vsftpd.conf中,默认有userlist_enable=YES的配置项
# 代表开启黑名单(如果为NO代表开启的是白名单),其中在/etc/vsftpd下的文件user_list和ftpusers都需注释掉root用户
vi /etc/vsftpd/user_list
# root
vi ftpusers
# root
# 保险起见重启vsftpd服务
systemctl restart vsftpd
# 尝试在192.168.98.33使用root登录成功
ftp 192.168.98.11
Name (192.168.98.11:root): root
Password:
230 Login successful.
ftp> put test.txt # 上传文件
ftp> get file1 # 下载文件,自己定义
5、只允许IP地址为192.168.98.1(Windows主机)和192.168.98.33(Linux主机)的ftp客户端访问vsfptd服务器;
TCP_Wrappers的工作原理
配置tcp_wrappers的两种方式(本次vsftpd的要求)
# 方式一,先配置/etc/hosts.deny,再配置/etc/hosts.allow
vi /etc/hosts.deny
vsftpd:ALL
# 测试是否都不可访问
ftp 192.168.98.11
Connected to 192.168.98.11 (192.168.98.11).
421 Service not available.
vi /etc/hosts.allow
vsftpd:192.168.98.33,192.168.98.1
# 测试,现在允许192.168.98.11登录了
ftp 192.168.98.11
Connected to 192.168.98.11 (192.168.98.11).
220 (vsFTPd 3.0.2)
Name (192.168.98.11:root):
# 方式二,直接再/etc/hosts.allow中配置
vsftpd:192.168.98.33,192.168.98.1
vsftpd:ALL:deny
6、利用vsftpd服务器搭建yum源,并配置yum客户端测试安装卸载软件包。
方法描述查看前文:centos7yum服务器的搭建
# yum服务器搭建过程
mount /dev/sr1 /media/centos-httpd
mkdir /var/ftp/pub/centos-vsftpd
cp -a /media/centos-httpd/Packages/ /var/ftp/pub/centos-vsftpd/
createrepo /var/ftp/pub/centos-vsftpd/
# 客户端配置
vi /etc/yum.repos.d/centos-vsftpd.repo
[centos-vsftpd]
name=centos-vsftpd
baseurl=ftp://192.168.98.11/pub/centos-vsftpd
gpgcheck=1
enabled=1
# 测试
yum clean all
yum makecache
yum repolist all
yum search tomcat
yum install -y tomcat
yum remove -y tomcat