Fedora 31系统:网站部署、邮件服务器配置与磁盘扩展全攻略
1. Fedora 31网站部署安全测试
在完成网站部署后,需要进行最后的安全测试。打开浏览器窗口,使用
https://
前缀访问你的域名。页面应能正常加载,并且浏览器会显示浏览器与服务器之间的连接是安全的(通常在地址栏会有一个锁图标,点击可获取更多信息)。这表明基于Fedora 31系统,通过安装Apache Web服务器部署的安全网站(HTTPS),能够利用安全套接层(SSL)或传输层安全(TLS),借助公钥、私钥和会话加密以及受信任证书颁发机构颁发的证书,在Web服务器和客户端之间建立加密通信。
2. Fedora 31邮件系统结构
Fedora 31系统除了可作为Web服务器,在商业环境中,邮件服务也是其主要用途之一。完整的邮件系统由多个组件构成:
-
邮件用户代理(Mail User Agent - MUA)
:这是普通用户最熟悉的部分,即邮件客户端,用于撰写、发送和阅读电子邮件。常见的Linux图形化MUA有Evolution、Thunderbird和KMail;喜欢基于文本的邮件客户端的用户,可选择传统的pine和mail工具。
-
邮件传输代理(Mail Transfer Agent - MTA)
:负责将电子邮件从一台计算机传输到另一台计算机(可以是同一本地网络内,也可以通过互联网传输到远程系统)。Linux系统中有多种MTA可供选择,如sendmail、Postfix、Fetchmail、Qmail和Exim。
-
邮件投递代理(Mail Delivery Agent - MDA)
:通常隐藏在后台,在MTA和MUA之间对邮件进行过滤。最常见的MDA是垃圾邮件过滤器,用于在邮件到达用户收件箱之前去除不需要的邮件。流行的MDA有Spamassassin和Procmail。需要注意的是,部分MUA应用(如Evolution、Thunderbird和KMail)自带MDA过滤功能,而Pine和Basla等则没有,这可能会让Linux初学者感到困惑。
-
简单邮件传输协议(Simple Mail Transport Protocol - SMTP)
:是电子邮件系统用于在服务器之间传输邮件的协议,是MTAs相互通信和传输消息的“语言”。
-
SMTP中继(SMTP Relay)
:允许使用外部SMTP服务器发送电子邮件,而无需搭建本地SMTP服务器。常见的服务有MailJet、SendGrid和MailGun等,这些服务可避免自行配置和维护SMTP服务器的麻烦,还可能提供分析等额外功能。
3. 配置Fedora 31邮件服务器
许多系统使用Sendmail MTA来传输电子邮件,在很多Linux发行版中,它是默认的邮件传输代理。然而,Sendmail系统复杂,无论是初学者还是有经验的用户都难以理解和配置,且处理邮件的速度比一些较新的MTA慢,因此逐渐不受欢迎。现在,许多系统管理员选择使用Postfix或Qmail来处理邮件,它们速度更快且更易于配置。以下将详细介绍如何在Fedora 31系统上配置Postfix邮件服务器。
3.1 Postfix安装前准备
在安装Postfix之前,需要确保Sendmail未在系统上运行,可使用以下命令进行检查:
# systemctl status sendmail
若Sendmail未安装,工具会显示类似如下信息:
Unit sendmail.service could not be found.
若Sendmail正在运行,需在安装和配置Postfix之前停止它:
# systemctl stop sendmail
为确保系统重启时Sendmail不会自动启动,执行以下命令:
# systemctl disable sendmail
若想彻底从系统中移除Sendmail,可使用以下命令:
# dnf remove sendmail
3.2 防火墙/路由器配置
由于邮件的收发涉及网络连接,需要使用
firewall-cmd
工具将smtp服务添加到防火墙:
# firewall-cmd --permanent --add-service=smtp
同时,还需配置服务器与互联网之间的其他防火墙或路由器,允许端口25、143和587的连接,必要时进行端口转发,将这些端口转发到邮件服务器的相应端口。
3.3 安装Postfix
默认情况下,Fedora 31安装过程会为大多数配置安装Postfix。可使用以下
rpm
命令验证Postfix是否已安装:
# rpm -q postfix
若
rpm
报告Postfix未安装,可使用以下命令进行安装:
# dnf install postfix
dnf
工具会下载并安装Postfix,并在
/etc/passwd
文件中配置一个特殊的Postfix用户。
3.4 配置Postfix
Postfix的主要配置设置位于
/etc/postfix/main.cf
文件中。以下是一些关键选项:
myhostname = mta1.domain.com
mydomain = domain.com
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
inet_interfaces = $myhostname
mynetworks = subnet
-
myhostname
:格式为
host.domain.extension。例如,若Linux系统名为MyLinuxHost,互联网域名为MyDomain.com,则应设置为myhostname = mylinuxhost.mydomain.com。 -
mydomain
:是
myhostname设置中的域名部分,如mydomain = mydomain.com。 - myorigin :定义了输出邮件在收件人收件箱中显示的发件域名,应设置为你的域名。
-
mydestination
:与传入邮件相关,声明了该服务器作为最终投递目的地的域名。任何发往不在此列表中的域名的邮件将被视为中继请求,根据
mynetworks设置,通常会导致投递失败。 -
inet_interfaces
:定义了系统上Postfix允许接收邮件的网络接口,一般设置为
all。 -
mynetworks
:定义了哪些外部系统可以信任该服务器作为SMTP中继。可能的值有:
- host :仅信任本地系统,所有外部客户端尝试使用该服务器作为中继将被拒绝。
-
subnet
:仅允许同一网络子网内的系统使用该服务器作为中继。例如,若服务器的IP地址为
192.168.1.29,客户端系统的IP地址为192.168.1.30,则该客户端可以使用该服务器作为中继。 -
class
:同一IP地址类(A、B和C)内的任何系统都可以使用该服务器作为中继。
也可通过指定子网、地址范围或引用模式文件手动定义受信任的IP地址。例如:
mynetworks = 192.168.0.0/24, 127.0.0.0/8
为了让与服务器在同一本地网络的其他系统能够通过SMTP中继发送邮件,同时阻止外部系统这样做,可将
mynetworks
属性设置为
subnet
。
3.5 配置DNS MX记录
在向域名注册商注册并配置域名时,DNS设置中会有一些默认值,其中之一是邮件交换(Mail Exchanger - MX)记录。该记录定义了发往你域名的邮件应发送到的位置,默认通常设置为注册商提供的邮件服务器。若你要搭建自己的邮件服务器,应将MX记录设置为你的域名或邮件服务器地址。具体操作步骤取决于你的域名注册商,一般需要编辑域名的DNS信息,添加或编辑现有的MX记录,使其指向你的邮件服务器。
3.6 启动Postfix
当
/etc/postfix/main.cf
文件配置好正确的设置后,可使用以下命令启动Postfix:
# systemctl start postfix
若要配置Postfix在系统启动时自动启动,执行以下命令:
# systemctl enable postfix
启动后,可通过检查邮件日志来验证一切是否正常工作。邮件日志通常位于
/var/log/maillog
文件中,正常情况下应包含类似以下的输出:
Mar 25 11:21:48 demo-server postfix/postfix-script[5377]: starting the Postfix mail system
Mar 25 11:21:48 demo-server postfix/master[5379]: daemon started -- version 3.3.1, configuration /etc/postfix
只要日志中没有错误消息,就表示已成功安装并启动Postfix,可以进行配置测试。
3.7 测试Postfix
一种简单的测试Postfix配置的方法是在系统的本地用户之间发送电子邮件。使用
mail
工具进行快速测试(将
name
和
mydomain
分别替换为系统上的用户名和你的域名):
# mail name@mydomain.com
当提示输入时,输入邮件主题,然后输入邮件正文。按
Ctrl-D
发送邮件。例如:
# mail neil@mydomain.com
Subject: Test email message
This is a test message.
EOT
再次以另一个用户身份运行
mail
命令,验证邮件是否已成功发送和接收:
$ mail
Heirloom Mail version 12.5 7/5/10. Type ? for help.
"/var/spool/mail/neilsmyth": 1 message 1 new
>N 1 root Mon Mar 25 13:36 18/625 "Test email message"
&
若邮件未显示,检查日志文件
/var/log/maillog
中的错误信息。成功的邮件投递在日志文件中应显示如下:
Mar 25 13:41:37 demo-server postfix/pickup[7153]: 94FAF61E8F4A: uid=0 from=<root>
Mar 25 13:41:37 demo-server postfix/cleanup[7498]: 94FAF61E8F4A: message-id=<20190325174137.94FAF61E8F4A@demo-server.mydomain.com>
Mar 25 13:41:37 demo-server postfix/qmgr[7154]: 94FAF61E8F4A: from=<root@mydomain.com>, size=450, nrcpt=1 (queue active)
Mar 25 13:41:37 demo-server postfix/local[7500]: 94FAF61E8F4A: to=<neil@mydomain.com>, relay=local, delay=0.12, delays=0.09/0.01/0/0.02, dsn=2.0.0, status=sent (delivered to mailbox)
Mar 25 13:41:37 demo-server postfix/qmgr[7154]: 94FAF61E8F4A: removed
本地邮件正常工作后,可尝试向外部地址(如Gmail账户)发送邮件,并通过从外部账户向系统上的用户发送邮件来测试收件功能。在每种情况下,都要检查
/var/log/maillog
文件以获取错误解释。
4. 使用SMTP中继服务器发送邮件
除了配置邮件服务器处理外发邮件,还可以使用SMTP中继服务。许多此类服务可通过网络搜索“SMTP Relay Service”找到。大多数服务需要你以某种方式验证你的域名,并提供用于更新DNS设置的MX记录,同时会提供用户名和密码,需要将其添加到Postfix配置中。以下步骤假设Postfix已安装在系统上,且所选SMTP中继提供商要求的所有初始步骤都已完成。
- 编辑
/etc/postfix/main.cf
文件,将
myhostname
参数配置为你的域名:
myhostname = mydomain.com
-
在
/etc/postfix目录下创建一个名为sasl_passwd的新文件,并添加一行包含中继服务提供的邮件服务器主机、用户名和密码的内容。例如:
[smtp.myprovider.com]:587 neil@mydomain.com:mypassword
注意,上述条目中指定了端口587。若不设置此端口,Postfix将默认使用端口25,而大多数SMTP中继服务提供商默认会阻止该端口。
- 使用
postmap
实用程序生成包含邮件凭证的哈希数据库:
# postmap /etc/postfix/sasl_passwd
- 在继续之前,采取一些额外步骤来保护Postfix凭证:
# chown root:root /etc/postfix/sasl_passwd
# chown root:root /etc/postfix/sasl_passwd.db
# chmod 0600 /etc/postfix/sasl_passwd
# chmod 0600 /etc/postfix/sasl_passwd.db
-
再次编辑
main.cf文件,添加一个条目指定中继服务器:
relayhost = [smtp.myprovider.com]:587
-
在
main.cf文件中添加以下行,配置SMTP服务器的身份验证设置:
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
- 最后,重启Postfix服务:
# systemctl restart postfix
服务重启后,可使用
mail
工具或你喜欢的邮件客户端尝试发送和接收邮件。
5. Fedora 31新磁盘驱动器配置
如今,用户和系统管理员面临的一个常见问题是系统磁盘空间不足。幸运的是,磁盘空间现在是相对廉价的IT资源。在Fedora 31系统上配置新磁盘驱动器有两种方法:
-
挂载文件系统
:在新驱动器上创建一个或多个Linux分区,在这些分区上创建Linux文件系统,然后将它们挂载到特定的挂载点以便访问。
-
逻辑卷
:将新空间添加到现有卷组或创建新的卷组。在安装Fedora 31时,会创建一个卷组,其中包含三个逻辑卷:root、home和swap,分别用于存储
/
和
/home
文件系统以及交换分区。通过将新磁盘配置为卷组的一部分,可以增加现有逻辑卷的可用磁盘空间,例如将新磁盘的部分或全部空间分配给home卷,从而增加
/home
文件系统的大小。
假设新的物理或虚拟硬盘已安装到系统并被操作系统识别。通常,系统中的磁盘驱动器会被分配以
hd
或
sd
开头,后跟一个字母的设备名称。
以下是配置Fedora 31邮件服务器的流程图:
graph TD
A[检查Sendmail状态] -->|运行| B[停止Sendmail]
A -->|未安装| C[无需处理]
B --> D[禁用Sendmail自动启动]
D --> E[可选:移除Sendmail]
E --> F[配置防火墙]
F --> G[验证Postfix安装]
G -->|未安装| H[安装Postfix]
H --> I[配置Postfix main.cf文件]
G -->|已安装| I
I --> J[配置DNS MX记录]
J --> K[启动Postfix]
K --> L[设置Postfix自动启动]
L --> M[测试Postfix]
M -->|本地测试成功| N[测试外部邮件收发]
M -->|本地测试失败| O[检查maillog日志]
N -->|收发正常| P[完成配置]
N -->|收发异常| O
通过以上步骤,你可以在Fedora 31系统上完成网站部署、邮件服务器配置和磁盘扩展等操作,满足不同的使用需求。
Fedora 31系统:网站部署、邮件服务器配置与磁盘扩展全攻略
6. 查找新硬盘
在配置新磁盘驱动器之前,需要先找到新硬盘。通常,新硬盘安装后会被操作系统自动检测到。系统中的磁盘驱动器一般会被分配以
hd
或
sd
开头,后跟一个字母的设备名称。可以使用以下命令查看系统中已识别的磁盘设备:
# lsblk
该命令会列出系统中所有的块设备,包括磁盘和分区,从中可以找到新安装的硬盘。
7. 挂载文件系统方式配置新磁盘
如果选择通过挂载文件系统的方式配置新磁盘,可按以下步骤操作:
7.1 分区
首先,使用分区工具(如
fdisk
或
parted
)对新磁盘进行分区。以
fdisk
为例,假设新磁盘设备名为
/dev/sdb
,执行以下命令:
# fdisk /dev/sdb
进入
fdisk
交互界面后,按照提示进行分区操作:
- 输入
n
创建新分区。
- 选择分区类型(主分区或扩展分区)。
- 指定分区的起始扇区和大小。
- 输入
w
保存分区表并退出。
7.2 创建文件系统
分区完成后,需要在分区上创建文件系统。常见的文件系统类型有
ext4
、
XFS
等。以
ext4
为例,假设分区设备名为
/dev/sdb1
,执行以下命令:
# mkfs.ext4 /dev/sdb1
7.3 挂载分区
创建文件系统后,需要将分区挂载到特定的挂载点。首先,创建一个挂载点目录,例如
/mnt/newdisk
:
# mkdir /mnt/newdisk
然后,将分区挂载到该目录:
# mount /dev/sdb1 /mnt/newdisk
为了让系统在启动时自动挂载该分区,需要编辑
/etc/fstab
文件,添加以下内容:
/dev/sdb1 /mnt/newdisk ext4 defaults 0 0
8. 逻辑卷方式配置新磁盘
若选择通过逻辑卷的方式配置新磁盘,可按以下步骤操作:
8.1 创建物理卷
首先,使用
pvcreate
命令将新磁盘创建为物理卷。假设新磁盘设备名为
/dev/sdb
,执行以下命令:
# pvcreate /dev/sdb
8.2 添加到现有卷组或创建新卷组
如果要将新磁盘添加到现有卷组,使用
vgextend
命令。假设现有卷组名为
fedora
,执行以下命令:
# vgextend fedora /dev/sdb
如果要创建新的卷组,使用
vgcreate
命令。例如,创建一个名为
newvg
的卷组:
# vgcreate newvg /dev/sdb
8.3 创建逻辑卷
在卷组中创建逻辑卷,使用
lvcreate
命令。例如,在
newvg
卷组中创建一个名为
newlv
的逻辑卷,大小为 10GB:
# lvcreate -L 10G -n newlv newvg
8.4 创建文件系统并挂载
在逻辑卷上创建文件系统,以
ext4
为例:
# mkfs.ext4 /dev/newvg/newlv
创建挂载点目录并挂载逻辑卷:
# mkdir /mnt/newlv
# mount /dev/newvg/newlv /mnt/newlv
同样,为了让系统在启动时自动挂载该逻辑卷,需要编辑
/etc/fstab
文件,添加以下内容:
/dev/newvg/newlv /mnt/newlv ext4 defaults 0 0
9. 总结
本文详细介绍了在 Fedora 31 系统上进行网站部署安全测试、邮件系统配置以及新磁盘驱动器配置的方法。以下是各部分的关键要点总结:
| 操作内容 | 关键步骤 |
|---|---|
| 网站部署安全测试 |
使用
https://
前缀访问域名,检查浏览器显示的连接安全状态
|
| 邮件系统配置 | 选择 Postfix 作为 MTA,进行安装前准备、防火墙配置、Postfix 安装与配置、DNS MX 记录配置、启动与测试,还可使用 SMTP 中继服务 |
| 新磁盘驱动器配置 | 可选择挂载文件系统或逻辑卷的方式,进行分区、创建文件系统、挂载等操作 |
通过以上操作,你可以充分利用 Fedora 31 系统的功能,满足网站部署、邮件服务和数据存储等多方面的需求。
以下是配置新磁盘驱动器的流程图:
graph TD
A[查找新硬盘] --> B{选择配置方式}
B -->|挂载文件系统| C[分区]
B -->|逻辑卷| D[创建物理卷]
C --> E[创建文件系统]
E --> F[挂载分区]
F --> G[编辑 /etc/fstab]
D --> H{添加到现有卷组或创建新卷组}
H -->|添加到现有卷组| I[使用 vgextend]
H -->|创建新卷组| J[使用 vgcreate]
I --> K[创建逻辑卷]
J --> K
K --> L[创建文件系统]
L --> M[挂载逻辑卷]
M --> N[编辑 /etc/fstab]
希望本文能帮助你顺利完成 Fedora 31 系统的相关配置,提升系统的使用效率和功能。
超级会员免费看
19

被折叠的 条评论
为什么被折叠?



