标签: forwarding

限制某些接口/网络之间的 IP 转发

我目前已ipv4.ip_forward启用在多个接口之间路由数据包。

我现在将系统扩展到 8 个接口,但我想限制接口/地址之间的路由。

一种选择是使用firewalld,但我将其部署在较旧版本的 RH 上,因此将通过iptables.

linux iptables forwarding

5
推荐指数
1
解决办法
9440
查看次数

IPTABLES:在本地处理数据包并将副本发送到另一台主机

我在配置 iptables 时遇到了麻烦:一些客户端向服务器发送消息。我希望主机服务器在本地处理消息(主机 A,正常情况下),但另外对于每条消息(tcp 数据包)将数据包的副本发送到另一台主机(主机 B,运行服务器的修改版本,我想看看相同消息的行为如何,以便我可以比较两台服务器)。应该用iptables来完成。我已尝试使用以下命令。这些将数据包发送到 B,但主机 A 不处理消息(应该由第二个命令完成?)。

iptables -t nat -A PREROUTING -p tcp --dport 31090 -j DNAT --to-destination IP_HOST_B:32090
iptables -t nat -A POSTROUTING -p tcp --dport 32090 -j SNAT --to-source IP_HOST_A:31090
Run Code Online (Sandbox Code Playgroud)

我在配置中遗漏了什么来实现我的目标?

谢谢你。

linux routing iptables forwarding packet

5
推荐指数
1
解决办法
8650
查看次数

什么是内核IP转发?相关问题

这个问题与什么是内核 ip 转发中的答案和评论有关

来自@LawrenceC

帖子1:

因此,在上面的示例中,如果您在 NIC 2 上有 Internet 连接,您可以将 NIC 2 设置为默认路由,然后来自 NIC 1 的任何流量都不会发往 192.168.2.0/24 上的某些内容通过网卡 2。

还有post2:

面向互联网的接口(每个上面的 NIC 1)需要在链上的 iptables POSTROUTING 中的 MASQUERADE 规则来做到这一点。参见 revsys.com/writings/quicktips/nat.html

http://www.revsys.com/writings/quicktips/nat.html它说:

然后,您需要配置 iptables 以将来自内部网络 /dev/eth1 上的数据包转发到 /dev/eth0 上的外部网络。

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

为什么我会使用FORWARD(根据POST2)如果前已经仅通过设置完成ip_forward …

iptables forwarding

4
推荐指数
1
解决办法
1530
查看次数

为输入提示传递值

我这样做unzip my.zip,如果文件已经存在,它会询问replace myfile.ext [y]es, [n]o, [A]ll, [N]one, [r]ename:

当命令提示输入时,如何强制输入?我知道unzip可能有强制标志,但我有兴趣传递输入。

bash pipe shell-script forwarding

3
推荐指数
1
解决办法
8109
查看次数

端口转发 - 为什么需要带有 POSTROUTING 规则的 iptables?

假设我有两台服务器:

-->服务器A有IP XXX.XXX.XXX.XXX

-->服务器B有IP YYY.YYY.YYY.YYY

我想要的是将流量从服务器 A(端口 80)重定向到服务器 B(端口 80)。

一种简单的方法是将以下规则与 iptables 放在服务器 A 中:

iptables -t nat -A PREROUTING -p tcp --dport port -j DNAT --to-destination server B:80
Run Code Online (Sandbox Code Playgroud)

但是,这个简单的规则不起作用。我们必须添加以下规则:

iptables -t nat -A POSTROUTING -j MASQUERADE
Run Code Online (Sandbox Code Playgroud)

为什么这样?为什么我们需要添加 POSTROUTING 规则?PREROUTING之后,数据包一定会自动去服务器B吧?

iptables forwarding

3
推荐指数
2
解决办法
1万
查看次数

配置 BIND-DNS 转发器的可能位置

我正在调查我们的 BIND 的配置,但无法弄清楚它是如何知道它是下一个名称服务器来请求某个他不是授权服务器的域...

例如,主域是“workgroup.lan”
查找dig www.google.com

回答

;; 问题部分:
;www.google.com。在一个

;; 回答部分:

[...]

;; 权威部分:
google.com。87465 在 NS ns1.google.com。

[...]

;; 查询时间:4毫秒
;;服务器:127.0.0.1#53(127.0.0.1)
;; 时间:2012 年 8 月 28 日星期二 15:56:08
;; 味精大小接收:220

但是谁/什么让他去询问其他名称服务器?或者这是默认行为?

它可能与负责包含根名称服务器 IP 的“.”-(根-)区域的“root.hint”文件有关吗?

dns bind forwarding

2
推荐指数
1
解决办法
596
查看次数

在内核编译时启用 IP 转发

我正在为路由器编译内核。我知道一种在现有 Linux 系统中启用 IP 转发的方法。在编译时,CONFIG_IP_FORWARD据说做同样的任务。

我正在使用基于 GTK 的内核配置工具 ( gconfig)配置 vanilla 内核的 3.12.14 版。但是,我在任何地方都看不到此选项。最近的内核中是否有备用配置选项,还是我遗漏了什么?

compiling ip kernel linux-kernel forwarding

2
推荐指数
1
解决办法
1907
查看次数

SSH 代理转发有效,但是 sudo -u username no shell/permissions 呢?作曲家

在远程服务器上工作 (A) 我想使用我的本地 SSH 密钥访问另一台不受我控制的服务器 (B) 上的存储库。

一般来说,这就像一个魅力。

我在远程服务器 (A) 上以 myUsername 身份登录,并且可以很好地访问 B 上的存储库。

问题是,有些任务(作曲家更新)需要由 (A) 上的另一个用户执行。

该用户不是管理员,执行脚本的文件夹是他的,只能由他而不是整个组写入,因此我不能将所有文件夹都修改为 777、775 或其他内容;)

问题是,当我想用​​以下方式执行脚本时: sudo -u another_user composer update 果然没有找到任何密钥,因为它们不会为此用户转发。

此外,“another_user”的外壳设置为 bin/false 使事情进一步复杂化!!!

这个问题有方法解决吗?

总结一下:我想通过我自己的远程服务器使用我的本地 ssh-keys 通过我自己的远程服务器访问另一个远程服务器 sudo -u another_user ...

如果有更多经验的人可以启发我,那就太好了!

编辑:我也试过这个:http : //mybrainhurts.com/blog/2012/05/git-sudo-local-ssh-keys.html但我想它不会工作,因为另一个用户没有外壳:(

shell ssh sudo forwarding ssh-agent

2
推荐指数
1
解决办法
5984
查看次数

使用 netfilter-persistent 的伪装规则

netfilter-persistent用来管理防火墙。

我想使用伪装(例如,或另一个)共享两个接口之间的连接。当我通过调用iptables它来运行这些操作时。

但是,如果我尝试更新存储在/etc/iptables/rules.v4添加这样一行的防火墙规则:

-t nat -A POSTROUTING -o wlan0 -j MASQUERADE
Run Code Online (Sandbox Code Playgroud)

-tmake开头的行netfilter-persistent无法运行且防火墙未更新:

Nov 16 11:51:32 helena systemd[1]: netfilter-persistent.service: Main process exited, code=exited, status=1/FAILURE
Nov 16 11:51:32 helena systemd[1]: Failed to start netfilter persistent configuration.
Run Code Online (Sandbox Code Playgroud)

所以我想知道是否可以使用netfilter-persistent或存储这种规则

  • 这是一个已知的限制吗?
  • 是否有充分的理由使其无法工作?
  • 有没有黑客让它工作?

iptables connection-sharing forwarding iptables-persistent netfilter

2
推荐指数
1
解决办法
1196
查看次数

如何通过 ssh 隧道重定向受限网络中的网站

我已经建立了一个反向 ssh 隧道,进入到aws服务器的受限网络,即访问它,我 ssh 进入aws服务器,然后从那里我可以通过某个自定义端口访问受限网络中的机器。

在这个受限网络上,有些设备可以通过 Web 浏览器进行配置。

我相信我可以做一些事情,比如ssh -R 8080:deviceIP:80 user@aws将它转发到aws机器,但我仍然无法访问它(除了通过非常慢的远程 X 之外)。如何通过管道deviceIP:80连接到家里的浏览器aws

我已经尝试了上面的 ssh 命令,然后将我家用电脑上的浏览器定向到aws:8080但没有加载任何页面......

ssh ssh-tunneling http forwarding

1
推荐指数
1
解决办法
3727
查看次数

将端口转发到远程服务器?

如何将本地端口转发到远程主机/端口?

我尝试过使用:

sudo iptables -t nat -A PREROUTING -p tcp --dport <PORT> -j DNAT --to-destination <DESTINATION_SERVER>:<DESTINATION_PORT>
Run Code Online (Sandbox Code Playgroud)

iptables forwarding

1
推荐指数
1
解决办法
2371
查看次数

/proc/sys/net/ipv4/ip_forward 的内容在重启后被删除

我在 VMWare 中安装了 Debian 10。这台 Debian 机器必须作为网关/路由器机器运行。

为了在 LAN 和 WAN 接口之间启用 ip 转发,我将 /proc/sys/net/ipv4/ip_forward 中的 nano 值从 编辑01

重启机器后,该值自动恢复为原来的值0

有谁知道是什么原因造成的以及我如何永久存储该值1

ip debian forwarding

1
推荐指数
1
解决办法
1451
查看次数