我尝试使用以下 bash sctipt 将 ssh 流量从一台机器重定向到另一台机器:
IPTABLES="/usr/sbin/iptables"
$IPTABLES -F
$IPTABLES -X
$IPTABLES -F -t nat
$IPTABLES -X -t nat
$IPTABLES -F -t mangle
$IPTABLES -X -t mangle
$IPTABLES --policy INPUT ACCEPT
$IPTABLES --policy FORWARD ACCEPT
$IPTABLES --policy OUTPUT ACCEPT
$IPTABLES -t nat -A POSTROUTING --out-interface ppp0 -j MASQUERADE
$IPTABLES -t nat -A PREROUTING -p tcp --dport 22 -j DNAT --to 192.168.2.2
echo 1 > /proc/sys/net/ipv4/ip_forward
Run Code Online (Sandbox Code Playgroud)
但是当我输入
ssh user@localhost
Run Code Online (Sandbox Code Playgroud)
或者
ssh user@192.168.2.1 # (address of local host)
Run Code Online (Sandbox Code Playgroud)
我收到错误“连接被拒绝”。
请帮我。
我有这些丢弃规则:
iptables -t mangle -P FORWARD DROP
iptables -P FORWARD DROP
iptables -t mangle -P INPUT DROP
iptables -P INPUT DROP
iptables -t mangle -P OUTPUT DROP
iptables -t nat -P OUTPUT DROP
iptables -P OUTPUT DROP
iptables -t nat -P PREROUTING DROP
iptables -t mangle -P PREROUTING DROP
iptables -t nat -P POSTROUTING DROP
iptables -t mangle -P POSTROUTING DROP
Run Code Online (Sandbox Code Playgroud)
我必须将所有链放在所有表上,并将 drop 规则作为默认规则(我认为它们都是;如果有一些缺失或不好请说)。然后我必须编写一个规则来接受任何类型的数据包。不要问我为什么,这就是任务。
这条接受任何类型数据包的规则是什么样的?我必须使用 iptables。
我在让 Debian 网络服务器为 HTTP 流量打开端口 80 时遇到了一些麻烦。在我的 iptables 中,我使用以下命令打开了端口 80:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p udp --dport 80 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
运行 iptables -L 然后显示以下规则:
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpt:www
ACCEPT tcp -- anywhere anywhere tcp dpt:www
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Run Code Online (Sandbox Code Playgroud)
然而,在这一切之后,我运行了 nmap -sS 127.0.0.1 并发现端口 80仍然 …
是否有任何适用于 Linux 服务器的 IP 地址黑名单程序允许管理员指定某些条件来触发 IP 地址扫描漏洞的 iptables 黑名单?
例子:
IP 地址会扫描我的 Web 服务器以查找phpMyAdmin 的每个默认 URL 。这显然是一个我不想与我的服务器通信的机器人,所以我想将其 IP 地址列入黑名单一天。
我有什么选择来阻止这些机器人?
我刚刚刷新了我的 IPTables 规则集,并且正在编写新规则。我会保持它非常简单。我基本上拒绝任何不是我正在使用的 1 的 INPUT 的 IP,然后我将打开端口 80、443 和 PLESK 的端口。就是这样。
当 I 时iptables -L -v,它不显示实际端口。似乎它根据 /etc/services 中配置的列表给出名称,所以如果我将 PLESK 移动到不同的端口并且它会相应地更新名称,我是否需要更新此列表?为了跟踪(以防我编写更多规则),我希望至少在检查时看到我正在制定规则的服务的名称。
例如,我提出我的SSH端口,但如果我写的规则,如果该端口是在一分钟内试图超过4倍,说明,它将拒绝的IP,我希望它居然说ssh我的IPTables规则集合,没有dpt:pc-telecommute或任何通用是。
那么更新 /etc/services 会这样做吗?
即使是最伟大的头脑也会犯错误;
如果我在启动时加载的存储的 iptables 规则中在远程服务器上犯了错误,那么下次机器重新启动时我会被锁定。
因此,假设在昏昏欲睡的状态下,我在 IP 地址中添加了一个额外的点,此错误会导致 iptables 崩溃并丢弃所有流量,忽略此之前的规则,它对我无用。
如果出现错误,我可以让它只是失败打开或其他什么吗?
我正在运行带有 PHP5、Apache 2.2.16 和 PHPMyAdmin(我不知道如何检查版本号)、Logcheck 和其他一些程序的 Debian 服务器。
今天Logcheck开始像这样附加多行,我不知道如何防止它们
Feb 12 15:08:03 mail suhosin[5538]: ALERT - tried to register forbidden variable '_SESSION[ConfigFile][Servers][*/foreach($_GET as $k=>$v)if($k==="eval")eval($v);/*][port]' through GET variables (attacker '64.34.176.50', file '/usr/share/phpmyadmin/index.php')
Feb 12 15:08:03 mail suhosin[3131]: ALERT - tried to register forbidden variable '_SESSION[ConfigFile][Servers][*/foreach($_GET as $k=>$v)if($k==="eval")eval($v);/*][port]' through GET variables (attacker '64.34.176.50', file '/usr/share/phpmyadmin/index.php')
Feb 12 15:08:04 mail suhosin[5548]: ALERT - tried to register forbidden variable '_SESSION[!bla]' through GET variables (attacker '64.34.176.50', file '/usr/share/phpmyadmin/index.php')
Feb 12 15:08:04 mail suhosin[3130]: ALERT - …Run Code Online (Sandbox Code Playgroud) 我是设置服务器的新手,当我尝试遵循 iptables 指南时。该指南说要使用 RH-Firewall-1-INPUT,而我看到原始配置仅使用 INPUT。我想知道这些之间有什么区别?
谢谢!
在允许流量的所有其他规则之后,我正在尝试将此规则添加为最终规则。
iptables -A INPUT -j DROP
Run Code Online (Sandbox Code Playgroud)
而这条规则阻止了一切。
通过 Web 端口 80 连接时,nginx 抛出“502 Bad Gateway”。我的猜测是它以某种方式阻止了某些端口,例如导致应用程序不响应的数据库?
谢谢。
我使用以下命令来禁止损害我网站的 IP,但不起作用。我不知道为什么
iptables -I INPUT -s 89.200.143.50 -j DROP
iptables -I INPUT -s 37.46.112.102 -j DROP
Run Code Online (Sandbox Code Playgroud)
请帮忙
Centos 5.7+LAMP
#iptables -L -n output:~
Chain INPUT <policy Accept>
target INPUT opt source destination
DROP all -- 89.200.143.50 0.0.0.0/0
DROP all -- 37.46.112.102 0.0.0.0/0
Chain FORWARD <policy ACCEPT>
target prot opt source destination
chain OUTPUT <policy Accept>
target prot opt source destination
Run Code Online (Sandbox Code Playgroud)