使用 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
相关文章:
使用 Ubuntu 20.04 进行初始服务器设置
前些天发现了一个人工智能学习网站,通俗易懂,风趣幽默,最重要的屌图甚多,忍不住分享一下给大家。点击跳转到网站。 使用 Ubuntu 20.04 进行初始服务器设置 介绍 首次创建新的 Ubuntu 20.04 服务器时,应该执行一些重…...
【SpringCloud】6、Spring Cloud Gateway路由配置
在 Spring Cloud Gateway 中配置 uri 有三种方式,包括: 1、WebSocket路由 spring:cloud:gateway:routes:- id: bt-apiuri: ws://localhost:9090/predicates:...

pdf转换成word怎么转?一篇文章教你轻松搞定
pdf转换成word怎么转?你是否曾经遇到过需要将PDF文件转换成Word格式的情况?比如,你需要编辑一个文档,或者想将一些电子书或报告复制到Word中以便于编辑或重新排版。在这种情况下,如何将PDF文件转换成Word格式呢&#x…...

【中南林业科技大学】计算机组成原理复习包括题目讲解(超详细)
来都来了点个赞收藏关注一下再走呗🌹🌹🌹🌹 第1章:绪论 1.冯诺依曼机特点,与现代计算机的区别 冯诺依曼计算机的基本思想是:程序和数据以二进制形式表示,存储程序控制。在计算机中&…...

恭喜 Databend 上榜 2023 开源创新榜「优秀开源项目 」
近日,国家科技传播中心见证了一场开源界的重要事件:由中国科协科学技术传播中心、中国计算机学会、中国通信学会和中国科学院软件研究所联合主办,CSDN 承办的 2023 年开源创新榜专家评审会圆满落幕。由王怀民院士担任评委会主任,评…...

网络连通性批量检测工具
一、背景介绍 企业网络安全防护中,都会要求配置物理网络防火墙以及主机防火墙,加强对网络安全的防护。云改数转之际,多系统上云过程中都会申请开通大量各类网络配置,针对这些复杂且庞大的网络策略开通配置,那么在网络配…...

2023高级人工智能期末总结
1、人工智能概念的一般描述 人工智能是那些与人的思维相关的活动,诸如决策、问题求解和学习等的自动化; 人工智能是一种计算机能够思维,使机器具有智力的激动人心的新尝试; 人工智能是研究如何让计算机做现阶段只有人才能做得好的…...
Oracle数据库迁移所有文件到新挂载磁盘路径
主要步骤: 1、停掉服务, 2、关闭数据库shutdown immediate 3、移动数据文件到新的位置。 4、启动到mount状态,如果也移动了ctl,需要启动到nomount下,生成参数文件。 5、alter database rename 文件名 to 新位置&a…...

基于YOLOv7算法的高精度实时安全背心目标检测识别系统(PyTorch+Pyside6+YOLOv7)
摘要:基于YOLOv7算法的高精度实时安全背心目标检测系统可用于日常生活中检测与定位安全背心,此系统可完成对输入图片、视频、文件夹以及摄像头方式的目标检测与识别,同时本系统还支持检测结果可视化与导出。本系统采用YOLOv7目标检测算法来训…...

Mac——VsCode使用格式化工具进行整理和格式化
1. 打开VSCode编辑器。 2. 点击左下角⚙️图标,打开设置 3. 进入设置后,你会看到一个搜索框,在搜索框中输入 format on save 来查找相关设置项。 4. 在设置列表中找到 Editor: Format On Save 选项,勾选它以启用在保存文件时自动格…...

73.乐理基础-打拍子-还原号、临时变音记号在简谱中的规则
上一个内容:72.乐理基础-打拍子-加延音线的节奏型-CSDN博客 下图中1-13,就是四几拍中所有可能出现的节奏型,以及它们的组合方式,需要练习,可以买一本视唱书去练习,搜乐谱练习,自己写节奏型根据…...

一款超酷的一体化网站测试工具:Web-Check
Web-Check 是一款功能强大的一体化工具,用于发现网站/主机的相关信息。用于检查网页的工具,用于确保网页的正确性和可访问性。它可以帮助开发人员和网站管理员检测网页中的错误和问题,并提供修复建议。 它只需要输入一个网站就可以查看一个网…...
MockServer简单使用记录
下载源码 下载git源码:git clone https://github.com/mock-server/mockserver.git 通过执行文件编译成jar包 ./mvnw clean package 可能会报错。 启动命令 java -jar ./mockserver-netty-jar-with-dependencies.jar -serverPort 1080 -proxyRemotePort 80 -pro…...
AI+金融:大模型引爆金融科技革命
仅供机构投资者使用 证券研究报告|行业深度研究报告 AI金融:大模型引爆金融科技革命 “AI应用”系列(二) 华西计算机团队 2023年7月28日 分析师:刘泽晶 联系人:刘波 SAC NO:S1120520020002 邮箱:…...

数据库(二)实验一:MySQL数据库的C/S模式部署
实验要求 在云服务器上启动两个实例Server和Client,并实现两个实例之间的免密ssh登录。在Server和Client上分别安装MySQL,在Server上创建数据库和用户,在Client上远程连接Server的数据库。 实验内容 创建两个云服务器实例 在腾讯云购买两个…...
RLHF几大常用框架实践对比(trlx、deepspeedchat、colossalaichat)
原文:RLHF几大常用框架实践对比(trlx、deepspeedchat、colossalaichat) - 知乎 目录 收起 一、RLHF的作用 二、实践效果 三、怎么做 1、框架 2、算法 3、数据 4、调参 一、RLHF的作用 从InstructGPT的论文中看,RLHF目的…...
Oracle/Myql批量操作
前言:在oracle中使用insert into values (),(),()多种方式都不能成功,记录正确的批量方法 注意:oracle有自己实现批量的方法,mysql适用的,oracle不一定适用 <insert id"insertTaskImportOpen" parameterType"l…...
关于一个web站点的欢迎页面
- 什么是一个web站点的欢迎页面? - 对于一个webapp来说,我们是可以设置它的欢迎页面的。 - 设置了欢迎页面之后,当你访问这个webapp的时候,或者访问这个web站点的时候,没有指定任何“资源路径”,这个时候…...

1050. 鸣人的影分身(dp划分)
题目: 1050. 鸣人的影分身 - AcWing题库 输入样例: 1 7 3输出样例: 8 思路: 代码: #include<iostream> using namespace std; const int N20; int f[N][N]; int main() {int T,m,n;cin>>T;while(T--)…...
51单片机点灯入门教程——2. 呼吸灯效果
基本说明 本章使用芯片:STC8H8K64U核心板 芯片手册:点此查看 Keil 开发环境配置:点此查看 本章学习内容:利用库函数,开发C程序,实现呼吸灯效果。 代码实例 需求:使用串口来控制呼吸灯效果&…...

3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...

图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

android13 app的触摸问题定位分析流程
一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...

PH热榜 | 2025-06-08
1. Thiings 标语:一套超过1900个免费AI生成的3D图标集合 介绍:Thiings是一个不断扩展的免费AI生成3D图标库,目前已有超过1900个图标。你可以按照主题浏览,生成自己的图标,或者下载整个图标集。所有图标都可以在个人或…...

Linux-进程间的通信
1、IPC: Inter Process Communication(进程间通信): 由于每个进程在操作系统中有独立的地址空间,它们不能像线程那样直接访问彼此的内存,所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...