Manage to narrow it to fail2ban banning me 😮
When hitting the Mattermost login screen I got some 401 lines on Nginx unauthorized logs which triggers fail2ban ban:
REMOTE_IP - - [23/Feb/2022:22:49:20 -0600] "GET /plugins/playbooks/api/v0/settings HTTP/2.0" 401 15 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Safari/605.1.15"
REMOTE_IP - - [23/Feb/2022:22:49:20 -0600] "GET /plugins/playbooks/api/v0/bot/connect HTTP/2.0" 401 15 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Safari/605.1.15"
REMOTE_IP - - [23/Feb/2022:22:49:20 -0600] "GET /api/v4/teams?page=0&per_page=200&include_total_count=false&exclude_policy_constrained=false HTTP/2.0" 401 202 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Safari/605.1.15"
REMOTE_IP - - [23/Feb/2022:22:49:20 -0600] "GET /api/v4/analytics/old?name=standard&team_id= HTTP/2.0" 401 202 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Safari/605.1.15"
Does anybody have a clue what might be happening?
This is my config according to a fellow user @Heciruam and mattermost documentation (https://docs.mattermost.com/install/config-ssl-http2-nginx.html)
upstream backend {
server 192.168.52.182:8065;
keepalive 32;
}
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;
server {
listen 80;
server_name board.*;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name board.*;
location ~ /api/v[0-9]+/(users/)?websocket$ {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
client_max_body_size 50M;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
client_body_timeout 60;
send_timeout 300;
lingering_timeout 5;
proxy_connect_timeout 90;
proxy_send_timeout 300;
proxy_read_timeout 90s;
proxy_pass http://backend;
}
location / {
client_max_body_size 50M;
proxy_set_header Connection "";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
proxy_read_timeout 600s;
proxy_cache mattermost_cache;
proxy_cache_revalidate on;
proxy_cache_min_uses 2;
proxy_cache_use_stale timeout;
proxy_cache_lock on;
proxy_http_version 1.1;
proxy_pass http://backend;
}
}