公网使用SSH远程登录macOS服务器的过程(内网穿透)

目录
  • 前言
  • 1. macOS打开远程登录
  • 2. 局域网内测试ssh远程
  • 3. 公网ssh远程连接macOS
    • 3.1 macOS安装配置cpolar
    • 3.2 获取ssh隧道公网地址
    • 3.3 测试公网ssh远程连接macOS
  • 4. 配置公网固定TCP地址
    • 4.1 保留一个固定TCP端口地址
    • 4.2 配置固定TCP端口地址
  • 5. 使用固定TCP端口地址ssh远程

前言

macOS系统自带有Secure Shell 客户端,它可让您登录到侦听传入SSH连接的远程服务器和台式机。我们可以用ssh username@ip来ssh到服务器,但通常局限于局域网内的远程。

本次教程,我们将使用cpolar内网穿透工具,映射ssh服务默认端口:22端口,获取公网地址,实现在公网环境下的ssh远程登录,无需公网IP,也无需设置路由器。

1. macOS打开远程登录

打开系统偏好设置,点击共享

勾选打开远程登录,复制右侧的ssh远程登录命令

2. 局域网内测试ssh远程

本例以windows系统测试ssh远程,点击开始菜单栏搜索cmd,打开命令提示符,输入ssh命令,提示确认,输入yes并回车,提示输入macOS登录密码

ssh username@ip地址

如:

ssh eve@192.168.0.106

局域网内ssh远程登录macOS成功。

3. 公网ssh远程连接macOS

当成功实现在局域网内ssh远程登录macOS后,接下来,我们将通过cpolar内网穿透映射22端口,实现在公网环境下ssh远程连接macOS,无需公网IP,也无需设置路由器。

cpolar官网:https://www.cpolar.com/

3.1 macOS安装配置cpolar

macos安装cpolar内网穿透可通过homebrew包管理器进行安装,无需手动下载安装包。

安装homebrew

Homebrew是一款Mac OS下的套件管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

通过Homebrew包管理器安装cpolar内网穿透

brew tap probezy/core && brew install cpolar

token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里

cpolar authtoken xxxxxxx

安装服务

sudo cpolar service install

启动服务

sudo cpolar service start

登录cpolar web UI管理界面

在浏览器上访问本地9200端口【http://127.0.0.1:9200/】,使用cpolar账号登录。

登录成功后,点击左侧仪表盘的隧道管理——隧道列表,可以看到两条样例隧道(可自行编辑或者删减)

  • ssh隧道:指向本地22端口,tcp协议
  • website隧道:指向本地8080端口,tcp协议

本次我们可以直接使用ssh样例隧道,或者也可以创建一条新的隧道。

3.2 获取ssh隧道公网地址

点击左侧仪表盘的状态——在线隧道列表,找到ssh隧道,可以看到系统有自动生成相应的公网地址,将其复制下来,注意tcp://无需复制,本例为6.tcp.cpolar.top:14946

3.3 测试公网ssh远程连接macOS

打开命令提示符,输入ssh命令:

ssh macOS用户名@公网地址 -p 公网端口号

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

如:

ssh eve@6.tcp.cpolar.top -p 14946

ssh远程登录成功!

4. 配置公网固定TCP地址

cpolar默认安装的ssh样例隧道使用的是随机端口地址,它会在24小时内随机变化,这对于经常访问的用户,或者生产环境的服务来说很不方便。为此,我们可以为其配置一个永久固定的公网TCP地址来进行远程,同时提高带宽。

注意需要将cpolar套餐升级至专业套餐或以上。

4.1 保留一个固定TCP端口地址

登录cpolar官网后台,点击左侧的预留,找到保留的TCP地址:

地区:选择China VIP描述:即备注,可自定义填写

点击保留

固定TCP地址保留成功,系统生成相应的公网地址+固定端口号,将其复制下来

4.2 配置固定TCP端口地址

访问http://127.0.0.1:9200/登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到ssh隧道,点击右侧的编辑

修改隧道信息,配置固定TCP端口地址:

  • 端口类型:改为选择固定TCP端口
  • 预留的TCP地址:填写刚刚保留成功的固定TCP端口地址

点击更新

提示更新隧道成功,点击左侧仪表盘的状态——在线隧道列表,可以看到ssh隧道的公网地址已经更新为固定TCP端口地址,将其复制下来。

5. 使用固定TCP端口地址ssh远程

ssh eve@3.tcp.vip.cpolar.cn -p 11564

ssh远程登录成功,现在该公网地址不会再随机变化。

到此这篇关于公网使用SSH远程登录macOS服务器【内网穿透】的文章就介绍到这了,更多相关SSH远程登录macOS服务器内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • SSH端口转发实现内网穿透的实现

    我们局域网的机器能够访问外网,但是外网不能访问内网.因为内网访问互联网时候能确定外网的地址,外网却不能确定我们局域网内的具体地址.(ip地址有限)如果 我们在访问外网的时候,这个链接让他保持.不断,那么这个链接就相当于我们建了一条路,内网数据能出去,外网数据能进来,ssh也是这个方法. 使用ssh命令链接公网服务器 1.首先在外网服务器上编辑sshd的配置文件 vim /etc/ssh/sshd_config #将GatewayPorts 开关打开 GatewayPorts yes 重启sshd

  • vscode远程开发使用SSH远程连接服务器的方法「内网穿透」

    目录 1.安装OpenSSH 2.vscode配置ssh 3. 局域网测试连接远程服务器 4. 公网远程连接 4.1 ubuntu安装cpolar 4.2 创建隧道映射 4.3 测试公网远程连接 5. 配置固定TCP端口地址 5.1 保留一个固定TCP端口地址 5.2 配置固定TCP端口地址 5.3 测试固定公网地址远程 远程连接服务器工具有很多,比如XShell.putty等,可以通过ssh来远程连接服务器,但这用于写代码并不方便,可能需要现在本地写好代码后再将源代码传送到服务器运行.服务器上

  • 公网使用SSH远程登录macOS服务器的过程(内网穿透)

    目录 前言 1. macOS打开远程登录 2. 局域网内测试ssh远程 3. 公网ssh远程连接macOS 3.1 macOS安装配置cpolar 3.2 获取ssh隧道公网地址 3.3 测试公网ssh远程连接macOS 4. 配置公网固定TCP地址 4.1 保留一个固定TCP端口地址 4.2 配置固定TCP端口地址 5. 使用固定TCP端口地址ssh远程 前言 macOS系统自带有Secure Shell 客户端,它可让您登录到侦听传入SSH连接的远程服务器和台式机.我们可以用ssh user

  • 使用PLSQL远程连接Oracle数据库的方法(内网穿透)

    目录 1.前言 2.Oracle数据库的安装 2.1 Oracle下载安装 2.2 Oracle连接测试 2.3 Cpolar下载安装 3.Cpolar端口设置 3.1 Cpolar云端设置 3.2.Cpolar本地设置 4.公网访问测试 5.结语 1.前言 数据库作为十分重要的资料管理和存储库,一致都受到各软件大厂关注:而为了更好的管理和组织越来越庞大的数据库里的数据,又衍生出不同派系的数据模型(如关系和非关系.层次和网状模型.面向对象和半结构化等等),令人眼花缭乱.随着数据库在现代社会中的作

  • python pexpect ssh 远程登录服务器的方法

    使用了python中的pexpect模块,在测试代码之前,可输入python进入交互界面,输入help('pexpect'),查询是否本地含有pexpect模块. 如果没有,linux系统输入 easy_install pexpect便可自动安装. 测试代码,连接127.0.0.1 下面是我手动连接127.0.0.1, 发现只有在首次使用ssh连接127.0.0.1时,需要输入yes or no ,而后再次使用ssh ,则不需要再次输入yes 直接输入密码即可. 后续测试代码是二次链接,无需查询

  • python下paramiko模块实现ssh连接登录Linux服务器

    本文实例讲述了python下paramiko模块实现ssh连接登录Linux服务器的方法.分享给大家供大家参考.具体分析如下: python下有个paramiko模块,这个模块可以实现ssh登录linux服务器,下面贴出代码,注意,我在centos5.6下,python2.6.5,paramiko-1.7的版本下测试成功. #!/usr/bin/env python import paramiko hostname='172.28.102.249' username='root' passwor

  • python中SSH远程登录设备的实现方法

    目录 实验拓扑 实验目的: 实验脚本 代码优化 python中支持SSH协议的模块主要有Paramiko和netmiko两种,本次实验采用netmiko模块. netmikko模块为python的第三方模块,需要使用pip来下载安装.(联网的情况下) 下载完毕后,进入Python 3.10解释器,如果import netmiko没有报错,则说明Netmiko安装成功. 实验拓扑 将ensp的LSW1与本地虚拟网卡loopback0进行桥接,模拟将自己的电脑桥接到以下拓扑网络中. 实验目的: 通过

  • SSH远程登录和端口转发详解

    介绍 SSH 是创建在应用层和传输层基础上的安全协议,为计算机上的 Shell(壳层)提供安全的传输和使用环境. SSH 只是协议,有多种实现方式,本文基于其开源实现 OpenSSH 远程登录 SSH主要用于远程登录: $ ssh user@host 当本地用户名和远程用户名一致时,可省略用户名: $ ssh host SSH 协议默认端口是22,指定端口可使用 -p 参数 $ ssh -p 2222 user@host MITM SSH 采用公钥加密的方式来保证传输安全.过程如下: 客户端发起

  • 设置ssh无密码登录linux服务器的方法

    每次登录测试服务器,ssh登录总是需要输入密码.登录的少还行,登录的多了,多一行命令都是多余的. rsa认证登录方式 制作密钥对 在客户端(本地机器)终端下输入以下命令 ssh-keygen -t [rsa|dsa] rsa和dsa代表不同的算法 例如: ssh-keygen -t rsa 一直回车就对了(不用设置密码) 将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub(如果用dsa则生成id_dsa,id_dsa.pub) 生成位置在/root/.ssh/文件夹下(我用的是roo

  • windows安装openssh并通过生成SSH密钥登录Linux服务器

    SSH的英文全称是Secure SHell.通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS和IP欺骗.还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度.SSH有很多功能,它既可以代替telnet,又可以为ftp.pop.甚至ppp提供一个安全的"通道" 最初SSH是由芬兰的一家公司开发的.但是因为受版权和加密算法的限制,现在很多人都转而使用OpenSSH OpenSSH是SSH协议的

随机推荐