Plus the exact same ruleset used to work on BitAccel, before they switched from VirtPanel to SolusVM, but now it blocks all access, except from MY_LOCAL_IP due the rules on lines 13/14
What would cause this? Would the main, non-virtual, server's nix build be the culprit?
For those thinking it is MY configuration or nix flavour difference, both setups use the same version (Ubuntu 13.10), same installed utilities and base apps (same apt repos in sources.list), and where installed (and re-installed) within hours of each other.
The exact same ruleset is used on a few other VPSes (Ubuntu 13.10 and 13.04), different providers, without any problems.
Here is a copy of the ruleset for reference:
*filter
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP
# Allows all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT
-A INPUT -s MY_LOCAL_IP -j ACCEPT
-A OUTPUT -d MY_LOCAL_IP -j ACCEPT
# Accepts all established connections
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# Allows HTTP and HTTPS connections from anywhere (the normal ports for websites)
-A INPUT -p tcp -m multiport --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m multiport --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -s VPS_IP -m multiport --dports 80,443 -j ACCEPT
# Harden SSH access
-A INPUT -p tcp --dport 999 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp --sport 999 -m state --state ESTABLISHED -j ACCEPT
# Allow MYSQL access
-A OUTPUT -s VPS_IP -d SQL_IP -p tcp --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -s VPS_IP -d SQL_IP -m state --state ESTABLISHED -j ACCEPT
# Allow SMTP from server ip to port 25 (sendmail/swiftmailer)
-A OUTPUT -s VPS_IP -p tcp --dport 25 -j ACCEPT
# Allow outbound DNS
-A OUTPUT -p udp --sport 1024:65535 --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -p udp --dport 53 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp --sport 1024:65535 --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -p tcp --dport 53 -m state --state ESTABLISHED -j ACCEPT
-A INPUT -p udp -s 8.8.8.8 --sport 53 -d VPS_IP --dport 1024:65535 -j ACCEPT
-A INPUT -p tcp -s 8.8.8.8 --sport 53 -d VPS_IP --dport 1024:65535 -j ACCEPT
-A INPUT -p udp -s 8.8.4.4 --sport 53 -d VPS_IP --dport 1024:65535 -j ACCEPT
-A INPUT -p tcp -s 8.8.4.4 --sport 53 -d VPS_IP --dport 1024:65535 -j ACCEPT
# Allow git
-A OUTPUT -o venet0 -s VPS_IP -p tcp --dport 9418 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -i venet0 -p tcp --sport 9418 -m state --state ESTABLISHED -j ACCEPT
# Help prevent DoS Attacks
-A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
# Kill SYN attacks
-A INPUT -p tcp ! --syn -m state --state NEW -j DROP
# Drop fragments
-A INPUT -f -j DROP
# Drop XMAS packets
-A INPUT -p tcp --tcp-flags ALL ALL -j DROP
# Drop NULL packets
-A INPUT -p tcp --tcp-flags ALL NONE -j DROP
# Allow ping
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
# Logging CHAIN
-N LOGGING
-A INPUT -j LOGGING
-A OUTPUT -j LOGGING
-A LOGGING -m limit --limit 5/min -j LOG --log-prefix "IPT: " --log-level info
-A LOGGING -j DROP
COMMIT