我的 ubuntu 服务器被感染了,有一个进程向一堆网站发出一堆 HTTP 请求(糟透了!)。我已将以下内容添加到我的防火墙 (UFW) 中:
sudo ufw deny out proto tcp to any port 1:65535
To Action From
-- ------ ----
1:65535/tcp DENY OUT Anywhere
Run Code Online (Sandbox Code Playgroud)
现在我想使用 netstat 只列出 OUTBOUND tcp 连接,而不是入站。我怎样才能做到这一点?
我已经在我的 ufw 上设置了一些规则,但我认为它并没有阻止任何事情。这是它目前的状态:
~# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), deny (routed)
New profiles: skip
To Action From
-- ------ ----
22 ALLOW IN Anywhere
80 ALLOW IN Anywhere
27015:27115/udp ALLOW IN Anywhere
27015:27115/tcp ALLOW IN Anywhere
22 (v6) ALLOW IN Anywhere (v6)
80 (v6) ALLOW IN Anywhere (v6)
27015:27115/udp (v6) ALLOW IN Anywhere (v6)
27015:27115/tcp (v6) ALLOW IN Anywhere (v6)
Run Code Online (Sandbox Code Playgroud)
如您所见,它默认拒绝传入连接并且只允许某些端口。但是,我刚刚在端口 8083 上设置了一个新服务,我可以从外部访问它。为什么会这样?
我已经使用 docker 容器来运行这个新服务,以防万一。
docker手册 ( http://docs.docker.com/installation/ubuntulinux/#docker-and-ufw ) 指出有必要将 UFWs DEFAULT_FORWARD_POLICY 设置为“ACCEPT”,以便 docker 容器可以相互访问。
在具有可公开访问的网络接口的服务器上这样做有什么安全意义?
应该怎么做才能保护这样的 docker 主机?
当我第一次初始化我的 ufw 时,我做了
ufw default allow outgoing
ufw default deny incoming
ufw allow 80/tcp
ufw allow 22/tcp
Run Code Online (Sandbox Code Playgroud)
在过去一周左右的时间里,我一直在查看我的访问日志并禁止在我的服务器上发出恶意请求的 IP
我会这样做
ufw deny from <ip>
Run Code Online (Sandbox Code Playgroud)
这是我的 ufw status verbose
此处粘贴的所有 IP 均来自病态垃圾邮件发送者;不要怜悯他们
ufw deny from <ip>
Run Code Online (Sandbox Code Playgroud)
题
我注意到的是ALLOW行动在行动之前DENY。
规则的顺序真的重要吗?或者我知道我的 IP 块已经起作用了,我可以平静地休息吗?
附带问题:是否有比手动grep处理恶意请求的访问/错误日志并阻止这些 IP 发出未来请求更有效的方法来处理垃圾邮件请求?
11 月 29 日 15:17:15 主机名内核:[397768.554884] [UFW BLOCK] IN=eth0 OUT= MAC=[mac] SRC=[ip] DST=[ip] LEN=52 TOS=0x00 PREC=0x00 TTL=52 ID =17050 PROTO=TCP SPT=56152 DPT=80 WINDOW=65535 RES=0x00 ACK FIN URGP=0
据我了解,有一个对端口 80 的请求被阻止。大多数消息都有DPT=80。
这很奇怪,因为端口 80 以前所未有的方式开放用于业务和服务网站。我在这里缺少什么?
我正在尝试使用 ufw 在 ubuntu 上打开端口 5432 使用 sudo ufw allow 5432/tcp
然后我使用 nmap 来查看端口 5432 是否已打开,我得到了这个:
root@domain:~# sudo nmap -sS -O 127.0.0.1
Starting Nmap 5.21 ( http://nmap.org ) at 2011-12-01 14:28 MSK
Nmap scan report for localhost.localdomain (127.0.0.1)
Host is up (0.000084s latency).
Not shown: 994 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
587/tcp open submission
5432/tcp open postgresql
10000/tcp open snet-sensor-mgmt
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.15 …Run Code Online (Sandbox Code Playgroud) 我正在尝试将所有 HTTP/HTTPS 流量从一台服务器重定向到另一台服务器(通过 IP)。
我确实使用ufw防火墙。我该如何配置它呢?
我在我的 Debian 系统上安装了 ufw,如下所示:
# aptitude install ufw
# ufw limit 22
# ufw allow 80
# ufw allow 443
# ufw enable
# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
To Action From
-- ------ ----
20 LIMIT Anywhere
80 ALLOW Anywhere
443 ALLOW Anywhere
Run Code Online (Sandbox Code Playgroud)
一个简单的ping google.com失败,任何aptitude install都会失败。我在 serverfault 上搜索了答案。一种解决方案是允许 DNS 使用端口 53 - 没有帮助。或者ufw allow out 1024:65535/udp与端口 53 一起使用 - 没有帮助。
有效的是让我的 DNS …
使用 Ubuntu 服务器 14.04LTS 我想使用以下命令配置 UFW 以限制 ssh 连接:
sudo ufw insert 1 limit ssh/tcp
Run Code Online (Sandbox Code Playgroud)
这会引发错误:ERROR: Invalid position '1'
由于该命令根本不接受任何数字,因此不应在数字 1 下放置其他规则...
man ufw
Run Code Online (Sandbox Code Playgroud)
输出以下内容insert NUM RULE,而RULE应该是limit ssh/tcp。这就是说我的语法应该是正确的。
有人知道这里发生了什么事吗?
我的当前情况ufw status如下。UFW 设置为默认拒绝。
[ 1] SSH ALLOW IN 10.1.0.0/16
[ 2] DNS ALLOW IN 10.1.0.0/16
[ 3] DNS ALLOW IN 192.168.0.0/16
[ 4] 1900,3478,10001/udp ALLOW IN 10.1.0.0/16 # UniFi UDP ports
[ 5] 6789,8080,8443,8843,8880,27117/tcp ALLOW IN 10.1.0.0/16 # UniFi TCP ports
[ 6] 5353/udp ALLOW IN 10.1.0.0/16 # Multicast DNS aka Bonjour
Run Code Online (Sandbox Code Playgroud)
因此,从 10.1.0.0/16 块传入端口 8080 的 TCP 数据包都应该被允许,但在我的 ufw.log 中,我看到以下内容不断重复:
Mar 10 18:28:48 pi-hole kernel: [97820.380848] [UFW BLOCK] IN=eth0 OUT= MAC=b8:27:eb:ef:23:6a:b4:fb:e4:28:d2:48:08:00:45:00:00:34:52:72:40:00:40:06:d1:51 SRC=10.1.1.1 DST=10.1.1.254 LEN=52 TOS=0x00 PREC=0x00 TTL=64 …Run Code Online (Sandbox Code Playgroud)