UNRAID篇三(下):SSH端口转发实现远程访问

2020-01-22 23:32:00 16点赞 52收藏 12评论

在上篇里已经设置好Debian的虚拟机了,接下来本篇我们就来搞一下怎么通过ssh来访问内网的主机

首先我要先讲一下SSH端口转发,然后再在UNRAID上实践。我不是专业的,所以讲的理论也是我所理解的部分。如果说的不对还请给我指正。


第一部分理论:SSH端口转发

端口转发的命令主要用到3个参数 -D、-L、-R

首先,是最简单的-D:动态转发

不是科班出身,也就不讲定义了。你可以把它理解成代理服务器,直接上图。

UNRAID篇三(下):SSH端口转发实现远程访问

ssh –D 1080 username@主机B

访问主机A的1080端口,就等于主机B去访问内网内的各个主机的不同端口。

第二,是-L: 本地端口转发

UNRAID篇三(下):SSH端口转发实现远程访问

ssh –L 1080:主机C:80 username@主机B

简单的说就是通过SSH连接主机B,把主机C的80端口转发到主机A的1080端口。

第三,是-R: 本地端口转发

UNRAID篇三(下):SSH端口转发实现远程访问

ssh –R 1080:主机C:80 username@主机A

简单的说就是通过SSH连接主机A,把主机C的80端口转发到主机A的1080端口。

最后,说一些注意事项

关于参数

  • 参数-p,被登录的ssd服务器的sshd服务端口。这个参数用在ssh的连接端口不是22的情况。

  • 参数-g,在-L/-R/-D参数中,是允许远端主机连接本地转发端口,如果不加这个参数,只允许本地主机建立连接。这个在我们的案例中是如果主机A这边还有其他的机器需要访问A的1080端口,从而使用我们搭建的这个通路时(可以把这个参数理解把A当做网关)。

  • 参数-f,后台运行

  • 参数-N,是不执行远端命令,在只是端口转发时这条命令很有用处。(单纯只做转发,不用ssh命令)

关于配置

  • ssh端口转发,一般情况ssh服务默认端口转发是开着的。如果没有开端口转发,需要手动修改sshd_config文件,修改AllowTcpForwarding项目。

  • ssh隧道长时间没有通信可能会被断开,需要手动修改sshd_config文件,修改ClientAliveInterval和ClientAliveCountMax项目。

第二部分应用

方法一:用ssh -D与虚拟机Debian建立连接。主机A设置代理访问内网的UNRAID。如图:

UNRAID篇三(下):SSH端口转发实现远程访问

事前准备:Chrome浏览器安装代理插件

因为UNRAID在ie里使用经常会有些问题,所以建议使用chrome浏览器。Chrome代理插件安装方法如下:

Step1:下载SwitchyOmega插件

访问插件地址 https://github.com/FelisCatus/SwitchyOmega/releases ,下载SwitchyOmega_Chromium.crx

Step2:修改SwitchyOmega_Chromium.crx扩展名crx➡zip,解压缩SwitchyOmega_Chromium.zip

Step3:安装插件

UNRAID篇三(下):SSH端口转发实现远程访问

UNRAID篇三(下):SSH端口转发实现远程访问


正式开始,进行连接

Step1:ssh建立连接可以直接用CMD敲命令。(Win10已经默认安装了ssh客户端。)

ssh -D 1080 -p frp出来的端口 username@VM_Debian的frp主机地址

例如:ssh -D 1080 -p 10000 username@XXX.XXX.XXX.XXX

或者用putty进行连接

UNRAID篇三(下):SSH端口转发实现远程访问

Step2:设置Chrome代理,如图

UNRAID篇三(下):SSH端口转发实现远程访问

Step3:用Chrome访问UNRAID内网IP地址

UNRAID篇三(下):SSH端口转发实现远程访问

成功!


方法二:用ssh -L与虚拟机Debian建立连接。将UNRAID的端口映射到本机1080。如图:

UNRAID篇三(下):SSH端口转发实现远程访问

Step1:ssh建立连接可以直接用CMD敲命令。(Win10已经默认安装了ssh客户端。)

ssh -L 1080:192.168.1.10:80 -p frp出来的端口 username@VM_Debian的frp主机地址

例如:ssh -L 1080:192.168.1.10:80 -p 10000 username@XXX.XXX.XXX.XXX

或者用putty进行连接

UNRAID篇三(下):SSH端口转发实现远程访问

Step2:在主机A的浏览器中输入127.0.0.1:1080访问UNRAID控制台。

UNRAID篇三(下):SSH端口转发实现远程访问

也可以访问,成功!

总结:

用ssh -D或-L的方式可以创建安全连接访问UNRAID控制台,这样比暴露在公网上安全很多。其实讲到的-R也可以实现内网穿透,但是ssh时间长没有数据访问,连接会中断。没有frp稳定,不推荐使用-R的方式。所以这里就不讲-R的应用了。大家有兴趣可以自己设置一下。



展开 收起
12评论

  • 精彩
  • 最新
  • 注意安全啊,我在路由上转发了22端口,接黑群开了22端口自己远程访问,当天就有两个提示,多SSH连接错误被封锁了IP,吓得赶紧关了22端口的转发。即便要转发SSH登陆,还是自己定义一个不常用的端口号吧!

    校验提示文案

    提交
    不要担心。首先基本所有vps的22端口都开着。而ssh还是比较安全的。密码设置复杂一些。还有在上篇中,我们已经用frp转发了端口。暴露在公网的是转发的端口。 [高兴]

    校验提示文案

    提交
    我也是用端口转发,反正路由可以远程登录,需要时开一下,不需要就不转发了,不暴露的端口更安全。

    校验提示文案

    提交
    收起所有回复
  • 大佬,你好,我把默认的80端口换成其他的端口 用域名+端口访问unraid管理后台,总是连接拒绝,是哪里的问题呢?

    校验提示文案

    提交
    你用了那种方法?方法一?还是二?

    校验提示文案

    提交
    我直接在后台把原来http 80 改成 其他端口的 没用插件

    校验提示文案

    提交
    还有4条回复
    收起所有回复
  • 大佬我现在有个问题
    A地 3个摄像头 联通非公网ip
    B地有个NVR 电信动态公网IP
    我想异地组网 把A的摄像头录像存在b的录像机或者NAS里 得怎么搞啊..

    校验提示文案

    提交
  • 装个fail2ban吧

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
52
扫一下,分享更方便,购买更轻松