文章目录
- 内网穿透简介
- 1. 查看地址
- 2.局域网测试连接
- 3.创建tcp隧道
- 3.1. 安装cpolar
- 4.远程访问
- 5.固定TCP地址
内网穿透简介
-
是一种通过公网将内网服务暴露出来的技术,可以使得内网服务可以被外网访问。以下是内网穿透的一些应用:
-
远程控制:通过内网穿透技术,可以实现对内网电脑的远程控制,比如远程桌面、远程命令行等。
-
文件共享:内网穿透可以让内网的文件共享服务暴露在公网上,方便用户在外网访问和下载内网文件。
-
网络游戏:有些网络游戏需要在同一局域网内才能进行联机游戏,通过内网穿透技术,可以让玩家在不同的地方进行联机游戏。
-
服务器搭建:通过内网穿透技术,可以将内网服务器暴露在公网上,方便用户在外网访问和使用内网服务器上的服务。
-
IoT设备远程控制:通过内网穿透技术,可以实现对内网中的IoT设备进行远程控制,比如智能家居设备的远程控制等。
总之,内网穿透技术可以扩展内网服务的覆盖范围,提高服务的可用性和灵活性。
简单几步实现Linux SFTP结合cpolar内网穿透工具实现远程连接
1. 查看地址
检查Linux IP地址,我们输入:
ip address
然后即可看到设备的局域网IP地址
2.局域网测试连接
我们打开连接工具,这里使用winSCP连接测试,协议选择SFTP,输入上面查看的ip地址,端口号默认22,输入用户名和密码,点击登陆
列出目录表示成功
3.创建tcp隧道
3.1. 安装cpolar
cpolar官网:https://www.cpolar.com/
- 支持一键自动安装脚本
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 查看版本号
cpolar version
出现版本号表示安装成功
- token认证
进入cpolar官网,点击免费注册进行注册一个账号
账号注册成功后并登录,点击左侧的验证查看自己的认证token
之后将token复制,把复制好的token执行如下命令
cpolar authtoken xxxxxx(复制的token)
/usr/local/etc/cpolar/cpolar.yml 表示cpolar配置文件所在的路径
- 将cpolar配置服务设置开机自启动,向系统添加服务
sudo systemctl enable cpolar
- 启动cpolar服务
sudo systemctl start cpolar
- 查看服务状态
sudo systemctl status cpolar
注:active(running)表示服务已经启动且处于运行中
- 打开cpolar web ui 管理界面
在centOS系统本地安装cpolar内网穿透之后,在外部浏览器上访问centOS本地9200端口,访问方式:局域网ip+:9200,打开cpolar web ui界面,
安装cpolar后,会默认生成一个ssh名称的隧道,如果有ssh,则可以直接跳到查看在线隧道列表,然后远程连接
如果没有,我们点击左侧仪表盘的隧道管理——创建隧道,由于ssh连接默认的是22端口,因此我们要来创建一条tcp隧道,指向22端口:
- 隧道名称:可自定义,注意不要重复
- 协议:tcp
- 本地地址:22
- 域名类型:选择随机域名
- 地区:选择China VIP Top
点击创建
创建好后打开在线隧道列表,查看随机公网tcp地址
4.远程访问
然后我们继续使用在winSCP ,输入上面创建的ssh连接公网地址和端口号,即可远程FTP传输
出现提示保存秘钥,点击是
可以看到目录列表,表示连接成功
5.固定TCP地址
上面通过cpolar建立的临时TCP数据隧道,成功通过FTP连接上了centos系统,。不过,此时的TCP数据隧道还是随机临时TCP隧道,每个24小时端口号就会发生变化。如果想要让不同设备间的数据隧道长期稳定存在,我们还需要进一步的设置(由于固定TCP隧道会长期占用cpolar服务器资源,因此不得不将此服务列入VIP项目中)。现在,就让我们来设置一条能长期稳定存在的TCP数据隧道吧。
要建立一条稳定的TCP数据隧道,我们首先要登录cpolar官网,进入仪表台的“预留”界面
在预留界面中,找到“保留的TCP地址”项目。在这个项目下,我们填入一些必要信息,如识别数据隧道的隧道名称、隧道使用区域等。
在这些信息填入后,点击右侧的“保留”按钮,将cpolar官网后台的隧道固定下来。此时cpolar会生成一个隧道端口,这就是我们ssh连接到centos系统的固定地址
接着我们回到cpolar界面,打开“隧道列表”,找到之前创建的随机临时TCP隧道,进入“编辑”页面,
将我们在cpolar官网获得的隧道端口粘贴进“预留的TCP地址”栏中,然后点击下方的“更新”按钮.
然后再次查看在线隧道列表,发现ssh的隧道对应的公网地址变成了我们官网保留的固定地址
固定地址后,我们再次使用我们固定的tcp地址FTP连接.
列出了linux目录表示成功,接下来就可以相互获取文件啦