CentOS 7服务器的初始设置

介绍

新激活的CentOS 7服务器必须进行定制,然后才能用作生产系统。在本文中,您将必须进行的最重要的自定义以一种易于理解的方式给出。

先决条件

新激活的CentOS 7服务器,最好使用SSH密钥进行设置。以根用户身份登录服务器。

ssh -l root server-ip-address

步骤1:建立标准使用者帐户

出于安全原因,不建议使用root帐户执行日常计算任务。相反,建议创建一个将sudo用于获得管理特权的标准用户帐户。对于本教程,假定我们正在创建一个名为joe的用户。要创建用户帐户,请键入:

adduser joe

为新用户设置密码。系统将提示您输入并确认密码。

passwd joe

将新用户添加到wheel组,以便可以使用使用root特权sudo

gpasswd -a joe wheel

最后,在本地计算机上打开另一个终端,然后使用以下命令将SSH密钥添加到远程服务器上新用户的主目录中。在安装SSH密钥之前,系统将提示您进行身份验证。

ssh-copy-id joe@server-ip-address

安装密钥后,使用新的用户帐户登录服务器。

ssh -l joe server-ip-address

如果登录成功,则可以关闭另一个终端。从现在开始,所有命令都将以开头sudo

步骤2:禁止根登录和密码身份验证

由于您现在可以使用SSH密钥以标准用户身份登录,因此,良好的安全性做法是配置SSH,以便同时禁止root登录和密码身份验证。这两个设置都必须在SSH守护程序的配置文件中进行配置。因此,使用打开它nano

sudo nano /etc/ssh/sshd_config

查找PermitRootLogin行,取消注释并将其值设置为no

PermitRootLogin     no

对这PasswordAuthentication一行做同样的事情,应该已经不加注释了:

PasswordAuthentication      no

保存并关闭文件。要应用新设置,请重新加载SSH。

sudo systemctl reload sshd

步骤3:配置时区

默认情况下,服务器上的时间以UTC给出。最好将其配置为显示本地时区。为此,请在/usr/share/zoneinfo目录中找到您所在国家/地区的区域文件,并创建一个从/etc/localtime目录到目录的符号链接。例如,如果您位于美国东部,则将使用以下方式创建符号链接:

sudo ln -sf /usr/share/zoneinfo/US/Eastern /etc/localtime

然后,通过运行date命令验证现在已在本地时间给出时间。输出应类似于:

Tue Jun 16 15:35:34 EDT 2015

输出中的EDT确认为当地时间。

步骤4:启用IPTables防火墙

默认情况下,新激活的CentOS 7服务器上的活动防火墙应用程序是FirewallD。尽管它是IPTables的很好替代品,但许多安全应用程序仍然不支持它。因此,如果要使用OSSEC HIDS之类的任何应用程序,则最好禁用/卸载FirewallD。

让我们从禁用/卸载FirewallD开始:

sudo yum remove -y firewalld

现在,让我们安装/激活IPTables。

sudo yum install -y iptables-services
sudo systemctl start iptables

将IPTables配置为在引导时自动启动。

sudo systemctl enable iptables

CentOS 7上的IPTables带有一组默认规则,您可以使用以下命令查看它们。

sudo iptables -L -n

输出将类似于:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

您可以看到这些规则之一允许SSH通信,因此您的SSH会话是安全的。

因为这些规则是运行时规则,并且在重新启动时会丢失,所以最好使用以下命令将它们保存到文件中:

sudo /usr/libexec/iptables/iptables.init save

该命令会将规则保存到/etc/sysconfig/iptables文件中。您可以随时通过使用喜欢的文本编辑器更改此文件来编辑规则。

步骤5:允许通过防火墙的其他流量

由于您很可能会在某个时候使用新服务器托管某些网站,因此必须向防火墙添加新规则以允许HTTP和HTTPS通信。为此,请打开IPTables文件:

sudo nano /etc/sysconfig/iptables

在SSH规则之后或之前,添加HTTP(端口80)和HTTPS(端口443)流量的规则,以便文件的该部分出现,如下面的代码块所示。

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited

保存并关闭文件,然后重新加载IPTables。

sudo systemctl reload iptables

完成上述步骤后,您的CentOS 7服务器现在应该已经相当安全,可以在生产中使用了。

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息