I deleted the rules and reentered them with -I instead af -A and this is the new resultes of iptables-save.Post the output from the command iptables-save so that we can see your rules rather than just guessing. The usual cause of a port not being open when someone thinks they've opened it is because they use iptables -A INPUT ... and that Appends the new rule to the end of the current rules. The default rules end with a -j REJECT and that stops processing at that rule and the one added with -A is never reached.
# Generated by iptables-save v1.4.21 on Wed Mar 8 18:29:39 2017
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [58:5316]
-A INPUT -p tcp -m tcp --dport 20 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25565 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Wed Mar 8 18:29:39 2017