如何实现无公网ip远程SSH连接家中本地的树莓派

文章目录

    • 如何通过 SSH 连接到树莓派
      • 步骤1. 在 Raspberry Pi 上启用 SSH
      • 步骤2. 查找树莓派的 IP 地址
      • 步骤3. SSH 到你的树莓派
      • 步骤 4. 在任何地点访问家中的树莓派
      • 4.1 安装 Cpolar
      • 4.2 cpolar进行token认证
      • 4.3 配置cpolar服务开机自启动
      • 4.4 查看映射到公网的隧道地址
      • 4.5 ssh公网远程访问树莓派
      • 4.6 修改树莓派默认密码(可选)

本篇文章主要介绍如何在局域网外SSH远程访问连接到家里的树莓派? 通过结合cpolar内网穿透工具,实现在Raspberry Pi中启用SSH,通过SSH连接到 Raspberry Pi设备以及如何远程在任何地点访问家中的本地树莓派。

在使用树莓派 (Raspberry Pi) 可以做的所有事情中,将其用作为家庭网络中的服务器非常流行。微小的占地面积和低功耗使其成为运行轻量级服务器的完美设备。

在这种情况下,您应该可以做的一件事是在 树莓派 (Raspberry Pi) 上运行命令,而无需插入显示器、键盘、鼠标,也不必每次都将自己移动到树莓派(Raspberry Pi) 所在的位置。

您可以通过从任何其他计算机、笔记本电脑、台式机甚至手机通过 SSH(安全外壳)登录您的 Raspberry Pi 来实现这一点。

如何通过 SSH 连接到树莓派

img

我假设您在 Pi 上运行 Raspbian 并已通过以太网或 WiFi 成功连接到网络。重要的是,您的 Raspberry Pi 已连接到网络,否则您将无法通过 SSH 连接到它(抱歉我说得太明显了)。

步骤1. 在 Raspberry Pi 上启用 SSH

SSH 在 Raspberry Pi 中默认处于禁用状态,因此您必须在全新安装 Raspbian 后打开 Pi 时启用它。

首先通过导航菜单转到 Raspberry Pi 配置窗口。

img

  • 树莓派菜单,树莓派配置

现在,转到接口选项卡,启用 SSH 并重新启动您的 Pi。

img

在树莓派上启用 SSH

您还可以在不通过终端的情况下启用 SSH。只需输入命令 sudo raspi-config 然后转到高级选项以启用 SSH。

步骤2. 查找树莓派的 IP 地址

在大多数情况下,您的 Raspberry Pi 将被分配一个本地 IP 地址,看起来像 192.168.x.x 或 10.x.x.x。您可以使用各种 Linux 命令来查找 IP 地址。

我在这里使用的是旧的 ifconfig 命令,但您也可以使用 ip address

ifconfig

img

树莓派网络配置

此命令显示所有活动网络适配器及其配置的列表。第一个条目(eth0)显示 IP 地址为 192.168.9.36,这是有效的。我使用以太网将我的 Raspberry Pi 连接到网络,因此它在 eth0 下。如果您在名为“wlan0”的条目下使用 WiFi 检查。

您还可以通过其他方式找到 IP 地址,例如检查路由器/调制解调器上的网络设备列表。

步骤3. SSH 到你的树莓派

现在您已经启用了 SSH 并找到了您的 IP 地址,您可以继续从任何其他计算机通过 SSH 连接到您的 Raspberry Pi。您还需要树莓派的用户名和密码。

默认用户名和密码是:

  • 用户名:pi
  • 密码:raspberry

如果您更改了默认密码,请使用新密码而不是上述密码。理想情况下,您必须更改默认密码。在过去,恶意软件感染了数千台使用默认用户名和密码的Raspberry Pi。

在要通过 SSH 连接到 Pi 的计算机上打开终端(在 Mac 和 Linux 上),然后键入以下命令。在 Windows 上,您可以使用像 Putty 这样的 SSH 客户端。

Windows用户安装SSH客户端:

如果您使用的是windows,你需要在电脑上安装PuTTY这样的SSH客户端,a free SSH and telnet client for Windowswww.putty.org/,或者百度安装。

下载完成之后,打开PuTTY,然后在session中的“Host Name”中输入树莓派的IP地址,然后点击"open",即可连接树莓派了。

img

第一次你会看到一个警告,点击 Accept 按钮。

img

提示输入登录用户名: pi

输入密码(默认为:raspberry )

现在,输入密码并按回车键。

img

通过SSH登录成功。

Mac和Linux用户:

在这里,使用您在上一步中找到的 IP 地址。

ssh pi@192.168.x.x

注意:确保您的 Raspberry Pi 和您用于通过 SSH 连接到 Raspberry Pi 的计算机连接到同一网络。

img

通过终端SSH

第一次你会看到一个警告,输入 yes 并按回车键。

img

输入密码(默认为‘raspberry’)

现在,输入密码并按回车键。

img

通过SSH登录成功

成功登录后,您将看到 Raspberry Pi 的终端。现在,您可以通过此终端远程(在当前网络内)在您的 Raspberry Pi 上执行任何命令,而无需物理访问您的 Raspberry Pi。

步骤 4. 在任何地点访问家中的树莓派

仅在家中同一局域网络访问树莓派有局限性,且一旦树莓派在家中的IP变化,如果有一天我们想在办公室的位置想访问树莓派怎么办?那我们现在就解决。

4.1 安装 Cpolar

cpolar是一款内网穿透工具,可以将您的内网站点暴露到公网上,使所有人可以访问到你的站点。也可以TCP的方式将您的ssh端口映射到公网地址端口上。

  • cpolar一键安装脚本:(国内用户)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 或短链接安装方式:(国外用户)
curl -sL https://git.io/cpolar | sudo bash
  • 查看cpolar版本信息
cpolar version

如果正常显示,则安装成功,如图:

img

4.2 cpolar进行token认证

如果您还没有cpolar账号,请去cpolar官网注册并登录后台获取认证token

cpolar authtoken xxxxxxxxxxxxxxxxxx

4.3 配置cpolar服务开机自启动

  • 配置cpolar开机自启动
sudo systemctl enable cpolar
  • 守护进程方式,启动cpolar
sudo systemctl start cpolar
  • 查看cpolar守护进程状态
sudo systemctl status cpolar

img

如图,状态为active, 说明启动状态成功

cpolar会默认安装两个样例隧道,一个是Website隧道指向http 8080端口,一个是ssh隧道,指向tcp 22端口。

4.4 查看映射到公网的隧道地址

我们登录cpolar后台–>状态,查看一下ssh隧道映射的公网地址:

img

4.5 ssh公网远程访问树莓派

ssh pi@1.tcp.vip.cpolar.cn -p 20013

由于我们的本地22端口到了公网被映射到了20013端口,所以,ssh命令需要加-p参数,后面加公网隧道端口号

img

登录成功了!现在,您可以在家里,或者学校,或者办公室,手机4G终端网络任意地方访问您的树莓派!

4.6 修改树莓派默认密码(可选)

上文提到,默认密码是不安全的,尤其是您将树莓派暴露在公网地址之上时,建议修改密码

passwd

img

系统提示输入当前密码,(默认为‘raspberry’) 然后重复输入新密码,即可。

此外,您还可以设置 SSH 密钥,这样您就不必每次通过 SSH 登录时都输入密码,但那是完全不同的主题。

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

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

相关文章

qemu + vscode图形化调试linux kernel

一、背景 使用命令行连接gdb 在调试时,虽然可以通过tui enable 显示源码,但还是存在设置断点麻烦(需要对着源码设置),terminal显示代码不方便,不利于我们学习;另外在gdb 下p命令显示结构体内容…

【command】使用nr简化npm run命令

参考文章 添加 alias nrnpm run通过alias启动命令可以帮助我们节省运行项目输入命令的时间 $ cd ~ $ vim .bash_profile $ source ~/.bashrc

ChatGPT与文心一言:智能回复与语言准确性的较量

在当今数字化时代,随着人们对智能化技术的需求不断增长,智能回复工具也成为了日常生活中不可或缺的一部分。ChatGPT和文心一言作为两个备受瞩目的智能回复工具,在智能回复、语言准确性以及知识库丰富度等方面各有卓越之处。 本文将对这两者进…

14.5 Flash查询和添加数据库数据

14.5 Flash查询和添加数据库数据 在Flash与数据库通讯的实际应用中,如何实现用户的登录与注册是经常遇到的一个问题。登录实际上就是ASP根据Flash提供的数据查询数据库的过程,而注册则是ASP将Flash提供的数据写入数据库的过程。 1.启动Access2003&…

LeetCode 热题 100 | 子串

目录 1 560. 和为 K 的子数组 2 239. 滑动窗口最大值 3 76. 最小覆盖子串 菜鸟做题第二周,语言是 C 1 560. 和为 K 的子数组 题眼:“子数组是数组中元素的连续非空序列。” 解决本问题的关键就在于如何翻译问题。子数组 s 的和可以看作数组 i 的…

C++ 类与对象(上)

目录 本节目标 1.面向过程和面向对象初步认识 2.类的引入 3.类的定义 4.类的访问限定符及封装 4.1 访问限定符 4.2 封装 5. 类的作用域 6. 类的实例化 7.类对象模型 7.1 如何计算类对象的大小 7.2 类对象的存储方式猜测 7.3 结构体内存对齐规则 8.this指针 8.1 thi…

Swift 周报 第四十六期

文章目录 前言卖不动了?iPhone 15 系列跌破 5000 元大关StoreKit 和审核指南更新将你的 App 提交到 Apple Vision Pro 的 App Store 提案通过的提案 Swift论坛推荐博文话题讨论关于我们 前言 本期是 Swift 编辑组整理周报的第四十六期,每个模块已初步成…

用C语言实现贪吃蛇游戏!!!

前言 大家好呀,我是Humble,不知不觉在CSND分享自己学过的C语言知识已经有三个多月了,从开始的C语言常见语法概念说到C语言的数据结构今天用C语言实现贪吃蛇已经有30余篇博客的内容,也希望这些内容可以帮助到各位正在阅读的小伙伴…

Spark3内核源码与优化

文章目录 一、Spark内核原理1、Spark 内核概述1.1 简介1.2 Spark 核心组件1.3 Spark 通用运行流程概述 2、Spark 部署模式2.1 YARN Cluster 模式(重点)2.2 YARN Client 模式2.3 Standalone Cluster 模式2.4 Standalone Client 模式 3、Spark 通讯架构3.1 Spark 通信架构概述3.2…

Springboot响应数据详解

功能接口 Controller下每一个暴露在外的方法都是一个功能接口 功能接口的请求路径是RequestMapping定义的路径,浏览器需要请求该功能则需要发出该路径下的请求。 RestController RestControllerControllerResponseBody(响应数据的注解) ResponseBody 类型&#…

视频号下载提取器:如何轻松获取视频号的视频

在数字化的世界中,我们每天重复刷着形形色色的短视频,你们知道他们每天接收到的媒体内容就是经过不断的处理和编辑呈现在我们观看的产物。 其中,视频内容由于其生动形象的表现形式,已经成为人们获取信息、娱乐和学习的重要途径。然…

[GXYCTF2019]BabyUpload1

尝试各种文件&#xff0c;黑名单过滤后缀ph&#xff0c;content-type限制image/jpeg 内容过滤<?&#xff0c;木马改用<script languagephp>eval($_POST[cmdjs]);</script> 上传.htaccess将上传的文件当作php解析 蚁剑连接得到flag

城市开发区视频系统建设方案:打造视频基座、加强图像数据治理

一、背景需求 随着城市建设的步伐日益加快&#xff0c;开发区已经成为了我国工业化、城镇化和对外开放的重要载体。自贸区、开发区和产业园的管理工作自然也变得至关重要。在城市经开区的展览展示馆、进出口商品展示交易中心等地&#xff0c;数千路监控摄像头遍布各角落&#…

嵌入式第十二天!(指针数组、指针和二维数组的关系、二级指针)

1. 指针数组&#xff1a; int *a[5]; char *str[5]; 指针数组主要用来操作字符串数组&#xff0c;通常将指针数组的每个元素存放字符串的首地址实现对多个字符串的操作。 二维数组主要用来存储字符串数组&#xff0c;通过每行存储一个字符串&#xff0c;多行存储多个字符串所组…

Phoncent博客GPT写作工具

对于许多人来说&#xff0c;写作并不是一件轻松的事情。有时候&#xff0c;我们可能会遇到写作灵感枯竭、写作思路混乱、语言表达困难等问题。为了解决这些问题&#xff0c;Phoncent博客推出了一款创新的工具——GPT写作工具&#xff0c;它利用了GPT技术&#xff0c;为用户提供…

linux安装docker-compose

前言 如果你的docker版本是23&#xff0c;请移步到linux安装新版docker&#xff08;23&#xff09;和docker-compose这篇博客 查看docker版本命令&#xff1a; docker --version今天安装docker-compose的时候&#xff0c;找了很多教程&#xff0c;但是本地一直报错&#xff0…

掌握使用 React 和 Ant Design 的个人博客艺术之美

文章目录 前言在React的海洋中起航安装 Create React App安装Ant Design 打造个性化的博客风格通过路由实现多页面美化与样式定制部署与分享总结 前言 在当今数字时代&#xff0c;个人博客成为表达观点、分享经验和展示技能的独特平台。在这个互联网浪潮中&#xff0c;选择使用…

每日一道面试题:Java中序列化与反序列化

写在开头 哈喽大家好&#xff0c;在高铁上码字的感觉是真不爽啊&#xff0c;小桌板又拥挤&#xff0c;旁边的小朋友也比较的吵闹&#xff0c;影响思绪&#xff0c;但这丝毫不影响咱学习的劲头&#xff01;哈哈哈&#xff0c;在这喧哗的车厢中&#xff0c;思考着这样的一个问题…

Ubuntu本地部署Nextcloud并结合内网穿透实现远程访问搭建个人云盘

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” 文章目录 摘要1. 环境搭建2. 测试局域网访问3. 内网穿透3.1 ubuntu本地安装cpolar3.2 创建隧道3.3 测试公网访…

百度云网盘下载速度如何提升到正常速度

引入问题 我们在下载代码学习资料的时候大多数都是百度云网盘&#xff0c;但是限速&#xff01;下载的十分的慢&#xff0c;有什么办法能让我们不开通会员就能享受正常速度呢&#xff1f; 当然有&#xff01; 解决百度云网盘下载速度过慢&#xff0c;提高到正常速度 点击右…