Let me outline the situation for you, desktop A running Ubuntu 12.04, and laptop B running Ubuntu 12.04. No firewalls (atm), all ports (22, and 2200) are being forwarded by router to Desktop A. I know my external IP (curl ifconfig.me), and my sshd_config is

Code:
 Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 2200
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile     %h/.ssh/authorized_keys
so when I try
Code:
ssh <username>@<public IP> -p 2200
laptop B on my schools network is unable to connect to desktop A. I know this is an issue on my side because I used to be running an Amahi HDA server on this exact desktop and was able to easily SSH out of my schools network on to it. But now since I took away all the HDA baggage with a fresh install of Ubuntu 12.04 LTS I can't connect from an external network anymore. I really have no idea at this point why this would be happening, so I'm out of ideas on how to fix it.