第七章 Centos 7 Linux配置ftp 实训任务1:FTP服务器加密传输

服务器技术与应用

第一章 VMware Workstation Pro 17安装Centos 7 安装虚拟机及简单配置
第二章 Centos 7 Linux配置ssh 实训任务:SSH的安全配置
第三章 Centos 7 Linux配置samba 实训任务1:Samba服务器配置
第四章 Centos 7 Linux配置dhcp 实训任务1:使用DHCP中继部署多子网环境
第五章 Centos 7 Linux配置dns 实训任务:部署DNS服务器
第六章 Centos 7 Linux配置web 实训任务:Apache服务器部署
第七章 Centos 7 Linux配置ftp 实训任务1:FTP服务器加密传输
第八章 Centos 7 Linux配置mariadb 实训任务:部署数据库


第七章 Centos 7 Linux配置ftp 实训任务1:FTP服务器加密传输


前言

前面的DNS一定要成功才能做!!!
虚拟机需求:1台DNS服务器(Server)、1台Web服务器(Ftp Server)、1台客户端(Client1)

在第五章的基础上继续实训

FTP服务器加密传输

任务情境描述
某公司在需要使用vsftpd搭建一台FTP服务器,用于web站点资料的更新和公司公用文件的存放。为了保证客户机和服务器之间传输数据的保密性和完整性,公司决定使用SSL/TLS协议加固FTP服务器,客户机和服务器之间采用SSL/TLS协议加密数据。

任务要求:

1. 禁止使用不安全的FTP,请使用“CA”证书颁发机构,颁发的证书,启用FTPS服务;

Country Name (2 letter code) [XX]:CN
State or Province Name (fullname) []:GD
Locality Name (eg, city) [Default City]:GuangZhou
Organization Name (eg, company) [Default Company Ltd]:mydomain.com
Organizational Unit Name (eg, section) []:Operations Departments
Common Name (eg, your name or your server’s hostname)[]:ftp.mydomain.com

2. 使用ftp.mydomian.com域名访问服务器;

3. 用户webadmin,登录ftp服务器,根目录为/webdata/;

4. 登录后限制在自己的根目录;

5. 允许WEB管理员上传和下载文件,但是禁止上传后缀名为.doc .docx .xlsx的文件;

6. 限制用户的下载最大速度为100kb/s;最大同一IP在线人数为2人;

7.用于通过工具或者浏览器下载的最大速度不超过100kb/s;

8. 一个IP地址同时登陆的用户进程/人数不超过2人。

一、配置Ftp服务器(Ftp Server)的IP地址

BOOTPROTO=static
IPADDR=192.168.1.100
GATEWAY=192.168.1.2
NETMASK=255.255.255.0
DNS1=192.168.1.10
DNS2=202.96.128.86

在这里插入图片描述

二、 为Ftp服务器(Ftp Server)安装vsftp服务

yum -y install vsftpd	//安装vsftp服务
systemctl start vsftpd	//开启vsftp服务
systemctl enable vsftpd	//开机自启

在这里插入图片描述

三、Ftp服务器(Ftp Server)生成证书

创建目录[root@webserver webserver]# mkdir /etc/ssl/serverkey
生成证书[root@webserver webserver]# openssl req -x509 -nodes -keyout /etc/ssl/serverkey/vsftpd.pem -out /etc/ssl/serverkey/vsftpd.pem -days 365 -newkey rsa:2048
Generating a 2048 bit RSA private key
................+++
.....+++
writing new private key to '/etc/ssl/serverkey/vsftpd.pem'
-----
You are about to be asked to enter information that will be incorporated
into 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 blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [CN]:
State or Province Name (full name) [China]:GD
Locality Name (eg, city) [GuangZhou]:
Organization Name (eg, company) [ymx.com]:
Organizational Unit Name (eg, section) []:Operations Departments
Common Name (eg, your name or your server's hostname) []:ftp.ymx.com
Email Address []:
[root@webserver webserver]#

图片打反了 别按照图片 按上面的文本
在这里插入图片描述

四、 Ftp服务器(Ftp Server)防火墙设置

允许ftp通过[root@webserver webserver]# firewall-cmd --permanent --zone=public --add-service=ftp
success
允许端口通过[root@webserver webserver]# firewall-cmd --permanent --zone=public --add-port=990/tcp
success
允许端口通过[root@webserver webserver]# firewall-cmd --permanent --zone=public --add-port=990/udp
success
允许端口通过[root@webserver webserver]# firewall-cmd --permanent --zone=public --add-port=40000-50000/tcp
success
允许端口通过[root@webserver webserver]# firewall-cmd --permanent --zone=public --add-port=40000-50000/udp
success
重启防火墙[root@webserver webserver]# firewall-cmd --reload 
success
[root@webserver webserver]# 

在这里插入图片描述

五、 Ftp服务器(Ftp Server)配置vsftp文件

vim /etc/vsftpd/vsftpd.conf

最后插入

ssl_enable=yes
ssl_tlsv1=yes
ssl_sslv2=no
ssl_sslv3=no
rsa_private_key_file=/etc/ssl/serverkey/vsftpd.pem
rsa_cert_file=/etc/ssl/serverkey/vsftpd.pem
allow_anon_ssl=no
force_local_logins_ssl=yes
force_local_data_ssl=yes
pasv_min_port=40000
pasv_max_port=50000
systemctl restart vsftpd	//重启

图片打错了请按照上面文本打
在这里插入图片描述
在这里插入图片描述

六、创建用户和根目录以及虚拟用户(详情看学习通ftp虚拟用户章节 这里不做过多解释)

看不懂去看ppt

[root@webserver webserver]# useradd webadmin -s /sbin/nologin 
[root@webserver webserver]# useradd admin -s /sbin/nologin  
[root@webserver webserver]# passwd --stdin webadmin 
更改用户 webadmin 的密码 。
root
passwd:所有的身份验证令牌已经成功更新。
[root@webserver webserver]# passwd --stdin admin
更改用户 admin 的密码 。
root
passwd:所有的身份验证令牌已经成功更新。
[root@webserver webserver]# vim /etc/vsftpd/vusr.txt 
webadmin
root
admin
root
[root@webserver webserver]# mkdir -p /var/ftp/pub/ /webdata
[root@webserver webserver]# chmod 777 /webdata
[root@webserver webserver]# chown webadmin /var/ftp/pub/ /webdata
[root@webserver webserver]# rpm -qf /usr/bin/db_load
libdb-utils-5.3.21-24.el7.x86_64
[root@webserver webserver]# db_load -T -t hash -f /etc/vsftpd/vusr.txt /etc/vsftpd/vusr.db
[root@webserver webserver]# file /etc/vsftpd/vusr.db
/etc/vsftpd/vusr.db: Berkeley DB (Hash, version 9, native byte-order)
[root@webserver webserver]# chmod 600 /etc/vsftpd/vusr.*
[root@webserver webserver]# cp -p /etc/pam.d/vsftpd /etc/pam.d/vsftpd-vusr
[root@webserver webserver]# vim /etc/pam.d/vsftpd-vusr
auth       sufficient   /lib64/security/pam_userdb.so db=/etc/vsftpd/vusr
account    sufficient   /lib64/security/pam_userdb.so db=/etc/vsftpd/vusr
[root@webserver webserver]# vim /etc/vsftpd/vsftpd.conf 
local_enable=yes
chroot_local_user=yes
pam_service_name=vsftpd-vusr
guest_enable=yes
guest_username=webadmin
user_config_dir=/etc/vsftpd/vconfig
virtual_use_local_privs=yes
allow_writeable_chroot=yes
[root@webserver webserver]# mkdir /etc/vsftpd/vconfig/
[root@webserver webserver]# vim /etc/vsftpd/vconfig/webadmin
local_root=/webdata
[root@webserver webserver]# vim /etc/vsftpd/vconfig/admin
local_root=/webdata
write_enable=no
[root@webserver webserver]# setsebool -P ftpd_full_access on
[root@webserver webserver]# systemctl restart vsftpd

七、 使用域名登录要在Dns服务器(Dns Server)上正反向加上一条(略过)

在这里插入图片描述

八、任务需求后四项Ftp服务器(Ftp Server)上修改配置文件

vim /etc/vsftpd/vsftpd.conf
#允许WEB管理员上传和下载文件,但是禁止上传后缀名为.doc .docx .xlsx的文件;
deny_file={*.doc,*.docx,*.xlsx}
#限制用户的下载最大速度为100kb/s;用于通过工具或者浏览器下载的最大速度不超过100kb/s;人数为2人;
local_max_rate=102400
#最大同一IP在线
max_per_ip=2
#一个IP地址同时登陆的用户进程/人数不超过2人。
max_clients=2
systemctl restart vsftpd

九、客户端(client1)测试

1. 安装ftp服务和FileZilla

yum -y install epel-release
yum -y install filezilla

在这里插入图片描述

2. 创建测试文件

[root@client server]# mkdir /home/server/test /*server是我的用户名,看情况来*/
[root@client server]# chmod 777  /home/server/test
[root@client server]# cd /home/server/test/
[root@client test]# vim test.txt
[root@client test]# vim test.doc
[root@client test]# vim test.docx
[root@client test]# vim test.xlsx

3. 尝试域名带证书CA登录ftp

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

登录成功!

4. 尝试禁止上传文件类型上传

在这里插入图片描述

上传失败!

5. 尝试下载文件

在这里插入图片描述
成功!

6. 单IP多用户登录

在这里插入图片描述

最多只能2个不能再多了!

至此,实验结束。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在CentOS 7上搭建FTP服务器,您可以按照以下步骤进行操作: 1. 安装vsftpd(非加密传输)或proftpd(支持加密传输)软件包。使用以下命令之一进行安装: 对于vsftpd: ``` sudo yum install vsftpd ``` 对于proftpd: ``` sudo yum install proftpd ``` 2. 启动FTP服务器并设置其在系统引导时自动启动。使用以下命令: 对于vsftpd: ``` sudo systemctl start vsftpd sudo systemctl enable vsftpd ``` 对于proftpd: ``` sudo systemctl start proftpd sudo systemctl enable proftpd ``` 3. 配置防火墙以允许FTP流量通过。可以使用以下命令打开FTP传输控制协议(port 21)和被动FTP端口范围(通常是端口 1024-65535): ``` sudo firewall-cmd --permanent --add-port=21/tcp sudo firewall-cmd --permanent --add-port=1024-65535/tcp sudo firewall-cmd --reload ``` 4. 如果您使用的是vsftpd,可以编辑其配置文件来进行更多设置。使用以下命令打开vsftpd配置文件: ``` sudo vi /etc/vsftpd/vsftpd.conf ``` 根据您的需求进行设置,例如,您可以指定允许登录的用户、限制用户的访问范围等等。完成后保存并关闭文件。 5. 如果您使用的是proftpd,可以编辑其配置文件来进行更多设置。使用以下命令打开proftpd配置文件: ``` sudo vi /etc/proftpd.conf ``` 根据您的需求进行设置,例如,您可以指定允许登录的用户、限制用户的访问范围等等。完成后保存并关闭文件。 6. 如果您使用的是vsftpd,并希望允许匿名用户登录,还需要为其创建一个专用目录。使用以下命令创建目录并设置其权限: ``` sudo mkdir /var/ftp/pub sudo chmod 755 /var/ftp/pub ``` 7. 重新启动FTP服务器以使更改生效: 对于vsftpd: ``` sudo systemctl restart vsftpd ``` 对于proftpd: ``` sudo systemctl restart proftpd ``` 现在您已经成功在CentOS 7上搭建了FTP服务器。您可以使用FTP客户端连接到您的服务器并开始传输文件。请确保将安全性和权限设置为符合您的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叶泯希

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值