网络安全防御

访问存储设备

什么是挂载

挂载,装载

  • 将光盘/U盘/分区/网络存储等设备装到某个Linux目录
  • 通过访问这个目录来操作设备上的文档

11.1.1

挂载设备

关于分区/U盘/光盘设备文件

  • 分区,一般是/dev/sda1、/dev/sda2等等

  • U盘,一般是/dev/sdb1

  • 光盘,一般是/dev/cdrom,指向/dev/sr0等设备

  • 示例:挂载openEuler光盘

    • 插入openEuler光盘(虚拟机连ISO文件)
    • 准备挂载点
    • 挂载光盘(mount)
1
2
3
[root@ntd ~]# mkdir /mnt/dvd               //创建目录(挂载点)

[root@ntd ~]# mount /dev/cdrom /mnt/dvd/ //进行挂载

访问设备内的文档

挂载成功后,通过挂载点即可访问光盘内文档

1
2
[root@ntd ~]# ls /mnt/dvd/              //列出光盘目录内容
docs EFI images isolinux ks Packages repodata RPM-GPG-KEY-openEuler TRANS.TBL

卸载设备

卸载已挂载的openEuler光盘

  • 卸载完毕后,挂载点与对应设备无任何关系
1
2
[root@ntd ~]# umount /mnt/dvd        //卸载设备
[root@ntd ~]# ls /mnt/dvd/ //挂载点已为空

认识/etc/fstab配置

开机挂载解析

  • 在/etc/fstab文件中添加设备记录
  • 文件系统类型:iso9660、xfs、swap、ext4

11.1.2

配置开机挂载

建挂载点 –> 配置stab –> 检查配置 –> 重启验证

1
2
3
4
5
6
[root@ntd ~]# mkdir -p /repos/openEuler         //创建自动挂载点
[root@ntd ~]# vim /etc/fstab //编辑开机自动挂载配置

/dev/cdrom /repos/openEuler iso9660 ro 0 0

[root@ntd ~]# mount -a //检查开机挂载配置(无报错)

重启系统,检查开机挂载效果

1
2
3
4
[root@ntd ~]# reboot
[root@ntd ~]# ls /repos/openEuler/
docs images ks repodata TRANS.TBL
EFI isolinux Packages RPM-GPG-KEY-openEuler

配置yum源

yum工作机制

YUM,Yellowdog Updater Modified,黄狗升级器

  • 软件仓库:集中分发.rpm 软件包资源,并解决软件之间的依赖关系
  • 客户机:使用yum或dnf 查询/安装/卸载软件

11.1.3

软件仓库提供方式

软件资源哪里来

11.1.4

准备软件仓库目录

openEuler安装盘已预先配置成软件仓库,可以直接使用

  • 比如,已挂载了openEuler光盘的/repos/openEuler目录

11.1.5

禁用无效源

对于用不到/不能用的源(比如官方源),可以直接删除

  • 配置位置: /etc/yum.repos.d/*.repo
1
[root@ntd ~]# rm -rf /etc/yum.repos.d/*               //删除所有旧的软件源

设置有效源

通过辅助配置工具快速设置指定的软件源

  • 用法:yum-config-manager –add-repo 软件源URL地址
1
2
3
4
5
[root@ntd ~]# yum-config-manager --add https://mirrors.aliyun.com/centos-stream/9-stream/BaseOS/x86_64/os
//阿里的基础软件源
[root@ntd ~]# yum-config-manager --add https://mirrors.aliyun.com/centos-stream/9-stream/AppStream/x86_64/os
//阿里的应用软件源
[root@ntd ~]# ls /etc/yum.repos.d/ //确认结果配置

关闭软件来源检查

系统对软件来源合法性的检查

  • 默认只建议安装官方来源的应用软件
  • 但是需要提供发布者的秘钥
1
2
3
4
[root@ntd ~]# vim /etc/yum.conf

[main]
gpgcheck=0 //将1改为0可以关闭检查

结果验证

重新获取源数据,确保有可用仓库

1
2
3
[root@ntd ~]# yum repolist -v       //检查仓库列表

Total packages: 20,176 //软件源,显示提供包的数量

使用yum管理软件

list列出软件

用来获知xx软件是否已安装/版本/来源

  • 格式:yum list[软件名]
1
2
3
4
[root@ntd ~]# yum list httpd

Available Packages
httpd.x86_64 2.4.57-5.el9 mirrors.aliyun.com_centos-stream_9-stream_AppStream_x86_64_os

install 安装软件

安装软件

  • 格式:yum [-y] install 软件名|文件名
  • 软件名(yum仓库),文件名(离线安装包)
1
2
3
4
[root@ntd ~]# yum -y install httpd

Installing:
httpd x86_64 2.4.57-5.el9 mirrors.aliyun.com_centos-stream_9-stream_AppStream_x86_64_os 47 k

remove 卸载软件

卸载软件

  • 格式:yum [-y] remove 软件名
1
[root@ntd ~]# yum -y remove httpd

LAMP部署及测试

B/S服务架构

基于Browser/Server架构的网页资源通信

  • 服务端:支持HTTP协议的网页提供程序
  • 浏览器/客户端:下载并按标记规范显示网页的浏览器程序

11.1.6

如何获取网站资源

URL网址

  • Uniform Resource Locator,统一资源定位器
  • 资源类别://服务器地址/目录路径/文件名

静态网站与动态网站

静态网站(只读)

  • 访问同一个网址时,看到的网页资源是固定不变的
  • 比如index.html、.txt、 .targz、 .png、 .jpg、.gif

动态网站(可交互)

  • 访问同一个网址(网页程序) 时,看到的网页资源是变化的…..
  • 比如.php、.jsp、.wsgi 、.asp、

什么是LAMP

一种成熟的动态企业网站服务器模式

  • Apache在最前端,负责处理来自浏览器的Web访问请求

11.1.7

快速安装LAMP平台

离线安装

  • 预先准备离线素材,上传到/root/目录下
1
2
3
4
5
[root@ntd ~]# yum -y remove openEuler-logos            //卸载冲突包

[root@ntd ~]# ls /root/lamp80/ //查看是否上传成功

[root@ntd ~]# yum -y install /root/lamp80/*.rmp //安装
  • 确认安装结果,不要有遗漏
1
2
3
4
5
6
7
[root@ntd ~]# yum list httpd mariadb-server php-fpm php-mysqlnd

Installed Packages //已安装的软件包
httpd.x86_64 2.4.53-7.el9 @@commandline
mariadb-server.x86_64 3:10.5.16-2.el9 @@commandline
php-fpm.x86_64 8.0.20-3.el9 @@commandline
php-mysqlnd.x86_64 8.0.20-3.el9 @@commandline

启动LAMP平台

openEuler中默认提供三个服务

  • httpd网站
  • mariadb数据库
  • php-fpm编程语言
1
2
3
4
[root@ntd ~]# systemctl  enable --now httpd mariadb php-fpm
//设置服务开机自启
[root@ntd ~]# setenforce 0
//关闭SELinux
  • 允许80端口通过防火墙
1
2
3
4
[root@ntd ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent      //允许TCP80端口通过防火墙
success

[root@ntd ~]# systemctl restart firewalld //重启防火墙

从浏览器访问

  • http://虚拟机的IP地址/

11.1.8

检查PHP环境

在网站根目录下创建PHP环境测试文件

1
2
3
4
5
vim /var/www/html/t1.php

<?php
phpinfo(); //显示PHP版本等信息
?>

检查PHP网页访问数据库

在网站根目录下建立数据库测试文件

1
2
3
4
5
6
7
8
9
10
[root@ntd ~]# mysqladmin -uroot password 'db@1234'
[root@ntd ~]# vim /var/www/html/t2.php

<?php
$mysqli=new mysqli('127.0.0.1','root','db@1234');
if (mysqli_connect_errno()){
echo '连接数据库失败';
}
else echo '连接数据库成功';
?>

mysql_secure_installation安全加固

默认设置很方便,也很不安全

  • 需要为MariaDB/MySQL的test库、空密码等默认设置填坑(除密码设置外,一路回车)
  • 注意:生产环境建议运行此脚本,并仔细完成所有安全优化操作
1
[root@ntd ~]# mysql_secure_installation

做快照

做快照,记录LAMP状态

11.1.9