Welcome to the forums,
You were definitely on the right track, sshd was blocking while doing reverse DNS lookups.. you can disable it outright in
/etc/ssh/sshd_config, by setting
UseDNS to
no.
As for the difficulty with
vi(1), you may have better luck using
mg(1).. which is an emacs clone, but ultimately it's worth learning how to use vi.
Good luck.