首页 > 其他分享 >ssh远端端口转发的一个问题和解决方法

ssh远端端口转发的一个问题和解决方法

时间:2023-06-01 21:44:11浏览次数:36  
标签:8080 端口 ssh 远端 80 local remote

现在假设有主机local_A, 主机remote_B, remote_B可以被外界访问,而local_A不行。

这种情况下,我们可以通过ssh的远端端口转发的功能,来实现外界访问local_A的特定端口。在local_A上执行下面的命令为向外界暴露local_A的80端口,

ssh -f -N -R 8080:localhost:80 zwl@remote_B

-f表示在backgroud运行,-N表示只做隧道建立的连接,并不登录交互式bash,-R后面的参数表示当有访问remote_B的8080端口的时候,信息转给local_A, localA发给他看到的localhost:80端口。理论上,到这里我们在任意的一个可以连接remote_B的浏览器上输入,http://remote_B:8080/即可连接到local_A上的80端口,并显示其中的网页。但一顿操作猛如虎,看到的却是无法连接。

这里说一下排查问题的过程。
sudo lsof -i TCP:8080看到的是localhost:8080端口被使用。问题就出在这,这里应该显示被使用的端口是*:8080,前者表示你仅仅能在remote_B上连接这个端口,即local_A。
查过之后,发现解决方案是:需要配置remote_B上的/etc/ssh/sshd_config中的GatewayPorts yes。修改后重启sshd,问题解决。

标签:8080,端口,ssh,远端,80,local,remote
From: https://www.cnblogs.com/zwlwf/p/17450292.html

相关文章

  • windows cmd使用ssh连接Linux以及文件上传
    CMD连接服务器命令(47.102.144.221为服务器IP)[email protected]文件上传(scp后面参数为本地文件地址,47.102.144.221为服务器IP,冒号后面指将文件上传到服务器哪个目录下)scpD:\[email protected]:/server/tmp如何要从服务器下载文件还是使用scp命令如下:sc......
  • Linux的SSH免密登录配置
    一、SSH概念SSH为SecureShell(安全外壳协议)的缩写,简单说,SSH只是一种网络协议,用于计算机之间的加密登录传输,很多ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而SSH就是专为远程登录会话和其他网络服务......
  • Linux - 配置服务器之间SSH免密登录
     如果集群中服务器之间没有配置SSH免密,那么SSH访问其他服务器时[root@node01bin]#sshnode02Theauthenticityofhost'node02(192.168.56.122)'can'tbeestablished.ECDSAkeyfingerprintisSHA256:iuntlxKiV34RaCDGi7UsV/Ng2oVwWgob9yX3wL+3zzo.ECDSAkeyfingerp......
  • SSH交互式脚本StrictHostKeyChecking选项 benchmode=yes
    SSH公钥检查是一个重要的安全机制,可以防范中间人劫持等黑客攻击。但是在特定情况下,严格的SSH公钥检查会破坏一些依赖SSH协议的自动化任务,就需要一种手段能够绕过SSH的公钥检查。什么是SSH公钥检查SSH连接远程主机时,会检查主机的公钥。如果是第一次该主机,会显示该主机的公......
  • VirtualBox配置kali 让宿主机可以SSH远程登录虚拟机 vb真难用啊 粘贴板双向死活配置不
    补充:kali里两个虚拟机之间互相访问设置就只需要设置下桥接网络就行!kali里: sudovi/etc/network/interfacesautoeth0ifaceeth0inetdhcp  kali里下载ssh服务包apt-getinstallssh打开ssh服务1servicesshstart打开ssh服务==》开启下!2servicesshstatus查看状......
  • 4、TOMCAT8080端口映射80端口
    端口号问题:8080端口映射80端口三种办法在server.xml配置文件中把8080端口改成80端口重启tomcat后,会发现服务是启动的,但是80端口却没有监听因为1023以内是特权端口,普通用户tomcat是无法使用的解决办法:1、在/lib/systemd/system/tomcat.service文件中把User和Group改成root运行(危......
  • 使用脚本批量Telnet和Curl测试端口是否连通
    使用脚本批量Telnet测试端口是否连通,使用telnet:telnets.sh:#!/bin/bashcheck_telnet(){forip_portin$(catip_info|grep-v'^#')doCHECK_PORT=$(echo$ip_port|awk-F:'{print$2}')CHECK_IP=$(echo$ip_port|awk-F:'{print$1}')......
  • git 使用ssh连接Github:017
    1.首先打开GitBash终端,生成私钥和公钥:ssh-kengen第一步提示:生成的密钥你要放在哪里?这里有给出默认地址,当然你也可以自己设置一个地址,如果不设置,直接回车就行 第二步提示:你要不要给你当前的密钥去设置一个密码?其实这一步没必要去设置,回车就行 第三步提示:提示你输入确认......
  • git 远端分支管理、仓库迁移:017
    1.在Github上创建分支: 2.在Github上删除分支:  3.使用命令来删除远端分支:如果远端分支发生改变,需要通过gitpull来获取远端最新分支,如下图,就可以看到获取到了最新分支: 查看本地分支和远端分支:gitbranch-a 本地无法切换远端分支,但是我们可以通过命令:check......
  • dnscapy使用——本质上是建立ssh的代理(通过dns tunnel)
    gitclonehttps://github.com/cr0hn/dnscapy.giteasy_installScapy服务端:pythondnscapy_server.pya.friendsxxx.com45.77.39.xxx客户端:ssh-oProxyCommand="sudopythondnscapy_client.pya.friendsxxx.com45.77.39.xxx"[email protected]其中:a.friendsxxx.com是......