使用 Ubuntu 20.04 进行初始服务器设置

前些天发现了一个人工智能学习网站,通俗易懂,风趣幽默,最重要的屌图甚多,忍不住分享一下给大家。点击跳转到网站。

使用 Ubuntu 20.04 进行初始服务器设置

介绍

首次创建新的 Ubuntu 20.04 服务器时,应该执行一些重要的配置步骤作为初始设置的一部分。这些步骤将提高服务器的安全性和可用性,并为后续操作奠定坚实的基础。

第 1 步 — 以 root 身份登录

要登录服务器,这个需要知道服务器的公共 IP 地址密码,或者(如果安装了用于身份验证的 SSH 密钥)root用户帐户的私钥。如果尚未连接到服务器,请使用以下命令以root用户身份登录:

ssh root@your_server_ip

如果出现有关主机真实性的警告,点接受。如果使用密码身份验证,要提供root密码进行登录。如果使用受密码保护的 SSH 密钥,则每次会话首次使用该密钥时,系统可能会提示输入密码。如果第一次使用密码登录服务器,系统可能还会提示更改root密码。

关于root

root用户是 Linux 环境中的管理用户,拥有非常广泛的权限**。由于root帐户的权限较高,因此不鼓励定期使用它。这是因为root**帐户能够做出非常具有破坏性的更改,比如:删库跑路。

登录之后的下一步是设置一个新的用户帐户,并降低日常使用的权限。

第 2 步 — 创建新用户

以root身份登录后,将能够添加新的用户帐户。之后,将使用这个新帐户而不是root登录。

此示例创建一个名为sammy的新用户:

adduser sammy

然后系统会提示输入一个密码,这里建议给一个复杂的。之后还有其他的设置项,可以直接点击ENTER跳过,也可以一项一项去写。

第 3 步 — 授予管理权限

现在我们有了一个具有常规帐户权限的新用户帐户。下来我们为普通帐户设置所谓的超级用户或**root权限。**这将允许我们的普通用户通过在命令前添加sudo单词来运行具有管理权限的命令。

要将这些权限添加到我们的新用户,我们需要将该用户添加到sudo组。默认情况下,在 Ubuntu 20.04 上,允许sudo组成员的用户使用该sudo命令。

root身份运行以下命令将新用户添加到sudo组:

usermod -aG sudo sammy

现在,当以普通用户身份登录时,可以在命令之前输入sudo以使用超级用户权限运行它们。

第 4 步 — 设置基本防火墙

Ubuntu 20.04 服务器可以使用 UFW 防火墙来确保只允许连接到某些服务。我们可以使用此应用程序设置基本防火墙。UFW常见操作在这里。

应用程序可以在安装时向 UFW 注册其配置文件。这些配置文件允许 UFW 按名称管理这些应用程序。OpenSSH 服务允许我们现在连接到我们的服务器,它有一个在 UFW 注册的配置文件。

可以通过输入以下内容来查看:

ufw app list
OutputAvailable applications:OpenSSH

我们需要确保防火墙允许 SSH 连接,以便下次可以重新登录。我们可以通过键入以下内容来允许这些连接:

ufw allow OpenSSH

之后,我们可以通过键入以下内容来启用防火墙:

ufw enable

键入y并按ENTER继续。可以通过键入以下内容看到仍然允许 SSH 连接:

ufw status
OutputStatus: activeTo                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

由于防火墙当前阻止除 SSH 之外的所有连接,如果安装和配置其他服务,则需要调整防火墙设置以允许流量进入。

第 5 步 — 为普通用户启用外部访问

现在我们有了一个日常使用的普通用户,我们需要确保可以直接通过 SSH 连接到该帐户。

注意:sudo在验证可以使用新用户登录并使用之前,建议保持以root身份登录。这样,如果遇到问题,可以以root身份进行故障排除并进行任何必要的更改。

为新用户配置 SSH 访问的过程取决于服务器的root帐户是使用密码还是 SSH 密钥进行身份验证。

如果root账户使用密码认证

如果使用密码登录root帐户,则为SSH启用密码身份验证。可以通过打开一个新的终端会话并使用 SSH 和新用户名来通过 SSH 连接到新用户帐户:

ssh sammy@your_server_ip

输入普通用户的密码登录。如果需要使用管理权限运行命令,请输入如下内容:

sudo command_to_run

每次会话首次使用sudo时(以及此后定期),系统都会提示输入常规用户密码。

为了增强服务器的安全性,强烈建议设置 SSH 密钥而不是使用密码身份验证。请按照在 Ubuntu 20.04 上设置 SSH 密钥的来了解如何配置基于密钥的身份验证。

如果root账户使用SSH密钥认证

如果使用 SSH 密钥登录到root帐户,则SSH 的密码身份验证将被*禁用。*需要将本地公钥的副本添加到新用户的~/.ssh/authorized_keys文件中才能成功登录。

由于公钥已位于服务器上的帐户~/.ssh/authorized_keys文件中,因此我们可以将该文件和目录结构复制到现有会话中的新用户帐户中。

复制具有正确所有权和权限的文件的最简单方法是使用命令rsync。这会复制root用户的.ssh目录、保留权限并修改文件所有者,所有这些都通过单个命令完成。确保更改以下命令的突出显示部分以匹配常规用户名:

**注意:**该rsync命令对待以尾部斜杠结尾的源和目标的方式与不以尾部斜杠结尾的源和目标不同。在下面使用时rsync,请确保源目录 ( ~/.ssh)包含尾部斜杠(检查以确保你没有使用~/.ssh/)。

如果不小心在命令中添加了尾部斜杠,rsync则会将根帐户目录的内容复制到用户的目录,而不是复制整个目录结构。这些文件将位于错误的位置,并且 SSH 将无法找到并使用它们。

rsync --archive --chown=sammy:sammy ~/.ssh /home/sammy

现在,在本地计算机上打开一个新的终端会话,并使用 SSH 和新用户名:

ssh sammy@your_server_ip

现在应该无需使用密码即可登录新用户帐户。请记住,如果需要以管理权限运行命令,请sudo在其前面键入:

sudo command_to_run

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/599337.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RKE安装k8s及部署高可用rancher之证书在外面的7层LB(nginx中) 7层负载均衡

一 了解 Rancher 1 推荐架构 安装 Rancher 的方式有两种:单节点安装和高可用集群安装。因为单节点安装只适用于测试和 demo 环境,而且单节点安装和高可用集群安装之间不能进行数据迁移,所以推荐从一开始就使用高可用集群安装的方式安装 Ran…

正则表达式解析与应用:深度剖析正则表达式的威力

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…

前端页面锚点跳转

一,页面 二,获取需要跳转的标签class或者id 三,调用跳转方法 如果你的标签有唯一的ID,那么用getElementById方法更好 点击即可跳转锚点

柯桥职场英语中千万别把英文邮件中的“OOO”理解成“哦哦哦”!不然可就尴尬了!

有的同学工作中跟老外打交道比较多 尤其是写邮件,除了要把事情交代清楚 还有一些缩写我们也必须掌握 就拿发邮件时老外最爱用到的“OOO”来说 千万不要把“OOO”理解成“噢噢噢” 今天给大家分享几个关于邮件的常用表达 它们真正的意思你都知道吗 01 “OOO”可…

移动通信原理与关键技术学习(2)

1.多径信道滤波器表示,多径信道可以认为是线性时变滤波器,接收信号为发送信号与信道冲激响应的卷积。 2.调制就是对信号源的信息进行处理加到载波上,使其变为适合于信道传输的形式的过程,就是使载波随信号而改变的技术。 3.进行调…

java程序是如何执行的

我们开发的.java文件也就是源文件在经过了java编译器的编译之后变成了.class文件也就是字节码文件,当jvm在执行过程中用到某个类,而这个类还未被加载到内存中时,会由类加载器负责这个类的加载,整个的加载过程分成五步:…

Databend 的安装配置和使用

介绍 Databend 是一个内置在 Rust 中的开源、弹性和工作负载感知的云数据仓库,为 Snowflake 提供了具有成本效益的替代方案,专门对最大的数据集进行复杂分析而设计。 性能: 在存储对象上,能快速进行数据分析。没有索引和分区&a…

linux系统颜色的设置

颜色 颜色控制码 颜色 echo -e "\033[字背景颜色;文字颜色m字符串\033[0m" //设置文本颜色 echo -e "\033[0;32m字符串\033[0m" //设置文本为绿色,背景没有颜色 echo -e "\033[0;$(($RANDOM%730))m字符串\033[0m" //随机生…

【PythonRS】栅格数据/图片位深度(bit)转换

关于栅格数据/图片的位深度(eg.8bit、16bit、32bit)转换之前我就发过一篇文章,【Python&RS】基于GDAL栅格数据/图片位深度(bit)转换。但是最近在使用的时候发现好像效果不行,有时候转换不成功&#xff…

批量转换QQ音乐音频文件格式:从FLAC、OGG到MP3

目录 工具和库批量转换脚本结语 我们经常需要将音频文件从一种格式转换为另一种以满足不同的需求。例如,从QQ音乐中下载的 FLAC格式虽然提供了无损的音质,但文件大小较大,不适合在所有设备上播放。而MP3格式由于其较小的文件大小和广泛的兼容…

创意无限:火星文和变异字体的魅力世界

在互联网的浩瀚星空里,火星文和变异字体如同璀璨的繁星,照亮了网络世界的角落。它们以独特的创意和视觉冲击力,吸引着无数网友的目光。让我们一起走进这个充满创意和想象力的世界,感受火星文和变异字体的无限魅力。 火星文生成器…

软件测试|SQL中的LIKE模糊匹配该怎么用?

简介 在SQL(Structured Query Language)中,LIKE是一种用于模糊匹配的操作符。通过使用LIKE,我们可以根据模式匹配的方式进行数据检索,而不仅仅局限于完全匹配。本文将详细介绍SQL中LIKE操作符的语法、用法以及一些示例…

全志F1C100s Linux 系统编译出错:不能连接 github

环境 Ubuntu 20.04 LTS 64 位虚拟机 开发板:Lichee Pi Nano 源代码:GitHub - florpor/licheepi-nano 问题描述 该源码库使用了 git 子模块的概念,一个库中包含了 u-boot、Linux等代码库。不需要分别编译,一个 make 全搞定 编译时提示错误: >>> linux-hea…

Halcon根据特征值选择区域select_shape

Halcon根据特征值选择区域 关于提取图像的特征,比较常用的一个算子是select_shape算子,它能高效地根据特征提取出符合条件的区域。该算子的原型如下: select_shape (Regions : SelectedRegions : Features, Operation, Min, Max :)参数1和参…

win和linux打印tree命令目录结构命令

win 输入tree: cmd: tree 显示文件夹不显示文件 可以用相对路径:tree .\test_pipreqs 省略.\也可以:tree test_pipreqs 显示文件 上面只显示文件夹未能显示文件。我们继续看下面: cmd: tree [path] [/f] [/a] ----------/f 显示每个文件中文件…

修改 Git 仓库的远程地址

要修改 Git 仓库的远程地址&#xff0c;你可以使用以下命令&#xff1a; 首先&#xff0c;查看当前的远程地址列表&#xff0c;使用命令 git remote -v。如果你想修改已存在的远程地址&#xff0c;可以使用命令 git remote set-url <remote_name> <new_url>。在这…

【论文阅读笔记】Mip-NeRF 360: Unbounded Anti-Aliased Neural Radiance Fields

目录 概述摘要引言参数化效率歧义性 mip-NeRF场景和光线参数化从粗到细的在线蒸馏基于区间的模型的正则化实现细节实验限制总结&#xff1a;附录退火膨胀采样背景颜色 paper&#xff1a;https://arxiv.org/abs/2111.12077 code&#xff1a;https://github.com/google-research/…

【LeetCode】601. 体育馆的人流量

表&#xff1a;Stadium ------------------------ | Column Name | Type | ------------------------ | id | int | | visit_date | date | | people | int | ------------------------ visit_date 是该表中具有唯一值的列。 每日人流量…

Android 项目工程配置签名文件

1. Android签名证书(.keystore) Android平台打包发布apk应用&#xff0c;需要使用数字证书&#xff08;.keystore文件&#xff09;进行签名&#xff0c;用于表明开发者身份。   Android证书的生成是自助和免费的&#xff0c;不需要审批或付费。   可以使用JRE环境中的keyto…

【UML建模】部署图(Deployment Diagram)

1.概述 部署图是一种结构图&#xff0c;用于描述软件系统在不同计算机硬件或设备上的部署和配置情况&#xff0c;以图形化的方式展示系统中组件、节点和连接之间的物理部署关系。 通过部署图&#xff0c;可以清晰地了解系统的物理结构和部署方式&#xff0c;包括系统组件和节…