There are two ways I usually do this, both use ssh:
scp -r sourcedir/ user@dest.com:/dest/dir/
or, the more robust and faster (in terms of transfer speed) method:
rsync -auv -e ssh --progress sourcedir/ user@dest.com:/dest/dir/
Read the man pages for each command if you want more details about how they work.