使用 Ubuntu 20.04 LTS (Focal Fossa) 进行初始服务器设置

2023-11-18

在本教程中,我们假设您已经全新安装了 Ubuntu Ubuntu 20.04 LTS (Focal Fossa) 服务器。我们建议您的服务器使用 Ubuntu 的 LTS 版本,例如 Ubuntu 20.04 LTS (Focal Fossa)。现在,安装 Ubuntu Server 20.04 服务器后,请在服务器上继续执行安装后步骤。本教程包含对配置服务器以将基本安全性应用于服务器有用的步骤。

请按照以下步骤操作。

1. 升级您的系统

首先,通过系统终端登录Ubuntu 20.04系统。现在,执行以下命令来更新 apt 缓存并升级系统上的所有软件包。


sudo apt update
sudo apt upgrade
  

2. 创建用户帐户

我们从不建议使用 root 用户在 Ubuntu 20.04 上工作。让我们创建一个用于系统管理的帐户并为其启用 sudo 访问权限。


sudo adduser sysadmin
  

现在将新创建的用户添加到sudo组中,这样它就可以获得所有sudo权限。


ssudo usermod -aG sudo sysadmin
  

3. 安全的 SSH 服务器

我们建议更改默认 SSH 端口,它可以帮助您保护系统免受黑客攻击。要更改默认端口,请编辑 OpenSSH 配置文件/etc/ssh/sshd_config并进行以下更改。

  • 更改默认端口 – 最好更改默认 ssh 端口,因为默认端口始终为攻击者提供。
    
     Port 2222
      
  • 禁用 root SSH 登录 – 您还想禁用通过 ssh 的 root 登录。
    
     PermitRootLogin no
      

4. 设置基于密钥的 SSH

强烈建议使用基于密钥的 ssh 登录而不是密码登录。要配置此功能,请在本地系统上创建 ssh 密钥对。

Linux用户可以使用以下命令,Windows用户使用puttygen.exe生成ssh密钥对。


ssh-keygen
  

示例输出:


Generating public/private rsa key pair.
Enter file in which to save the key (/home/sysadmin/.ssh/id_rsa):
Created directory '/home/sysadmin/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/sysadmin/.ssh/id_rsa
Your public key has been saved in /home/sysadmin/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:Wewuzm5MjMkiTQA4zFKPpGWpOcEE7TGRlFSgYGpsWHE sysadmin@tecadmin
The key's randomart image is:
+---[RSA 3072]----+
|@O%OE            |
|@@O+     .       |
|*X.+.     o      |
|* . .    +       |
| . o . +S .      |
|  . o + o.       |
|   . . o. .      |
|       oo.       |
|       o+        |
+----[SHA256]-----+
  

现在复制新创建的公钥.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.使用FirewallD配置防火墙

默认的 Ubuntu 20.04 服务器版本没有安装防火墙。您只需运行以下命令即可从默认存储库安装所需的软件包。


sudo apt install firewalld
  

安装后,启动防火墙服务并使其在系统启动时自动启动。


systemctl start firewalld
systemctl enable firewalld
  

默认情况下,防火墙允许远程用户进行 SSH 访问。您可能还需要允许其他服务通过防火墙提供给远程用户。

您可以直接提供“http”或“https”等服务名称来允许。 Firewalld 使用 /etc/services 文件来确定服务对应的端口。


firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
  

如果 /etc/services 文件中未定义任何服务名称。您可以直接使用端口号进行防火墙规则。例如,允许防火墙使用 TCP 端口 8080 或 10000(默认 Webmin)。


firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --permanent --add-port=10000/tcp
  

对防火墙进行任何更改后,请确保使用以下命令重新加载更改。


firewall-cmd --reload
  

要查看所有允许的端口和服务,请使用以下命令。


firewall-cmd --permanent --list-all
  

Output:


public
  target: default
  icmp-block-inversion: no
  interfaces:
  sources:
  services: cockpit dhcpv6-client http https ssh
  ports: 8080/tcp 10000/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:
  

结论

您的 Ubuntu 20.04 LTS (Focal Fossa) 系统已准备好使用。请不要忘记分享您对初始服务器设置的想法,这将对其他人有所帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Ubuntu 20.04 LTS (Focal Fossa) 进行初始服务器设置 的相关文章

随机推荐

  • 如何在 Fedora 31/30 上安装 MySQL 5.7

    MySQL 是一个关系数据库管理系统 本教程将帮助您在 Fedora Linux 系统上安装 MySQL 5 7 您还可以按照这些说明进行操作安装MySQL 8 or php我的管理员在您的 Fedora 系统上 第 1 步 先决条件 登录
  • 在 Linux 中归档文件和目录的 3 个最流行的工具

    Linux 系统中有多种工具可用于创建归档文件 在本文中 您将发现使用多种工具通过命令行创建或提取存档文件 Tool 1 Zip zip 是 Linux 系统中最流行的命令行归档实用程序 创建文件存档 zip output zip var
  • 使用 .htaccess 限制网站访问:综合指南

    网站安全是网站管理员和开发人员的首要任务 保护您的网站免遭未经授权的访问的最有效方法之一是使用 htaccess 文件 这些特定于 Apache Web 服务器的配置文件允许您定义网站的访问规则 在本综合指南中 我们将探索使用 htacce
  • 如何在 CentOS/RHEL 7/6 和 Fedora 上安装 RabbitMQ

    RabbitMQ是最流行的开源消息代理 RabbitMQ 是一个轻量级应用程序 适用于大多数流行的操作系统 RabbitMQ 支持多种消息协议 RabbitMQ可以轻松地部署在分布式和联邦配置中 以满足高规模 高可用性的需求 本教程将帮助您
  • 检查阿姆斯特朗数的 C 程序

    阿姆斯特朗数是一个 n 位数字 等于其各位数字的 n 次方之和 例如 153 是阿姆斯特朗数 因为它有 3 位 1 3 5 3 3 3 等于 153 在本文中 我们将编写一个 C 程序来检查给定的数字是否是阿姆斯特朗数 我们会将问题分解为可
  • 如何使用 sgdisk 将 GPT 分区表复制到另一个磁盘

    什么是GPT分区 GPT GUID 分区表 是物理硬盘上分区表布局的标准 使用全局唯一标识符 GUID GPT 是 EFI 标准的一部分 定义分区表的布局 GPT 对于在大于 2TB 的磁盘上创建文件系统非常有用 对于较小尺寸的磁盘 通常我
  • 如何在 Windows 10 上安装 Node.js

    Node js 是一个开源的 JavaScript 运行时环境 它允许在 Web 浏览器之外运行 JavaScript 本教程将帮助您在 Windows 系统上安装 Node js 在 Windows 上安装节点 以下是在 Windows
  • 检查阿姆斯特朗数的 Java 程序

    在编程世界中 通常会实现许多不同的任务和算法来测试程序员对某些概念的理解 其中一项任务是检查阿姆斯特朗数字 在我们深入实际的编程部分之前 了解阿姆斯特朗数是什么很重要 什么是阿姆斯特朗数 An 阿姆斯特朗数是一个数字 它等于它自己的数字的总
  • 如何在 Linux 中使用 Chage 命令

    Linux 系统管理员经常需要管理用户帐户及其密码 chage 命令是一个强大的工具 有助于管理 Linux 中的用户密码过期和老化信息 在本文中 我们将指导您在 Linux 中使用 chage 命令 其各种选项以及如何有效使用它们的示例
  • 如何在 CentOS 8 上安装 Roundcube Webmail

    Roundcube 是一种用 PHP 编程语言编写的流行 Webmail 界面 您可以通过 Roundcube Web 界面上的 POP IMAP 访问在 Linux 服务器上创建的邮箱 本教程将帮助您在 CentOS 8 上安装 Roun
  • 如何在 Ubuntu 18.04 Bionic 上重置 Gnome 桌面

    本教程帮助您在 Ubuntu 18 04 LTS Linux 系统上将 Gnome 桌面设置重置为其原始状态 登录到您的 Ubuntu 18 04 Bionic Desktop 系统并按照下面给出的说明进行操作 之后重新启动系统以完成这些步
  • Linux 用户管理:系统管理员的实用方法

    用户管理是 Linux 系统管理的一个重要方面 因为它允许管理员创建 修改和删除用户帐户 管理权限以及控制对系统资源的访问 本文为系统管理员介绍了一种实用的 Linux 用户管理方法 通过了解用户管理的基础知识 您可以确保更安全且组织良好的
  • 了解 Linux 中的僵尸进程

    在操作系统领域 僵尸 一词通常会让人想起不死生物 即被困在生与死之间的生物 令人惊讶的是 Linux 操作系统中也存在类似的现象 僵尸进程潜伏在其中 困扰着系统管理员和开发人员 尽管它们可能并不渴望大脑 但如果不加以控制 这些僵尸进程可能会
  • 如何在 Ubuntu 22.04|20.04|18.04 上安装 Oracle Java 17

    Java 17 是 Java SE 平台的最新长期支持版本 由于这是 LTS 版本 因此将支持到 2024 年 9 月 Java 17 进行了多项改进和错误修复 工作站用户应考虑升级到此版本 此外 生产用户可以在检查所有应用程序兼容性检查后
  • 如何在 Ubuntu 20.04 上使用 PHP-FPM 安装 Apache

    PHP FPM FastCGI 进程管理器 是 PHP FastCGI 的替代实现 它提供了一些附加功能 例如对站点有用的自适应进程生成 本教程将帮助您在 Ubuntu 20 04 系统上使用 PHP FPM FastCGI 安装 Apac
  • phpMyAdmin 的 4 个最佳替代品

    phpMyAdmin is the most popular web interface for managing MySQL databases But there are many other tools available which
  • 如何在 RHEL 和 CentOS Stream 9 上安装 MySQL 8.0

    MySQL 是一种开源关系数据库管理系统 广泛用于存储和组织数据 Red Hat Enterprise Linux RHEL 和 CentOS Stream 是许多开发人员和系统管理员使用的两种流行的 Linux 发行版 在本文中 我们将讨
  • 设置 Git 提交用户名和电子邮件:初学者指南

    Git 是一个强大的分布式版本控制系统 被开发人员广泛用来管理他们的代码 Git 的重要方面之一是配置您的提交用户名和电子邮件 因为它有助于在与其他开发人员协作时建立您的身份 在本文中 我们将介绍设置 Git 提交用户名和电子邮件的不同方法
  • 如何从 Git 存储库中删除最后 5 次提交

    从 Git 存储库中删除最后几次提交是一个相对简单的过程 只需几个简单的命令即可完成 在本指南中 我们将解释如何从 git 存储库中删除最后几次提交 并讨论为什么这可能是必要的 我们还将提供从存储库中删除最后几次提交的分步说明 以及此过程中
  • 使用 Ubuntu 20.04 LTS (Focal Fossa) 进行初始服务器设置

    在本教程中 我们假设您已经全新安装了 Ubuntu Ubuntu 20 04 LTS Focal Fossa 服务器 我们建议您的服务器使用 Ubuntu 的 LTS 版本 例如 Ubuntu 20 04 LTS Focal Fossa 现