无需公网IP,SSH远程内网linux服务器
通常内网服务器没有公网IP,外网无法直接访问。我们可以通过一个公网服务器发起连接,来实现外网远程访问内网的服务器。
我这里用的是cpolar内网穿透
,支持http/https/tcp协议
,可以永久免费使用还不限制流量
,无需公网IP也不用设置路由器,操作也很简单,不需要自己搭建服务器。在安装客户端后,就可以创建隧道映射内网端口到公网,会生成相应的公网地址,使用该公网地址来进行远程访问就可以了。
1. 服务器安装配置cpolar内网穿透
1.1 安装
linux系统支持一键自动安装脚本
- 国内使用
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 国外使用
curl -sL https://git.io/cpolar | sudo bash
1.2 配置token
登录cpolar官网后台————验证,查看自己的认证token,之后将token贴在命令行里
cpolar authtoken xxxxxxx
1.3 配置服务开机自启动
sudo systemctl enable cpolar
1.4 启动服务
sudo systemctl start cpolar
1.5 查看服务状态
sudo systemctl status cpolar
如正常显示active
,则说明已经启动成功。
2. 获取公网隧道地址
cpolar默认会安装两个样例隧道
- 一个是Website隧道,指向http 8080端口
- 一个是ssh隧道,指向tcp 22端口
我们只需要登录cpolar官网后台————状态,就可以查看到所有在线隧道的公网地址。
获取到SSH隧道的公网TCP端口地址,就可以在外任意网络下SSH远程内网linux服务器
3. 外网SSH远程内网linux服务器
ssh username@公网地址 -p 公网端口号
如:
ssh pi@1.tcp.vip.cpolar.cn -p 20013
由于我们的本地22端口到了公网被映射到了20013端口,所以,ssh命令需要加-p参数,后面加公网隧道端口号。
如访问端为Windows系统
,可使用SSH客户端来进行远程,比如PuTTY这样的客户端。
在安装PuTTY之后,打开客户端,然后填入相关信息,然后点击"open",就可以远程连接到内网服务器了:
- 在
session
中的Host Name
中输入cpolar所生成的公网地址 Port
输入所映射的端口
由于使用免费的cpolar生成的公网地址,为随机临时地址,24小时内会发生变化,并且带宽较小,只有1M。对于需要长期SSH远程的用户来说,配置固定的公网TCP端口地址,提高带宽就很有必要【ps:cpolar支持21天退款保证】。
4. 保留一个固定TCP端口地址
cpolar 官网:https://www.cpolar.com/
首先,将cpolar套餐升级到专业版套餐或以上,支持配置固定的公网TCP端口地址。
登录cpolar官网,进入后台,点击左侧仪表盘的预留
。找到保留的TCP地址
,为SSH远程保留一个固定的TCP地址:
- 地区:选择China或者China VIP
- 描述:可自定义备注
TCP地址保留成功后,系统会自动生成相应的公网TCP端口地址,将其复制下来。
5. 配置SSH远程隧道
5.1 登录cpolar web ui
浏览器访问本地9200端口【http://ip地址:9200,http://locahost:9200/】,使用cpolar邮箱账号登录。
5.2 修改隧道信息
登录成功后,点击左侧仪表盘的隧道管理
——隧道列表
,找到ssh远程隧道,点击编辑
修改隧道信息:
- 端口类型:改为选择
固定TCP端口
- 预留的TCP地址:填入刚刚预留成功的固定TCP地址
修改完成后,点击更新
5.3 查看公网地址
隧道更新成功后,点击左侧仪表盘的状态
——在线隧道列表
,可以看到SSH隧道的公网地址已经更新为固定的公网TCP端口地址,将其复制下来,接下来测试使用固定的公网TCP端口地址进行SSH远程连接。
6. 使用固定TCP地址SSH远程
6.1 命令行SSH远程
输入命令:
ssh -p XXXXX 主机用户名@公网地址
由于我们的本地22端口到了公网被映射到了20013端口,所以,ssh命令需要加-p参数,后面加公网隧道端口号。其中,XXXXX为cpolar生成的端口号,用户名需替换为被远程主机的用户名。
如:
ssh -p 12669 root1@2.tcp.vip.cpolar.cn
6.2 SSH客户端远程
以putty客户端为例,打开putty:
- 在session中的Host Name中输入cpolar所生成的公网地址
- Port输入公网固定TCP端口地址
连接成功!
相关文章
- Linux SSH Backdoor分析排查
- 在linux上通过ssh直接登录到windows系统上,不用密码
- Linux:PS命令详解与使用
- linux输入子系统之按键驱动
- 重新点亮linux 基本软件————防火墙[一]
- 【Linux基础】linux updatedb命令
- Linux - 查看命令所属的软件包
- Linux平台单实例数据库安装
- Linux中 ubuntu ctrl+c, ctrl+z, ctrl+d ctrl+/ ctrl+s ctrl+q ctrl+l fg bg 区别 控制字符 stty
- (DT系列五)Linux kernel 是怎么将 devicetree中的内容生成plateform_device
- L71.linux命令每日一练 -- 第十章 Linux网络管理命令 -- wget和mailq
- L70.linux命令每日一练 -- 第十章 Linux网络管理命令 -- nc和ssh
- L43.linux命令每日一练 -- 第七章 Linux用户管理及用户信息查询命令 -- chage和chpasswd
- L2.linux命令每日一练 -- 第一章 Linux命令行简介
- Linux系统root密码重置教程
- Linux,curl工具,测试web,数据流直接打印到控制平台
- 02 从头开始atac项目 ubuntu20 install r4.2 Linux系统环境配置 服务器版本的rstudio r install in linux /ubuntu/centos
- Visual Studio新功能:针对Linux平台的新版SSH终端
- linux安装jdk-centos7系统:
- How to Install, Configure and Enable SSH Service in Linux