全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
12
返回列表 发新帖
楼主: Southcat

pve 端口转发连不上ssh

[复制链接]
 楼主| 发表于 2023-11-6 12:19:45 | 显示全部楼层
rocky1015 发表于 2023-11-6 08:54
你如果公网IP在vmbr0上,下面就不应该是eno1

auto vmbr0
iface vmbr0 inet static
        address ****/26
        gateway****
        bridge-ports enp6s0f0
        bridge-stp off
        bridge-fd 0

auto vmbr1
iface vmbr1 inet static
        address 192.168.1.1/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward
        post-up bash /root/iptables.config.sh
        post-up iptables -t nat -A POSTROUTING -s '192.168.1.0/24' -o vmbr0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.1.0/24' -o vmbr0 -j MASQUERADE
post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 2222 -j DNAT --to 192.168.1.67:22
post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 2222 -j DNAT --to 192.168.1.67:22

已经改了但是还是不通
 楼主| 发表于 2023-11-6 12:20:49 | 显示全部楼层
高启强 发表于 2023-11-6 12:12
用个屁的端口转发,

直接PVE装个ikuai 借助pve的虚拟网卡,直接就能把小鸡所有数据抛出去。 ...

有教程吗大佬,没搞过
发表于 2023-11-6 12:22:24 | 显示全部楼层
对比iptables我还是喜欢firewalld,安装完PVE,直接 apt install -y firewalld
虽然firewall也是基于iptables,但是fiewalld属于简化版
开启伪装
firewall-cmd --add-masquerade --permanent
:添加转发端口和远程IP以及端口
firewall-cmd --add-forward-port=port=本地端口:proto=tcp:toport=远程端口:toaddr=远程IP --permanent
firewall-cmd --reload
然后就可以了。稳定不掉。--permanent可以控制临时和永久。
PVE上述不生效,需要加上个参数,放到受信防火墙即可
firewall-cmd --zone=trusted --add-forward-port=port=本地端口:proto=tcp:toport=远程端口:toaddr=远程IP --permanent
firewall-cmd --reload
发表于 2023-11-6 12:27:24 | 显示全部楼层
建议pct进去先测试一下外联通不通,再考虑nat的事情。你要区分一下你的外网ip是绑定在eth0(你的网卡名字)还是vmbr0上的。
如果是eth0(你的网卡名字),那么vmbr应该分配内网地址给你个例子:

auto vmbr0
#private sub network
iface vmbr0 inet static
address 10.10.10.1
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s ’10.10.10.0/24’ -o eth0
-j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s ’10.10.10.0/24’ -o eth0
-j MASQUERADE

内网建好小鸡之后IPtable或者rinetd都可以转发端口。

如果外网直接是vmbr0,那么就把vmbr0改个12345都可以,再新建一个网桥用来分配内网地址,比如:

auto vmbr2
iface vmbr2 inet static
address 192.168.0.254
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s '192.168.0.0/24' -o vmbr0  -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.0.0/24' -o vmbr0  -j MASQUERADE

把流量转发到vmbr0上。

小技巧,有些时候配置对了但是网不同,尝试直接vnc或者如果是lxc的话,pct进去容器,对外ping一下,网络就通了。可能是路由没有宣告。
发表于 2023-11-6 12:37:18 | 显示全部楼层
都不想说,拿去
1 设置内网ip段
nano /etc/network/interfaces
2 增加网卡
auto vmbr0
iface vmbr0 inet static
    address 192.168.68.1/24
    bridge_ports none
    bridge_stp off
    bridge_fd 0
3 设置网卡转发
nano /etc/sysctl.conf
#看看有没有这行,没增加。有被注释,取消注释!
net.ipv4.ip_forward=1
#让他立刻生效
sysctl -p
4 设置要转发的端口
iptables -t nat -A POSTROUTING -s '192.168.68.0/24' -o eth1 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 13389 -j DNAT --to 192.168.68.2:22
安装apt-get install iptables-persistent

apt-get install iptables-persistent
保存规则

iptables-save > /etc/iptables/rules.v4
规则生效加载

iptables-restore < /etc/iptables/rules.v4
####2.5 开启加载规则

touch /etc/network/if-pre-up.d/iptables
chmod +x /etc/network/if-pre-up.d/iptables
nano /etc/network/if-pre-up.d/iptables
在打开的编辑器里面输入以下文本,然后保存退出

#!/bin/sh
/sbin/iptables-restore < /etc/iptables/rules.v4
这样设置后,每次开机会从/etc/iptables读取iptables设置。
修改iptables规则后,执行iptables-save > /etc/iptables/rules.v4这个命令就会把设置好的iptables规则保存到/etc/iptables这个文件。这样就不怕重启后丢失iptables设置了。

3.全部设置完成以后重启网卡
/etc/init.d/networking restart
发表于 2023-11-6 12:39:58 | 显示全部楼层
这个设定是网卡直接母鸡ip的,如果虚拟网卡自行修正,不解答
 楼主| 发表于 2023-11-6 12:54:58 | 显示全部楼层
三月七 发表于 2023-11-6 12:27
建议pct进去先测试一下外联通不通,再考虑nat的事情。你要区分一下你的外网ip是绑定在eth0(你的网卡名字) ...

vmbr0绑定的外网ip 然后vmbr1是给虚拟机用的,虚拟机现在能上网在宿主机也能练到虚拟机,但是端口转发不行。。
  1. iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10122 -j DNAT --to-destination 192.168.1.67:80
  2. post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 2222 -j DNAT --to 192.168.1.67:22
复制代码
这样写的 这两个都没有作用
发表于 2023-11-6 16:19:00 | 显示全部楼层
Southcat 发表于 2023-11-6 12:54
vmbr0绑定的外网ip 然后vmbr1是给虚拟机用的,虚拟机现在能上网在宿主机也能练到虚拟机,但是端口转发不 ...

但凡虚拟机外网已经通了,那就绝对可以转发。建议试试rinetd这样的转发工具。同时检查宿主机的防火墙
 楼主| 发表于 2023-11-6 21:31:14 | 显示全部楼层
三月七 发表于 2023-11-6 16:19
但凡虚拟机外网已经通了,那就绝对可以转发。建议试试rinetd这样的转发工具。同时检查宿主机的防火墙 ...

通了通了 非常感谢,我一直在我电脑上终端里用ssh -P 连接,刚才试了下finalshell结果通了,太奇怪了,非常感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2026-2-25 20:21 , Processed in 0.063321 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表