IPTables正在我的Web服务器上运行。 我真的需要SSHdynamic端口转发,但是我的IPTables DROP任何INPUT / OUPUT连接,只允许一些端口。 对于FORWARD链,我写了这些规则: Chain FORWARD (policy ACCEPT) target prot opt source destination DROP tcp — 0.0.0.0/0 0.0.0.0/0 tcpflags:! 0x17/0x02 state NEW ACCEPT all -f 0.0.0.0/0 0.0.0.0/0 limit: avg 100/sec burst 100 ACCEPT icmp — 0.0.0.0/0 0.0.0.0/0 limit: avg 2/sec burst 10 DROP all — 0.0.0.0/0 0.0.0.0/0 state INVALID 我的规则可以阻止任何SSHdynamic端口转发连接。 我需要写什么规则? 不要告诉我“禁用IPTables”,我需要防火墙来反黑客。
可能重复: 基于主机名/域的FTP反向代理 我有3个服务器都在同一个端口上有FTP。 他们都在相同的路由器后面的相同的IP地址。 路由器不能根据请求的域,只转发端口。 目前所有请求都通过路由器到达server1。 我想请求s1.example.com:21去server1:21 和s2.example.com:21去server2:21等。 有没有简单的方法来做到这一点与Apache或其他手段?
我使用RDP从一台Windows机器连接到另一台机器。 我希望将stream向localhost:81stream量转发到可通过本地IP地址的内部networking访问远程机器的机器,比如说10.90.228.163 。 所以我想要TCPstream量去: client –> localhost:81 –> [rdphost] –> 10.90.228.163:81 –> server 使用OpenSSH和PuTTY,我可以使用本地端口转发来做到这一点; 转发本地端口81到10.90.228.163:123 。 有没有办法用RDP来做到这一点?
我正尝试在运行CentOS 5.5的OpenVZ容器上设置一个简单的端口转发。 当我运行一个命令时,我得到错误。 iptables -t nat -A PREROUTING -p tcp –dport 80 -j REDIRECT –to-port 8080 iptables v1.3.5: can't initialize iptables table `nat': Table does not exist (do you need to insmod?) Perhaps iptables or your kernel needs to be upgraded. 相同的命令在硬件节点或任何其他物理服务器上正常工作。 我知道我可以在硬件节点上为特定容器设置端口转发,但那不是解决scheme。
问题 我试图从Windows或Linux计算机上configuration一个到NexentaStor设备的SSH隧道,以便我可以根据Crashplan支持站点上的这些说明将Crashplan桌面GUI连接到在Nexenta盒子上运行的无头Crashplan服务器: Connect到一个无头的CrashPlan桌面 。 到目前为止,我无法从Windows客户端(使用Putty)或Linux客户端(使用命令行SSH)获得有效的SSH隧道。 我相当确定问题出在NexentaStor的接收端。 博客文章 – Nexenta上的CrashPlan备份 – 表明它可以在“在/etc/ssh/sshd_config启用Nexenta中的TCP转发之后”工作 – 尽pipe我不确定如何去做或者特别是什么我需要去做。 我已经尝试过的东西 确保Nexenta框上的Crashplan服务器正在侦听端口4243 $ netstat -na | grep LISTEN | grep 42 127.0.0.1.4243 *.* 0 0 131072 0 LISTEN *.4242 *.* 0 0 65928 0 LISTEN 从Linux主机build立隧道: $ ssh -L 4200:localhost:4243 admin:10.0.0.56 然后从Linux主机的另一个terminal上用telnetvalidation隧道: $ telnet localhost 4200 Trying ::1… Connected to localhost. Escape […]
虽然不打算交叉发布,但是在将这个问题发送到SecurityFocus的OpenSSH列表之后,我注意到这个列表的stream量很低(前一个post大约是5个月前)。 这就是说,我决定在这里重新发布,因为这个问题可能会得到更多的眼球(如果得到回答,将会有更好的机会被其他人使用): 问题:我有一个从内部机器到我的DMZ中的主机的反向SSH隧道,它被设置为在系统启动时启动,并在隧道失败时重新启动。 但是,当隧道中断(例如,由于networking中断)时,由于DMZ主机上的端口正在使用而无法重新build立。 从我读的OpenSSH邮件列表档案和其他地方,这似乎是因为端口处于TIME_WAIT状态。 这很好:我可以在build立隧道的脚本中放入睡眠声明。 但是,这导致了两个问题: 1)如何确定在特定的Linux(或其他)系统上如何定义TIME_WAIT间隔? 虽然我可以睡5分钟,没问题,但最好尽可能多地刮胡子。 2)尽pipeOpenSSH似乎不支持“ClearAllForwardings”选项,但是有没有类似的function可以使auth'd连接自动拆卸并重新创build它之前build立的现有连接? 长时间睡眠可能会“足够好”,但如果可能的话,我宁愿更有效地处理TIME_WAIT条件。 我感谢任何指导或build议!
我使用dynamicSSH端口转发( -D )和正常的SSH端口转发( -L或-R ) -R很多不同的事情,包括为我的无线networkingstream量添加一层encryption。 我通常使用的命令如下所示: ssh -l raam -D 9000 my-linux-server.com 启动隧道后,我将Web浏览器configuration为使用端口为9000的127.0.0.1的SOCKS v5代理。现在,浏览器中的所有stream量(DNS除外)都通过SSH隧道传输。 当我准备closures隧道(例如,当我将笔记本电脑带到另一个地方时),我只需键入“ logout ”。 但是,SSH会话挂起,我必须按CTRL + C来获取我的本地提示。 为什么会发生这种情况,我该如何预防呢? (我的猜测是,我通过隧道打开的连接保持打开状态,我的本地SSH客户端正在等待它们closures,然后再给我提示,如果是这种情况,如何强制所有这些连接closures,米准备注销?)
我的情况: 我(本地主机) – >服务器A(IP:100.100.100.100)=>(服务器B(IP:192.168.25.100),服务器….) 我能SSH进入服务器,因为它有一个真正的IP,如果我然后要连接到服务器B,我会ssh服务器B与它的IP(192.168.25.100) 例: 从我的电脑: ssh [email protected] 那么在100.100.100.100中, ssh [email protected] 这将使我与服务器B与SSH 如果我想直接连接到服务器b呢? 我怎样才能做到这一点? 例: 从我的oc: [email protected] 我已经尝试了以下内容: ssh -L 22:localhost:22 [email protected] 没有成功
跟进:看起来像是几个月运行每个服务器的快速断开连接可能是巧合,只是用来揭示实际的问题。 无法重新连接的原因几乎可以肯定是由于AliveInterval值(kasperd的答案)。 使用ExitOnForwardFailure选项应允许在重新连接之前正确地执行超时,这在大多数情况下应该解决问题。 MadHatter的build议(杀死脚本)可能是确保隧道可以重新连接,即使其他一切都失败的最好方法。 我有一台防火墙后面的服务器(A),它在几个端口上启动一个反向隧道到一个小的DigitalOcean VPS(B),所以我可以通过B的IP地址连接到A。 隧道一直工作了大约3个月,但在过去24小时内突然失败了四次。 同样的事情发生在另一个VPS提供商身上 – 几个月的完美运营,然后突然发生了多个快速失败。 我在机器A上有一个脚本,它会自动执行隧道命令( ssh -R *:X:localhost:X address_of_B对于每个端口X),但是当它执行时, Warning: remote port forwarding failed for listen port X 。 进入服务器上的sshd /var/log/secure显示以下错误: bind: Address already in use error: bind: Address already in use error: channel_setup_fwd_listener: cannot listen to port: X 解决需要重新启动VPS。 在此之前,所有尝试重新连接都会导致“远程端口转发失败”消息,并且无法工作。 现在到隧道只停留约4个小时的地步。 VPS上没有任何改变,它是一个单用户,单用户机器,只能作为反向隧道端点。 它在CentOS 6.5上运行OpenSSH_5.3p1。 看来sshd在连接丢失的时候并没有closures端口。 我无法解释为什么,或者为什么在经过几个月的几乎完美的操作后突然发生。 为了澄清一下,我首先需要弄清楚为什么sshd在隧道失败后拒绝监听端口,这似乎是由于sshd将端口打开并且从不closures端口引起的。 这似乎是主要的问题。 […]