公网如何SSH远程连接内网Linux服务器
远程登陆Linux服务器,我们可以使用SSH命令来实现。
SSH是一种加密的网络传输协议,它可以在不安全的网络中提供安全的传输环境,通常利用SSH来传输命令行界面,远程执行命令。
而当我们想要在公网环境下,SSH远程访问局域网内的linux服务器时,可以通过内网穿透映射SSH端口,来实现公网远程内网服务器。
这里推荐一款稳定好用的内网穿透工具,cpolar内网穿透 。它可以将本地开发服务器公开到Internet上,使用非常顺滑,连接也很稳定。
它支持http/https/tcp协议 ,不限制流量 ,不需要公网ip,也不用设置路由器。只需要在服务器上安装客户端,就可以创建隧道将内网端口映射到公网上,只要本地服务保持正常运行,你就可以在公网环境下,从任何地方访问内网服务器。
另外,cpolar还支持永久免费使用 ,但是带宽较小,只有1M,不过在演示、测试、及研发环境等场景下使用完全足够了。如果你需要长期远程访问,建议升级到专业套餐,支持配置固定的TCP端口地址,同时带宽也会增大到3M【ps:cpolar支持21天退款保证。】
1. 注册cpolar账号
进入cpolar官网,点击右上角的免费注册,我们先用邮箱地址注册一个cpolar账号并登录进去
cpolar官网:https://www.cpolar.com/
2. 安装配置cpolar内网穿透
2.1 安装客户端
linux系统支持一键自动安装脚本
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
curl -sL https://git.io/cpolar | sudo bash
2.2 进行token认证
登录进入cpolar官网后台,点击左侧的验证 ,可以查看到Authtoken码。
cpolar authtoken xxxxxxxxxxxxxxxxxx
2.3 配置cpolar开机自启动
sudo systemctl enable cpolar
2.4 启动服务
sudo systemctl start cpolar
2.5 查看服务状态
sudo systemctl status cpolar
如正常显示active ,则说明已经启动成功。
3. 获取SSH隧道公网地址
cpolar安装后默认会安装两个样例隧道,可在cpolar配置文件做修改或删减:
- 一个是Website隧道,指向 http协议 8080端口
- 一个是SSH隧道,指向 tcp协议 22端口
登录进入cpolar官网后台————状态,可以查看到所有在线隧道的公网地址,找到SSH隧道的公网地址,复制下来。
本例中为2.tcp.vip.cpolar.cn:12397 ,其中2.tcp.vip.cpolar.cn 对应公网地址,12397 对应所映射的公网端口号。
4. SSH远程内网服务器
4.1 windows系统远程内网服务器
windows系统,可以用PuTTY这样的SSH客户端。PuTTY下载完成后打开客户端,填入相关信息,然后点击"open",就可以远程连接到内网服务器了:
PuTTY下载地址:https://www.putty.org/
- 左侧
session 中的Host Name :输入cpolar所生成的公网地址 Port :输入所映射的公网端口号
4.2 Mac/Linux系统远程内网服务器
如访问端为Mac或者Linux系统 ,可以打开终端输入命令进行远程连接
ssh 用户名@公网地址 -p XXXXX(用户名替换为主机用户名,X为cpolar生成的端口号)
由于我们的本地22端口到了公网被映射到了20013端口,所以,ssh命令需要加-p参数,后面加公网隧道端口号。
举例:
ssh cpolar@2.tcp.vip.cpolar.cn -p 12397
|