make sure the rule is in the input chain.
From the manual:
To protect the router from unauthorized access, we should filter out all packets with the destination addresses of the router, and accept only those which are allowed. Since all packets with destination to the router's address are processed against the input chain, we can add the following rules to it:
/ip firewall rule input
add protocol=tcp connection-state=established \
comment="Allow established TCP connections"
add protocol=udp comment="Allow UDP connections"
add protocol=icmp comment="Allow ICMP messages"
add src-addr=10.5.8.0/24 \
comment="Allow access from 'trusted' network 10.5.8.0/24"
add action=reject log=yes \
comment="Reject and log everything else"
Thus, the input chain will accept only allowed connections and reject, and log everything else.
You could remove the src-addr rule and put in these two rules.
#This one is to allow port 80 traffic. You enable this when you want to connect. Should be before the last line at bottom
add protocol=tcp comment"Allow port 80 traffic" dst-address=:80
#This one will allow ssh traffic so you can get in and switch on/off port 80 traffic rule. Should be before the last line too at the bottom.
add protocol=tcp comment"Allow ssh traffic" dst-address=:22
I would also recommend that you not use ssh instead of telnet. Telnet has no encyption and sends your password open text. Turn of the telnet service. If you are running windows,
here is a ssh client for windows.
Dan