通过 SSH 连接远程 Ubuntu 服务器

news2024/11/23 21:03:36

目录

  • 安装 SSH 服务器
  • 允许 SSH 通过防火墙
  • 远程 SSH 连接
  • (选)重启向日葵

安装 SSH 服务器

  1. 更新软件包列表
sudo apt update
  1. 安装 OpenSSH 服务器
sudo apt install openssh-server
  1. 检查 SSH 服务器状态
sudo systemctl status ssh

如果 SSH 服务器正在运行,会出现如下的输出:

● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor prese>
     Active: active (running) since Wed 2024-11-06 18:11:36 CST; 11min ago
       Docs: man:sshd(8)
             man:sshd_config(5)
   Main PID: 7247 (sshd)
      Tasks: 1 (limit: 4387)
     Memory: 2.7M
     CGroup: /system.slice/ssh.service
             └─7247 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups

Nov 06 18:11:36 abc-Default-string systemd[1]: Starting OpenBSD Secure She>
Nov 06 18:11:36 abc-Default-string sshd[7247]: Server listening on 0.0.0.0>
Nov 06 18:11:36 abc-Default-string sshd[7247]: Server listening on :: port>
Nov 06 18:11:36 abc-Default-string systemd[1]: Started OpenBSD Secure Shel>
Nov 06 18:13:18 abc-Default-string sshd[8311]: Accepted password for abc f>
Nov 06 18:13:18 abc-Default-string sshd[8311]: pam_unix(sshd:session): ses>
Nov 06 18:13:54 abc-Default-string sshd[8471]: Accepted password for abc f>
Nov 06 18:13:54 abc-Default-string sshd[8471]: pam_unix(sshd:session): ses>

显示 Active: active (running) ,表示 SSH 服务器正在运行,如下图所示。

active

  1. 配置 SSH 服务器(可选)

默认情况下,OpenSSH 服务器的配置文件位于 /etc/ssh/sshd_config ,可以根据需要修改此文件来进行自定义配置。例如,更改 SSH 服务器的监听端口、允许或禁止密码登录、限制登录用户等。

允许 SSH 通过防火墙

防火墙(ufw, Uncomplicated Firewall)

  1. 启用防火墙(如果尚未启用)
sudo ufw enable

询问是否继续启用防火墙。输入 y 并按下 Enter 键继续。

  1. 检查防火墙状态
sudo ufw status

如果防火墙已经启用,会出现如下的输出:

Status: active

To                         Action      From
--                         ------      ----
20/tcp                     ALLOW       Anywhere
21/tcp                     ALLOW       Anywhere
22/tcp                     ALLOW       Anywhere

如果防火墙尚未启用,您会看到输出 Status: inactive ,表明防火墙当前处于禁用状态

  1. 允许 SSH 通过防火墙

如果防火墙已启用但未允许 SSH 通过,则需要添加 SSH 规则

sudo ufw allow OpenSSH

出现如下输出,表示添加成功,如下图所示。

ufw

  1. 验证防火墙规则
sudo ufw status

如果防火墙已成功配置为允许 SSH 服务通过,会显示如下输出:

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere

远程 SSH 连接

  1. 查看目标服务器 IP 地址
ip addr show | grep inet

ifconfig
  1. 使用 SSH 远程连接到服务器
ssh [username]@[server_ip_address[

[username] 替换为您在服务器上的用户名, [server_ip_address] 替换为目标服务器 IP 地址

例如,如果远程服务器的用户名是 user,远程服务器的 IP 地址是 192.168.1.100,则命令如下:

ssh user@192.168.1.100
  1. 验证身份

如果是首次连接到服务器,系统可能会显示一条消息询问是否愿意继续连接。输入 yes 并按下 Enter 键,如下图所示。

key

如果这是第一次连接到服务器,系统可能会要求输入密码,输入密码后按下 Enter 键。
注:在命令行中输入密码时,密码是不显示的,直接输入并回车即可

  1. 连接成功

出现如下输出,表示已成功连接到服务器:

Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-42-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

...

Ref: 如何在 Ubuntu 上启用 SSH(适用于 20.04、22.04)?

(选)重启向日葵

  1. 查看向日葵运行状态
sudo systemctl status runsunloginclient.service

在这里插入图片描述

  1. 启动向日葵开机自启

如果状态不是active,执行以下命令,设置为开机自启动

sudo systemctl enable runsunloginclient.service
  1. 启动向日葵服务
sudo systemctl start runsunloginclient.service
  1. 查看远程设备码

注意验证码必须是永久验证码,否则重启后还是无法连接,如下图所示。

code

  1. 查看向日葵进程状态
ps -ef | grep sun
  1. 关闭向日葵进程

ps

--mod=service--cmd=autorun 的进程 kill

kill 860
kill 4242
  1. 重启进程
/usr/local/sunlogin/bin/sunloginclient --mod=service
/usr/local/sunlogin/bin/sunloginclient --cmd=autorun
  1. 启动向日葵进程

路径为向日葵默认安装路径

sudo /usr/local/sunlogin/bin/sunloginclient
  1. 连接失败

尝试重启后再重新连接,若重启后连接失败,另寻他法

Ref: Linux远程命令行终端启动向日葵

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

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

相关文章

http请求响应详解

http介绍 http协议: Http”协议称为是“超文本传输协议”(HTTP-Hypertext transfer protocol)。它定义了浏览器怎么向万维网服务器请求万维网文档,以及服务器怎么样把文档传送给浏览器。 https协议: 传统的HTTP协议…

使用 OpenCV 实现图像的透视变换

概述 在计算机视觉领域,经常需要对图像进行各种几何变换,如旋转、缩放和平移等。其中,透视变换(Perspective Transformation)是一种非常重要的变换方式,它能够模拟三维空间中的视角变化,例如从…

Oracle视频基础1.4.4练习

1.4.4 [dbs] 删干净上次创建的bbk ll rm -f *dbf ll rm -f spfilebbk.ora clear ll创建bbk的pfile,准备对应的目录 ll strings spfilewilson.ora | more strings spfilewilson.ora > initbbk.ora :%s/wilson/bbk :%s/*\.//g :wq ll vi initbbk.ora####### 创…

【spring】Cookie和Session的设置与获取(@CookieValue()和@SessionAttribute())

💐个人主页:初晴~ 📚相关专栏:程序猿的春天 获取Cookie 使用 Servlet 获取Cookie: Spring MVC 是基于 Servlet API 构建的原始 Web 框架,也是在 Servlet 的基础上实现的 RestController RequestMapping…

神经网络基础--什么是神经网络?? 常用激活函数是什么???

前言 本专栏更新神经网络的一些基础知识;案例代码基于pytorch;欢迎收藏 关注, 本人将会持续更新。 神经网络 1、什么是神经网络 人工神经网络( Artificial Neural Network, 简写为ANN)也简称为神经网络…

030集——分组法——C# CAD二次开发

重叠的图行进行分组,效果如下: 纵向投影重叠(横向移动冲突)可以分组: 纵向冲突也可以分组: 也可根据颜色不同分组: 部分代码如下,完整代码见文章下方名片 public class Class1{[CommandMethod(…

Edge 浏览器插件开发:图片切割插件

Edge 浏览器插件开发:图片切割插件 在图片处理领域,按比例切割图片是一个常见需求。本文将带你开发一个 Edge 浏览器插件,用于将用户上传的图片分割成 4 个部分并自动下载到本地。同时,本文介绍如何使用 cursor 辅助工具来更高效…

关于圆周率

关于圆周率 大约20年前的2005年,我在上大学的时候,网上流传这样一段程序,被称之为“外星人计算圆周率程序”。程序如下: long a 10000, b, c 2800, d, e, f[2801], g; main() {for (; b - c;) f[b] a / 5; for (; d 0, g …

【docker】6. 镜像仓库/镜像概念

Docker Registry(镜像仓库) 什么是 Docker Registry 镜像仓库 (Docker Registry) 负责存储、管理和分发镜像,并且提供了登录认证能力,建立了仓库的索引。 镜像仓库管理多个 Repository, Repository 通过命名来区分。…

debian系统安装qt的时候 显示xcb相关文件缺失

如果是安装之后的问题 我们可以选择使用ldd的命令查看当前依赖的so那些文件确实 ldd /home/yinsir/Qt/5.15.2/gcc_64/plugins/platforms/libqxcb.so 本人在进行打包的时候 出现则会个报错 ERROR: ldd outputLine: “libxcb-util.so.1 > not found” ERROR: for binary: “/…

怎么查看navicat的数据库密码

步骤1:打开navicat连接数据库工具&#xff0c;顶部的文件栏-导出结果-勾选导出密码-导出 步骤2&#xff1a;导出结果使用NotePad或文本打开&#xff0c;找到&#xff0c;数据库对应的的Password"995E66F64A15F6776“”的值复制下来 <Connection ConnectionName"…

清华大学提出Mini-Omni2:开源多模态模型,功能与GPT-4o媲美!

&#x1f310; 在人工智能领域&#xff0c;多模态模型的发展正如火如荼。今天&#xff0c;我们要介绍的是由清华大学提出的Mini-Omni2&#xff0c;这是一个开源的多模态语言模型&#xff0c;它在功能上与GPT-4o相媲美&#xff0c;能够理解和生成视觉、听觉和文本内容&#xff0…

webrtc前端播放器完整案例

https://download.csdn.net/download/jinhuding/89961792

网管平台(进阶篇):如何正确的管理网络设备?

网络设备作为构建计算机网络的重要基石&#xff0c;扮演着数据传输、连接和管理的关键角色。从交换机、路由器到防火墙、网关&#xff0c;各类网络设备共同协作&#xff0c;形成了高效、稳定的网络系统。本文将详细介绍网络设备的种类&#xff0c;并探讨如何正确管理这些设备&a…

深入理解 Spring AOP:面向切面编程的原理与应用

一、概述 AOP&#xff08;Aspect Orient Programming&#xff09;是一种设计思想&#xff0c;是软件设计领域中的面向切面编程&#xff0c;它是面向对象编程(OOP)的一种补充和完善。它以通过预编译方式和运行期动态代理方式&#xff0c;实现在不修改源代码的情况下给程序动态统…

ML 系列:机器学习和深度学习的深层次总结( 19)— PMF、PDF、平均值、方差、标准差

一、说明 在概率和统计学中&#xff0c;了解结果是如何量化的至关重要。概率质量函数 &#xff08;PMF&#xff09; 和概率密度函数 &#xff08;PDF&#xff09; 是实现此目的的基本工具&#xff0c;每个函数都提供不同类型的数据&#xff1a;离散和连续数据。 二、PMF 的定义…

基于STM32的八位数码管显示Proteus仿真设计

基于STM32的八位数码管显示Proteus仿真设计 1.主要功能2.仿真设计3. 程序设计4. 设计报告5. 资料清单&下载链接 基于STM32的八位数码管显示Proteus仿真设计(仿真程序设计报告讲解视频&#xff09; 仿真图proteus 8.9 程序编译器&#xff1a;keil 5 编程语言&#xff1a;…

Linux grep命令详解(多图、多示例)

文章目录 grep基本说明grep参数简单示例列举参数-v(反选)-r -l -H -i(目录子目录、只打印匹配文件、输出文件名、忽略大小写)-c -n -o(匹配次数、输出行号、只打印匹配)-A -B -C(前后行) 正则表达式基本正则表达式与扩展正则表达式 grep示例附录:正则表达式基本字符特殊字符Per…

力扣:225 用队列实现栈

栈、队列 栈&#xff1a; 弹夹&#xff0c;后进先出 队列&#xff1a; 排队&#xff0c;先进先出 描述&#xff1a; var MyStack function () {// 定义两个数组&#xff0c;模拟队列this.queue []this._queue [] };/** * param {number} x* return {void}*/ MyStack.protot…

【MFC编程(一)】MFC概述

文章目录 MFC概述MFC组成MFC对比Windows APIMFC类库基类CObject命令发送类CCmdTarget应用程序结构类应用程序线程支持类CWinThread/CWinApp文档类CDocument文档模板类CDocTemplate 窗口类窗口基类CWnd边框窗口类CFrameWnd视图类CView MFC概述 MFC&#xff08;Microsoft Founda…