ssh远程连接Ubuntu(局域网和非局域网)

2023-11-12


前言

我们通常使用ssh连接虚拟机中的Ubuntu,方便学习。但是当在项目中遇到远程控制主机的时候,发现ssh连接不到外网主机,如果使用向日葵或者别的工具,有时候很卡顿。这时候使用内网穿透就可以实现在非局域网ssh远程控制主机的目的。

1.局域网 远程连接

当两个主机处于一个局域网下时,这两个主机可以相互ping通,一个局域网下的两个主机用ssh连接比较简单。
1.切换root用户,如果未设置root用户密码,需要先设置root密码:

# 切换root用户
su root
# 设置root用户密码
sudo passwd root

2.安装ssh远程连接工具

sudo apt install openssh-server

3.开启ssh服务

sudo service ssh start
或者
sudo service ssh restart

# 停止ssh服务
sudo service ssh stop

4.设置ssh服务开机自启动(开机自启动基本都类似,python脚本开机自启动参考bash脚本注册到系统服务实现开机自启动

# 开机自启动
sudo systemctl enable ssh
#查看ssh服务状态
sudo systemctl status sshd

5.修改ssh的配置文件sshd_config,默认路径为/etc/ssh/ssd_config ,修改portListenAddressPermitRootLogin

sudo vim /etc/ssh/sshd_config

去掉注释,修改如下:表示监听22号端口(也可以改成其他端口,但是要确保端口打开),监听所有的地址,允许root用户远程登录
在这里插入图片描述
6.开启防火墙:

sudo ufw enable

7.ssh远程连接默认使用的是22号端口,要让防火墙允许ssh服务通过防火墙(如果改成了其他端口,一样的操作):

sudo ufw allow ssh
sudo ufw allow 22/tcp

8.修改后重启ssh服务,使其配置生效:

sudo systemctl restart ssh

9.ps查看ssh进程状态:
在这里插入图片描述
到这里,就可以通过ssh进行远程连接了。

2.非局域网 远程连接

Attention:ssh只能用于可以相互ping通的主机之间

使用Zerotier可以将接入的设备放在一个虚拟的局域网中,这样你在外网,只要机子配置了Zerotier和另一台机子在一个Network中,就可以直接访问了,废话不多说看操作。

1.登录zerotier 官网 创建一个new network ,复制NETWORK ID
在这里插入图片描述
上图中的NETWORK ID就是命令行中的你的network ID
2.Ubuntu安装zerotier

curl -s https://install.zerotier.com | sudo bash

3.Ubuntu加入zerotier局域网

sudo zerotier-cli join 你的network ID

4.Windows安装zerotier并加入局域网
客户端下载地址:https://www.zerotier.com/download/
安装之后右键join network,输入你的network ID

5.返回zerotier 官网在Ubuntu和Windows前面打勾 授权

在这里插入图片描述
6.在Windows客户端打开ssh连接,输入上图中Ubuntu的Manager IPs,即可连接成功。

3. Zerotier常用命令:

# 启动Zerotier
sudo systemctl start zerotier-one.service
# 重启Zerotier
sudo systemctl restart zerotier-one.service
# 设置开机自启动
sudo systemctl enable zerotier-one.service
# 查看服务状态
zerotier-cli status
# 加入网络
zerotier-cli join 8850xxxxxxxxxxxxxxx
# 离开网络
zerotier-cli leave 8850xxxxxxxxxxxxxxx
# 查看所有网络
zerotier-cli listnetworks

4.远程桌面控制

Ubuntu安装了zerotier后,也可以配合xRDP(远程桌面)进行操作,具体操作参考documentation

远程操作界面如下
在这里插入图片描述


总结

且学且分享。

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

ssh远程连接Ubuntu(局域网和非局域网) 的相关文章

随机推荐

  • 华为OD机试 - 最差产品奖( Python)

    题目描述 A公司准备对他下面的N个产品评选最差奖 评选的方式是首先对每个产品进行评分 然后根据评分区间计算相邻几个产品中最差的产品 评选的标准是依次找到从当前产品开始前M个产品中最差的产品 请给出最差产品的评分序列 输入描述 第一行 数字M
  • 手把手教你,把3D模型从stl格式导出iges格式的方法

    工具 Hypermesh 注意 下载和安装视频在我的上传资源里面 记得安装路径不能有中文 自己的操作账户名也不能是中文的 方法 第一 按照如下步骤 导入stl模型 第二步 点击Shaded 按钮 显示实体网格 第三步 点击Geom下的sur
  • 自己搭的12V 电机驱动电路设计

    1 单MOS管驱动电路 采用P75NF75为主角构成 2 双MOS管电机驱动电路设计 采用D4184管组合 3 半桥驱动电路设计 采用BTS7960芯片 两路半桥构成全桥驱动电路
  • s3c6410 android 移植Step by step

    Report 2009 03 05 转载请说明出处 不得用于商业用途 Linux forum id hongjiujing Porting android on s3c6410 Environment ubuntu 8 10 Board X
  • KeilMDK编译错误Error: L6218E: Undefined symbol __aeabi_assert (referred from xxx.o).

    问题描述 AirPressure AirPressure axf Error L6218E Undefined symbol aeabi assert referred from mbrtu o 问题原因 Error L6218E Unde
  • 爬虫乱码UnicodeEncodeError: ‘gbk’ codec can’t encode character ‘\xa0’ in position

    在Python中将网址写入文件的时候 会碰到 UnicodeEncodeError gbk codec can t encode character xa0 in position 0这个问题 其实就是在windows中 新建的文本文件的默
  • Connecting the Dots: 基于图神经网络的多元时间序列预测——学习合集

    关于源代码和数据集的理解可以参考以下几篇文章 1 github源代码 数据集 安装环境要求 2 原论文百度云链接 提取码 1234 3 帮助理解论文的文章1 4 帮助理解论文的文章2 5 帮助理解论文的文章3 6 交通流量预测数据集解读 7
  • UnityVR--小程序8--激光门伤害

    本文使用Line Renderer组件 在门框中画出一道激光线 被线照射到的主角将会扣分 另外 激光仅检测ragCast层 所以主角必须添加到ragCast层中 与坦克对战小程序 UnityVR 小程序7 坦克对战 的设置相同 1 在场景中
  • MySQL多表查询 (超详细)

    一 多表关系 项目开发中 在进行数据库表结构设计时 会根据业务需求及业务模块之间的关系 分析并设计表结构 由于业务之间相互关联 所以各个表结构之间也存在着各种联系 基本上分为三种 一对多 多对一 多对多 一对一 1 1 一对多 案例 部门与
  • 在线算法(online algorithm)--竞争性分析

    文章目录 一 Problem Setting 1 1 competitve analysis 1 2 page replacement 二 Deterministic Online Algorithms 2 1 deterministic
  • 穆土 的学习和生活网站

    前端学习 哔哩哔哩 哔哩哔哩中有很多的 up 主 都有学习的资源 你可以学到等多东西 个人关注的 up 主 pink 老师 黑马培训的一位老师 他带领了很多人进入了前端的领域 我看他的 html css js 的入门商品 珠峰培训官方 周萧
  • 任意版本pytorch-gpu环境搭建方法

    任意版本pytorch gpu环境搭建方法 tortorish的博客 CSDN博客 网上关于pytorch gpu环境搭建的教程非常多 但若在国内 直接使用pytorch官网上的命令 经常会遇到下载过慢的情况 而若使用清华源 阿里源等网站
  • WindowBuilder for Eclipse 3.7

    http download eclipse org windowbuilder WB integration 3 7 MyEclipse10 7 1和MyEclipse10 7的下载地址 http downloads myeclipseid
  • 深聊自动化测试之:10年小鱼给你10条建议,让你在自动化界占据一个墙角

    10年小鱼的自动化建议 1 哪一刻 让你想起了自动化 1 1 执行回归测试 1 2 压测场景执行并发 1 3 UI稳定 接口不断升级 2 七问 是否了解自动化风险 2 1 团队成员的资历 2 2 自动化成本投入产出比 2 3 慎重对待UI级
  • Python中eval()函数的使用

    今天给大家分享一下Python中的eval 函数 如果感觉博主的文章还不错的话 希望大家点赞支持一下博主 文章目录 eval 函数 语法 实例 实例1 实例2 实例3 eval 函数 eval 函数用来执行一个字符串表达式 并返回表达式的值
  • 【Spring传播机制底层原理】

    一 Spring的事务传播机制 Spring的事务传播机制是Spring框架中最核心的机制之一 它能够灵活地控制多个事务方法的执行顺序 提交或回滚等行为 在Spring中 事务是通过TxManager来管理的 TxManager是一个接口
  • Hyper-V:无法打开虚拟机,因为虚拟机监控程序未运行

    管理员权打开 cmd 窗口 输入 bcdedit set hypervisorlaunchtype Auto 前提是机器已经开启了 虚拟化和开启了虚拟机监控程序
  • kafka 应用实战

    一 Java 中使用 kafka 进行通信 依赖
  • 孟岩谈通证(11):通证所代表的多维价值观

    通证Token都有那些多维价值观呢 我还是你举一个特别具体的例子来说明 我有一个朋友他开了一个社区 是专门做中小学教育课外辅导老师之间交流的 社区里大家互相交换教学资料 试题等等材料 你说这个东西有没有价值 教书育人 然后帮助孩子们成长 这
  • ssh远程连接Ubuntu(局域网和非局域网)

    文章目录 前言 1 局域网 远程连接 2 非局域网 远程连接 3 Zerotier常用命令 4 远程桌面控制 总结 前言 我们通常使用ssh连接虚拟机中的Ubuntu 方便学习 但是当在项目中遇到远程控制主机的时候 发现ssh连接不到外网主