当前位置: 首页 > article >正文

通过 SSH 连接远程 Ubuntu 服务器

目录

  • 安装 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.kler.cn/a/388055.html

相关文章:

  • ESLint 使用教程(三):12个ESLint 配置项功能与使用方式详解
  • 43.第二阶段x86游戏实战2-提取游戏里面的lua
  • 协程3 --- golang的协程调度
  • 基于python 的opencv 使用GrabCut算法分割图像代码
  • 前端知识点---选择输入框confirm(Javascript)
  • 应用系统开发(1)涡流检测设备以及关键技术要点
  • 24下半年教资面试资源(幼儿+小学+初中+高中+各科)逐字稿
  • Redis集群——针对实习面试
  • JDK8主要特性
  • React 中 `key` 属性的警告及其解决方案
  • C++设计模式精选面试题及参考答案
  • 如何找到系统中bert-base-uncased默认安装位置
  • 数据结构和算法-贪心算法01- 认识贪心
  • 如何利用 Python 的爬虫技术获取淘宝天猫商品的价格信息?
  • 手写线程池c
  • 前端基础面试题·第四篇——Vue(其三)
  • 【flask web】补充内容,session、全局对象g、装饰器、钩子函数。
  • RandomWords随机生成单词
  • 「QT」几何数据类 之 QLineF 浮点型直线类
  • 前端入门一之DOM、获取元素、DOM核心、事件高级、操作元素、事件基础、节点操作
  • Spring Security @PreAuthorize @PostAuthorize 权限控制
  • 牛客小白月赛104——D.小红开锁
  • 机器人零位、工作空间、坐标系及其变换,以UR5e机器人为例
  • 大数据程序猿不可不看的资料大全
  • [AI] 深度学习的局限性:人工智能为什么仍然无法实现自主学习
  • 营业执照OCR识别API接口如何用PHP调用