新CentOS 7服务器推荐的附加步骤

简介

在新服务器设置了最基本的配置之后,在大多数情况下还有一些建议的额外步骤。在这篇指南中,我们将通过执行一些建议的但可选的流程来继续服务器的配置。

先决条件和目标

在开始本指南之前,你应该按照CentOS 7 初始服务器设置指南进行操作。这是为了设置你的用户账户,使用sudo配置权限提升,以及为了安全而锁定SSH。

完成上述指南后,你可以继续阅读这篇文章。在本指南中,我们将重点配置一些可选但建议的组件。这包括为我们的系统设置防火墙和交换文件,以及配置网络时间协议同步。

配置基础防火墙

防火墙为您的服务器提供了基本的安全级别。这些应用程序负责拒绝您服务器上除已批准的端口/服务以外的所有流量。CentOS自带一个名为firewalld的防火墙。可以使用名为firewall-cmd的工具配置您的防火墙策略。我们的基本策略将是锁定我们没有良好理由保持开放的任何东西。首先安装firewalld

  1. sudo yum install firewalld

firewalld服务具有在不中断当前连接的情况下进行修改的能力,因此可以在创建例外之前将其打开:

  1. sudo systemctl start firewalld

现在服务已经启动并运行,我们可以使用firewall-cmd实用程序来获取和设置防火墙策略信息。firewalld应用程序使用“区域”的概念来标记网络中其他主机的可信度。这种标记使我们能够根据对网络的信任程度分配不同的规则。在此指南中,我们将仅调整默认区域的策略。当我们重新加载防火墙时,此区域将应用于我们的接口。

接下来,我们需要添加对已批准服务的例外。最基本的这些是SSH,因为我们需要保留远程管理服务器的访问权限。

如果您没有修改SSH守护进程运行的端口,您可以使用服务名称添加例外:

  1. sudo firewall-cmd --permanent --add-service=ssh

如果您已将服务器的SSH端口更改为,则需要显式指定新端口。您还需要包括服务使用的协议。只有当您的SSH服务器已经重启以使用新端口时才需要执行以下操作:

  1. sudo firewall-cmd --permanent --remove-service=ssh
  2. sudo firewall-cmd --permanent --add-port=4444/tcp

这是保留对服务器的管理访问的最少要求。如果您计划运行其他服务,您还必须为这些服务打开防火墙。

如果您计划运行常规HTTP Web服务器,您需要启用http服务:

  1. sudo firewall-cmd --permanent --add-service=http

如果计划使用SSL/TLS启用Web服务器,您还应允许流量通过https

  1. sudo firewall-cmd --permanent --add-service=https

如果您需要SMTP电子邮件功能,您可以输入:

  1. sudo firewall-cmd --permanent --add-service=smtp

要查看任何附加服务的名称,请键入:

  1. sudo firewall-cmd --get-services

完成后,您可以查看将实施的例外列表:

  1. sudo firewall-cmd --permanent --list-all

准备就绪后,您可以重新加载防火墙:

  1. sudo firewall-cmd --reload

如果一切正常,您应该确保防火墙将在启动时启动:

  1. sudo systemctl enable firewalld

完成后,您应该确保防火墙将在启动时启动:

配置时区和网络时间协议同步

记住,您需要显式地为以后可能配置的任何其他服务打开防火墙(服务或端口)。

接下来的步骤是调整服务器的本地化设置并配置网络时间协议(NTP)同步。

首先,我们需要确保服务器运行在正确的时区。 接下来,我们将配置系统与全球NTP服务器同步,以保持系统时钟的正确性。 这有助于防止因时钟不同步而导致的某些不一致行为。

配置时区

我们的第一步是设置服务器的时区。 这个过程非常简单,可以使用timedatectl命令来完成:

首先,查看可用的时区列表,输入:

  1. sudo timedatectl list-timezones

此命令将显示您服务器上可用的时区列表。 找到适合您的服务器的区域/时区设置,然后输入:

  1. sudo timedatectl set-timezone region/timezone

例如,要将时区设置为美国东部时间,您可以输入:

  1. sudo timedatectl set-timezone America/New_York

您的系统将更新为使用所选时区。 您可以确认这一点,输入:

  1. sudo timedatectl

配置NTP同步

现在您已经设置了时区,我们应该配置NTP。这将允许您的计算机与其他服务器保持同步,使得依赖于正确时间的操作更加可预测。

对于NTP同步,我们将使用名为ntp的服务,可以从CentOS的默认存储库中安装:

  1. sudo yum install ntp

接下来,您需要启动本次会话的服务。我们还将启用服务,以便每次服务器启动时都能自动启动:

  1. sudo systemctl start ntpd
  2. sudo systemctl enable ntpd

现在,您的服务器将自动校正系统时钟,以与全球服务器对齐。

创建交换文件

在Linux服务器上添加“交换”区域可以让系统将运行程序中较少访问的信息从RAM移动到磁盘上的位置。访问存储在磁盘上的数据比访问RAM慢得多,但是拥有交换空间通常可以决定应用程序是保持运行还是崩溃。这对于您计划在系统上托管任何数据库尤其有用。

关于交换空间最佳大小的建议因来源而异。一般来说,与您系统上的RAM数量相等或双倍的量是一个不错的起点。

使用fallocate工具为您的交换文件分配所需的空间。例如,如果我们需要一个4GB的文件,可以通过输入以下命令在/swapfile位置创建一个交换文件:

  1. sudo fallocate -l 4G /swapfile

在创建文件后,我们需要限制对文件的访问,以确保其他用户或进程无法看到其中写的内容:

  1. sudo chmod 600 /swapfile

现在文件具有正确的权限。 要告诉系统格式化文件为交换分区,我们可以输入:

  1. sudo mkswap /swapfile

现在,告诉系统它可以使用交换文件:

  1. sudo swapon /swapfile

我们的系统将在当前会话中使用交换文件,但我们需要修改一个系统文件,以便服务器在启动时自动执行此操作。 您可以输入:

  1. sudo sh -c 'echo "/swapfile none swap sw 0 0" >> /etc/fstab'

通过添加这些内容,您的系统将在每次启动时自动使用交换文件。

下一步去哪里?

您现在已经有了一个非常不错的Linux服务器设置基础。 从这里开始,您可以做很多事情。 首先,您可能希望为未来的安装快照。

为未来的安装快照

如果您对当前的配置感到满意,并希望将其作为未来安装的基础,可以通过DigitalOcean控制面板对您的服务器进行快照。从2016年10月开始,快照费用根据使用的磁盘空间按月计算,每GB$0.05。

关闭服务器命令行界面。虽然可以在系统运行时进行快照,但关机可以确保磁盘上的文件处于一致状态:

  1. sudo poweroff

现在,在DigitalOcean控制面板中,您可以点击“快照”选项卡来创建快照:

创建快照后,您将在“我的快照”选项卡中看到它,并可以选择该快照作为未来安装的基础:

其他资源和下一步工作

从这一步开始,您的选择将完全取决于您希望使用服务器做什么。下面的列表并不全面,但它代表了用户在完成这些步骤后可能进行的更常见的配置:

结论

至此,您应该知道如何为您的服务器配置一个坚实的基础。 希望您还对自己的下一步有一个清晰的认识。 请随意探索该网站,以获取更多可以在您的服务器上实施的想法。

Source:
https://www.digitalocean.com/community/tutorials/additional-recommended-steps-for-new-centos-7-servers