如何启用与iptables的Windows共享?

我在CentOS5上有一个OpenVPN服务器,我想通过VPN启用Windows共享。

当我尝试访问Windows共享,然后注意到发生。 没有错误或任何东西。

我的iptables规则是默认的加上这些:

iptables -I INPUT -i eth0 -p udp --dport 1194 -j ACCEPT iptables -I FORWARD -i eth0 -o tun0 -j ACCEPT iptables -I FORWARD -i tun0 -o eth0 -j ACCEPT iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE modprobe ip_conntrack modprobe ip_conntrack_ftp 

我试图添加这些,但没有通过VPN启用Windows共享。

 IPTABLES="/sbin/iptables" LAN="eth0" $IPTABLES -A INPUT -i $LAN -p tcp --dport 137 -j ACCEPT # NetBIOS name service tcp $IPTABLES -A INPUT -i $LAN -p udp --dport 137 -j ACCEPT # NetBIOS name service udp $IPTABLES -A INPUT -i $LAN -p udp --dport 138 -j ACCEPT # NetBIOS datagram service $IPTABLES -A INPUT -i $LAN -p tcp --dport 139 -j ACCEPT # NetBIOS session service File/printer sharing and other operations $IPTABLES -A INPUT -i $LAN -p tcp --dport 445 -j ACCEPT # Used by Win2k/xp when NetBIOS over TCP/IP is disabled - Microsoft Common Internet File System $IPTABLES -A INPUT -i $LAN -p udp --dport 445 -j ACCEPT #$IPTABLES -A INPUT -i $LAN -p tcp --dport 901 -j ACCEPT # used by SWAT (GUI configuration tool for samba) 

有谁知道什么可能是错的,也许如何解决呢?

更新

我的设置看起来像这样。 OpenVPN服务器路由所有的私有子网,所以当我连接时,我可以SSH和ping通常没有OpenVPN连接访问权限的服务器。

我已经在Windows,Mac和Linux客户端上testing了VPN。

在私人networking上有一个桑巴服务器。 当我使用Windows计算机连接到VPN时,我非常想访问这些共享。

从我可以谷歌,当netbios有点像获取FTP工作在NAT防火墙的意义上​​,必须做一些防火墙的工作。

为了使FTP通过NAT防火墙工作,我必须加载

 modprobe ip_conntrack modprobe ip_conntrack_ftp 

所以FTP服务器要与客户端build立的连接是耦合的。

netbios需要类似的处理才能正常工作吗?

你能检查基本的networking连接? 从Windows的openvpn客户端,你可以ping桑巴服务器? Samba服务器可以ping Windows openvpn客户端吗? 按IP地址? 按名字?

您可能还需要从openvpn中推出WINS信息,这些信息包括:

 push "dhcp-option WINS 192.168.1.2" 

或者任何作为networking中的WINS服务器的行为。 在这种情况下,您的客户端应该能够通过名称来parsingSamba服务器。

我没有加载额外的模块,如Netbios ip_conntrack。

您可能还想发布“iptables -L -n”和“iptables -L -n -t nat”的(redacted)输出,以便查看实际的防火墙规则。