17、RHEL 8 系统:容器、Web 服务器与邮件服务器配置指南

RHEL 8 系统:容器、Web 服务器与邮件服务器配置指南

1. Linux 容器管理

在 RHEL 8 系统中,使用 podman、skopeo 和 buildah 工具,结合 Cockpit 网络界面,可实现 Linux 容器的创建与管理。容器运行后会出现在列表中,通过图 26 - 5 中高亮的按钮,能对容器进行启动、停止、暂停和保存等操作。也可通过命令行来访问和管理容器。

2. RHEL 8 Web 服务器搭建
2.1 配置要求

要搭建自己的网站,需要计算机(或云服务器实例)、操作系统、Web 服务器、域名、名称服务器和 IP 地址。这里假设使用 RHEL 8 操作系统,它支持 Apache Web 服务器。域名可通过域名注册服务进行注册。若在云实例上运行 RHEL 8,提供商分配的 IP 地址会列在服务器概述信息中;若自行托管服务器且互联网服务提供商(ISP)分配了静态 IP 地址,则需使用名称服务器将域名与该地址关联;若没有静态 IP 地址,可使用免费的动态 DNS(DDNS)服务将动态 IP 地址映射到域名。

配置要素 详情
计算机或云服务器实例 运行 RHEL 8 系统的物理机或云服务
操作系统 RHEL 8
Web 服务器 Apache
域名 通过域名注册服务获取
名称服务器 关联域名与 IP 地址
IP 地址 静态或动态
2.2 安装 Apache Web 服务器包

RHEL 当前版本通常不会默认安装 Apache Web 服务器。可通过以下命令检查服务器是否已安装:

# rpm -q httpd

若输出类似 httpd - 2.4.35 - 6.el8 + 2089 + 57a79027.x86_64 ,则表示已安装;若输出 “package httpd is not installed”,则需运行以下命令进行安装:

# dnf install httpd
2.3 配置防火墙

在启动和测试 Apache Web 服务器之前,需修改防火墙以允许服务器与外界通信。默认情况下,HTTP 和 HTTPS 协议分别使用 80 和 443 端口,根据使用的协议,需打开相应端口,并指定面向互联网的网络连接所属的防火墙区域:

# firewall-cmd --permanent --zone=<zone> --add-port=80/tcp
# firewall-cmd --permanent --zone=<zone> --add-port=443/tcp

打开必要端口后,需重新加载防火墙设置:

# firewall-cmd --reload

对于云托管服务器,可能还需在云控制台中为服务器实例启用相应端口,具体操作可参考云提供商的文档。

2.4 端口转发

若托管 Web 服务器的 RHEL 8 系统位于受防火墙保护的网络中,需配置防火墙将 80 和/或 443 端口转发到 Web 服务器系统。不同防火墙和设备的配置机制不同,需查看相关文档进行配置。

2.5 启动 Apache Web 服务器

安装 Apache 服务器并配置好防火墙后,需验证服务器是否运行,必要时启动它。可通过以下命令检查 Apache httpd 服务的状态:

# systemctl status httpd

若上述命令显示 httpd 服务未运行,可使用以下命令启动:

# systemctl start httpd

若希望系统启动时自动启动 Apache httpd 服务,可运行以下命令:

# systemctl enable httpd
2.6 测试 Web 服务器

安装完成后,需验证 Web 服务器是否正常运行。若可访问服务器的桌面环境,可在浏览器地址栏输入 http://127.0.0.1 进行测试;若无法访问桌面环境,可从同一本地网络的其他系统或使用服务器的外部 IP 地址进行访问。

2.7 为域名配置 Apache Web 服务器

接下来需为域名配置 Web 服务器。首先进入 /etc/httpd/conf 目录,编辑 httpd.conf 文件。常见的配置方法是添加虚拟主机条目,例如:

<VirtualHost *:80>
    ServerAdmin feedback@myexample.com
    ServerName www.myexample.com
    DocumentRoot /var/www/myexample
    ErrorLog logs/myexample_error_log
    CustomLog logs/myexample_access_log combined
</VirtualHost>

需根据实际情况修改 ServerAdmin ServerName DocumentRoot 等设置。创建相应的目录并在其中放置 index.html 文件,最后重启 httpd 服务:

# systemctl restart httpd

通过浏览器使用域名访问网站,验证配置是否生效。

2.8 安全网站基础

目前创建的 Web 服务器和网站使用 HTTP 协议,数据以明文传输,存在安全风险。现代网站通常使用 HTTPS 协议,通过 SSL 或 TLS 建立安全的加密通信,需使用由受信任的证书颁发机构(CA)颁发的证书。

当浏览器连接到安全网站时,服务器会发送 SSL 证书(包含公钥),浏览器验证证书的真实性后,使用公钥加密会话密钥并发送给服务器,服务器使用私钥解密会话密钥,之后双方使用会话密钥加密后续数据传输,直至会话结束。

2.9 为 HTTPS 配置 Apache

默认情况下,Apache 服务器不包含实现安全 HTTPS 网站所需的模块。需先安装 mod_ssl 模块:

# dnf install mod_ssl

安装完成后重启 httpd 服务:

# systemctl restart httpd

使用以下命令检查模块是否已加载:

# apachectl -M | grep ssl_module
2.10 获取 SSL 证书

网站的证书需从证书颁发机构获取,推荐从 Let’s Encrypt 获取免费证书。具体步骤如下:
1. 按照 Let’s Encrypt 网站的步骤下载并安装 Certbot 工具。
2. 运行以下命令生成并安装证书:

# certbot --apache
  1. 根据提示选择要启用 HTTPS 的域名,Certbot 会进行相关检查并安装证书。
  2. Certbot 会创建 httpd - le - ssl.conf 文件,其中包含安全虚拟主机条目。
  3. 最后,Certbot 会询问是否将未来的 HTTP 请求重定向到 HTTPS,建议选择重定向。

安装证书后,可通过 https://www.ssllabs.com/ssltest/analyze.html?d=www.myexample.com 进行测试,若配置成功,SSL Labs 报告会给出较高评分。最后,使用 https:// 前缀在浏览器中访问网站,验证连接是否安全。

graph LR
    A[开始] --> B[检查 Apache 安装]
    B -- 已安装 --> C[配置防火墙]
    B -- 未安装 --> D[安装 Apache]
    D --> C
    C --> E[端口转发配置]
    E --> F[启动 Apache]
    F --> G[测试 Web 服务器]
    G -- 成功 --> H[配置域名]
    H --> I[配置 HTTPS]
    I --> J[获取 SSL 证书]
    J --> K[测试 HTTPS]
    K --> L[完成]
3. RHEL 8 Postfix 邮件服务器配置
3.1 邮件系统结构

一个完整的邮件系统由多个组件构成,各组件的简要说明如下:
| 组件名称 | 说明 | 常见示例 |
| ---- | ---- | ---- |
| 邮件用户代理(MUA) | 用户用于编写、发送和阅读邮件的应用程序 | 图形界面:Evolution、Thunderbird、KMail;文本界面:pine、mail |
| 邮件传输代理(MTA) | 负责将邮件从一台计算机传输到另一台计算机的组件 | sendmail、Postfix、Fetchmail、Qmail、Exim |
| 邮件投递代理(MDA) | 在 MTA 和 MUA 之间对邮件进行过滤的组件,通常隐藏于后台 | Spamassassin、Procmail |
| SMTP | 简单邮件传输协议,用于邮件在服务器间的传输 | 无 |
| SMTP 中继 | 允许使用外部 SMTP 服务器发送邮件的协议 | MailJet、SendGrid、MailGun |

3.2 配置 RHEL 8 邮件服务器

许多系统使用 Sendmail MTA 来传输邮件,在很多 Linux 发行版中它是默认的邮件传输代理。然而,Sendmail 系统复杂,初学者和有经验的用户都可能难以理解和配置,并且它处理邮件的速度比许多新的 MTA 慢,因此逐渐不受欢迎。现在,许多系统管理员选择使用 Postfix 或 Qmail 来处理邮件。

以下是配置基本 Postfix 邮件服务器的一般步骤:
1. 安装 Postfix

# dnf install postfix
  1. 配置 Postfix
    - 打开 /etc/postfix/main.cf 文件进行编辑。
    - 设置 myhostname 为服务器的主机名,例如:
myhostname = mail.example.com
  • 设置 mydomain 为域名:
mydomain = example.com
  • 设置 myorigin 为邮件的发件域名:
myorigin = $mydomain
  • 设置 inet_interfaces 以指定 Postfix 监听的网络接口,若要监听所有接口,可设置为:
inet_interfaces = all
  • 设置 mydestination 以指定可接收邮件的域名:
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
  1. 启动和启用 Postfix 服务
# systemctl start postfix
# systemctl enable postfix
  1. 配置防火墙
    - 允许 SMTP 端口(通常为 25)的流量通过防火墙:
# firewall-cmd --permanent --add-service=smtp
# firewall-cmd --reload
  1. 测试邮件服务器
    - 使用 mail 命令发送测试邮件:
# mail -s "Test Email" user@example.com
This is a test email.
Ctrl + D
  • 检查用户邮箱是否收到测试邮件。
graph LR
    A[开始] --> B[安装 Postfix]
    B --> C[配置 Postfix]
    C --> D[启动和启用服务]
    D --> E[配置防火墙]
    E --> F[测试邮件服务器]
    F -- 成功 --> G[完成]
    F -- 失败 --> C

4. 总结

RHEL 8 系统功能强大,可用于搭建多种服务。通过使用 podman、skopeo 和 buildah 工具以及 Cockpit 网络界面,能方便地进行 Linux 容器的创建与管理。同时,安装 Apache Web 服务器后,可部署不安全(HTTP)和安全(HTTPS)的网站,安全网站通过 SSL 或 TLS 建立加密通信,保障数据传输安全。在邮件服务方面,虽然 Sendmail 曾被广泛使用,但如今 Postfix 等更高效的 MTA 逐渐成为主流,通过合理配置可搭建基本的邮件服务器,满足日常邮件收发需求。

在实际应用中,需根据具体需求和环境对各项服务进行详细配置和优化,确保系统的稳定性和安全性。例如,在配置 Web 服务器时,要注意防火墙的正确设置和 SSL 证书的有效管理;在配置邮件服务器时,要合理设置 Postfix 的各项参数,以提高邮件处理的效率和准确性。

内容概要:本文围绕六自由度机械臂的人工神经网络(ANN)设计展开,重点研究了正向逆向运动学求解、正向动力学控制以及基于拉格朗日-欧拉法推导逆向动力学方程,并通过Matlab代码实现相关算法。文章结合理论推导仿真实践,利用人工神经网络对复杂的非线性关系进行建模逼近,提升机械臂运动控制的精度效率。同时涵盖了路径规划中的RRT算法B样条优化方法,形成从运动学到动力学再到轨迹优化的完整技术链条。; 适合人群:具备一定机器人学、自动控制理论基础,熟悉Matlab编程,从事智能控制、机器人控制、运动学六自由度机械臂ANN人工神经网络设计:正向逆向运动学求解、正向动力学控制、拉格朗日-欧拉法推导逆向动力学方程(Matlab代码实现)建模等相关方向的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握机械臂正/逆运动学的数学建模ANN求解方法;②理解拉格朗日-欧拉法在动力学建模中的应用;③实现基于神经网络的动力学补偿高精度轨迹跟踪控制;④结合RRTB样条完成平滑路径规划优化。; 阅读建议:建议读者结合Matlab代码动手实践,先从运动学建模入手,逐步深入动力学分析神经网络训练,注重理论推导仿真实验的结合,以充分理解机械臂控制系统的设计流程优化策略。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值