在本教程中,我们假设您已经全新安装了 Ubuntu Server。我们建议您的服务器使用 Ubuntu 的 LTS 版本,例如 Ubuntu 18.04 LTS、16.04 LTS。现在,安装 Ubuntu 服务器 18.04、16.04 后,继续进行服务器的安装后设置。本指南包含对配置服务器、提高服务器安全性有用的步骤。
1. 升级您的系统
首先使用 root 访问权限登录 Ubuntu 服务器并执行以下命令来升级所有软件包。
sudo apt-get update
sudo apt-get upgrade
2. 创建管理员帐户
创建用于系统管理的用户帐户并为其配置 sudo 访问权限。以后您将使用该帐户登录服务器并执行操作。我们不建议每次登录都使用root用户。
sudo adduser sysadmin
现在将此用户添加到 sudo 组中,使其可以获得所有 sudo 权限。
ssudo usermod -aG sudo sysadmin
3. 安全的 SSH 服务器
现在编辑 OpenSSH 配置文件 /etc/ssh/sshd_config 并执行以下更改。
- 更改默认端口 – 最好更改默认 ssh 端口,因为默认端口始终为攻击者提供。
Port 2222
- 禁用 root SSH 登录 – 您还想禁用通过 ssh 的 root 登录。
PermitRootLogin no
4. 设置基于密钥的 SSH
这有助于将您的服务器配置为仅使用基于密钥的登录并禁用密码登录。在您的客户端系统上生成密钥对。
ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/sysadmin/.ssh/id_rsa): /home/sysadmin/.ssh/id_rsa_10
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/sysadmin/.ssh/id_rsa_10.
Your public key has been saved in /home/sysadmin/.ssh/id_rsa_10.pub.
The key fingerprint is:
b8:78:02:69:a7:4a:92:e8:97:35:02:7e:ce:02:28:fc sysadmin@media60
The key's randomart image is:
+--[ RSA 2048]----+
| |
| |
| |
| . . . |
|+ = . . S |
|== * + . |
|*.* * + |
|+o E o |
|..o |
+-----------------+
现在将生成的公钥 .ssh/id_rsa.pub 文件内容复制到服务器 ~/.ssh/authorized_keys 目录中。您可以复制服务器文件上的内容目录或使用以下命令。
ssh-copy-id -i ~/.ssh/id_rsa.pub sysadmin@remote.server.net
现在用SSH登录服务器,就不会再次提示输入密码了。
ssh sysadmin@remote.server.net
5. 设置CSF防火墙(可选)
现在,如果您愿意,您可以使用 CSF 来管理您的防火墙。请按照以下步骤进行安装。
在您的系统上使用以下命令下载 CSF 最新源代码
sudo cd /opt
sudo wget https://download.configserver.com/csf.tgz
sudo tar xzf csf.tgz
使用源代码中给定的 install.sh 脚本安装 CSF 防火墙。它会自动完成所有事情。
sudo cd /opt/csf
sudo sh install.sh
使 CSF 能够像生产一样工作。默认情况下,它以测试模式安装。
sudo vim /etc/csf/csf.conf
TESTING=0
最后使用以下命令重新启动 CSF 服务。
sudo cd /etc/csf
sudo csf -r