Fail2Ban bỏ chặn ipaddress


11

Tôi đang cố gắng bỏ chặn một địa chỉ IP mà không khởi động lại Fail2Ban mỗi lần, cách tốt nhất để làm điều này là gì? Hoặc bạn có thể chỉ cho tôi theo hướng dẫn hữu ích?

Như bạn có thể thấy bên dưới địa chỉ IP tôi đang cố xóa là: 89.31.259.161

# iptables -L -n

    Chain INPUT (policy DROP)
    target     prot opt source               destination
    fail2ban-apache-badbots  tcp  --  0.0.0.0/0            0.0.0.0/0           multiport dports 80,443
    fail2ban-httpd  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80
    fail2ban-sasl  tcp  --  0.0.0.0/0            0.0.0.0/0           multiport dports 25,465,143,220,993,110,995
    fail2ban-SSH  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22
    fail2ban-httpd  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:443
    fail2ban-httpd  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80
    fail2ban-vsftpd  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:21
    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           multiport dports 80,443,25,465,110,995,143,993,587,465,21,20,2855
    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:54000

    Chain FORWARD (policy DROP)
    target     prot opt source               destination

    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination

    Chain fail2ban-SSH (1 references)
    target     prot opt source               destination
    RETURN     all  --  0.0.0.0/0            0.0.0.0/0

    Chain fail2ban-apache-badbots (1 references)
    target     prot opt source               destination
    RETURN     all  --  0.0.0.0/0            0.0.0.0/0

    Chain fail2ban-httpd (3 references)
    target     prot opt source               destination
    DROP       all  --  89.31.259.161        0.0.0.0/0
    DROP       all  --  89.31.259.161        0.0.0.0/0
    RETURN     all  --  0.0.0.0/0            0.0.0.0/0
    RETURN     all  --  0.0.0.0/0            0.0.0.0/0
    RETURN     all  --  0.0.0.0/0            0.0.0.0/0

Chain fail2ban-sasl (1 references)
target     prot opt source               destination
RETURN     all  --  0.0.0.0/0            0.0.0.0/0

Chain fail2ban-vsftpd (1 references)
target     prot opt source               destination
RETURN     all  --  0.0.0.0/0            0.0.0.0/0

Tôi đã có thể chạy: iptables -D fail2ban-httpd -s 89.31.259.161 -j DROPmặc dù điều này chỉ xóa một trong các dòng.


Câu trả lời:


15

Sử dụng --line-numberstùy chọn cho iptables để nhận danh sách hiển thị số dòng cho quy tắc trong chuỗi, ví dụ:

iptables -L fail2ban-SSH -v -n --line-numbers
Chain fail2ban-SSH (1 references)
num   pkts bytes target     prot opt in     out   source              destination
1       19  2332 DROP       all  --  *      *     193.87.172.171      0.0.0.0/0
2       16  1704 DROP       all  --  *      *     222.58.151.68       0.0.0.0/0
3       15   980 DROP       all  --  *      *     218.108.224.81      0.0.0.0/0
4        6   360 DROP       all  --  *      *     91.196.170.231      0.0.0.0/0
5     8504  581K RETURN     all  --  *      *     0.0.0.0/0           0.0.0.0/0

Sau đó sử dụng iptables -D chain rulenumđể xóa những cái bạn không muốn, vd

iptables -D fail2ban-SSH 1

sẽ xóa

1       19  2332 DROP       all  --  *      *     193.87.172.171      0.0.0.0/0

dòng từ ví dụ trên. Lưu ý rằng mọi thứ đều được đánh số lại để bạn có thể chạy lại cùng một lệnh để loại bỏ quy tắc 1 mới trong chuỗi.


Điều này sẽ hoạt động - UNTIL bạn khởi động lại máy chủ hoặc fail2ban. Câu trả lời từ @Ndianabasi là tốt hơn.
TheStoryCoder

5

Theo kinh nghiệm của tôi với Fail2ban, việc bỏ địa chỉ IP trực tiếp qua IPTABLES sẽ dẫn đến việc IP bị cấm lại bởi Fail2ban nếu dịch vụ Fail2ban được khởi động lại trong Thời gian cấm.

Điều đó đang được nói, cách hiệu quả nhất và gọn gàng trong việc hủy bỏ địa chỉ IP bị Fail2ban cấm là sử dụng fail2ban-client.

Bước 1: Lưu ý tên tù bằng cách kiểm tra nhật ký Fail2ban

sudo zgrep 'Ban' /var/log/fail2ban.log

Đầu ra mẫu:

2017-11-03 04: 30: 14,509 fail2ban.ilities [25091]: THÔNG BÁO [nginx-badbots] Ban 47.15.15.49 2017-11-03 04: 37: 29.597 fail2ban.ilities [27065]: THÔNG BÁO [nginx-badbots] Cấm 103.31.87.187 2017-11-03 04: 37: 30.124 fail2ban.ilities [27065]: THÔNG BÁO [nginx-badbots] Ban 201.33.170.251 2017-11-03 04: 37: 30.364 fail2ban.ilities [27065]: THÔNG BÁO [ nginx-badbots] Ban 47.15.15,49 2017-11-03 04: 38: 06,754 fail2ban.ilities [27065]: THÔNG BÁO [vsftpd] Ban 128.20.12.68

Nếu chúng ta quan tâm đến việc bỏ chặn địa chỉ IP - 128.20.12.68 - thì tên tù là vsftpd.

Bước 2: Bỏ địa chỉ IP bằng fail2ban-client. Định dạng chung là:

sudo fail2ban-client set [JAIL] unbanip [xx.xx.xx.xx]

Bây giờ, chạy:

sudo fail2ban-client set vsftpd unbanip 128.20.12.68

Đầu ra mẫu:

128.20.12,68

Bước 3: Xác nhận unban từ nhật ký Fail2ban

sudo tail -f /var/log/fail2ban.log

Đầu ra mẫu:

2017-11-03 04: 38: 13.332 fail2ban.ilities [27065]: THÔNG BÁO [vsftpd] Unban 128.20.12.68


1
Đây phải là câu trả lời được chấp nhận.
TheStoryCoder
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.