Silvermouse

Fixing reverse proxy 'origin not allowed' from Percona PMM/Grafana in Kubernetes

This can be a tricky one to debug. The 'origin not allowed' only comes from one place in Grafana: hostnameMatches := origin == netAddr.Host if netAddr.Host == "" || !trustedOrigin && !hostnameMatches { return &errorWithStatus{Underlying: errors.New("origin not allowed"), HTTPStatus: http.StatusForbidden} } Normally you&

How to GeoIP block certain countries in Nginx with MaxMind

I spent too long thinking that ModSecurity was necessary for this, but you can do it with just the ngx_http_geoip2_module Install nginx along with the module: apt-get install nginx libnginx-mod-http-geoip2 Download the free GeoLite mmdb database from MaxMind into /etc/nginx/GeoLite2-Country.mmdb (you can and probably

Why ProFTPD isn't loading your config (for example PassivePorts)

Recently I had an issue where I migrated ProFTPD from one server to another, but the PassivePorts was being ignored (as was AllowOverwrite). Connections were timing out and tcpdump showed the client was connecting to the wrong port range for passive mode. Nothing in the logs, but dumping the config

Using ProxySQL caching to reduce MySQL query latency

In a previous post I discussed an issue where 1ms of increased latency to a MySQL server was causing a problem due to thousands of queries. Generally, there are only two ways to handle this problem: 1. Bring the servers closer together (according to the speed of light); 2. Reduce

Be aware of latency in distributed systems

I want to begin by saying that this specific example is very niche problem, but real. A client moved their LAMP application to a new hosting provider and noticed that simple operations were taking several seconds longer, yet profiled queries were quicker if anything. I setup a test database server

Silvermouse © 2026
This page respects your privacy by not using cookies or similar technologies and by not collecting any personally identifiable information.