I know that the sudo password protects my computer from being locally hacked by someone having physical access to it (edit : actually, it doesn't). My password is strong enough for that purpose, but I know that it is not strong enough if someone can brute-force it remotely.
Can anybody access my computer in root mode using my sudo password with no physical access to the computer, on a standard Ubuntu desktop installation ?
sudo password is not solely for local protection, it's purpose is to add an extra layer of security to root privilege use. Good discussion can be found here https://superuser.com/a/771523/467316
Your password may not be as strong as you think. Right now I'm cracking 20-40% of my client's Active Directory hashes for those I've seen before, those that have bad password rules are getting 70% cracked. I recommend 16 character, complex passwords. oclHashcat and Radeon graphics cards can do a lot of damage. Add in all of the password dumps from every breach in the past 5 years and you tend to get a good dictionary from which to work.
If you're using SSH at all make some adjustments in the sshd_config
sudo nano /etc/ssh/sshd_config
The MUSTS right out of the gate (last one to disable the ftp server if you aren't using it).
Protocol 2
X11Forwarding no
PermitEmptyPasswords no
MaxAuthTries 5
#Subsystem sftp /usr/lib/openssh/sftp-server
Save it, restart ssh
sudo service ssh restart
Use public key encryption
Start by creating yourself a key at your remote machine (using puttygen or whatever flavor your OS has available).
Copy the public key to your Ubuntu machine under the user you wish to login as authorized_keys file (you'll probably have to create it)
sudo nano /home/yourdumbusername/.ssh/authorized_keys
copy the public key in this format
ssh-rsa 23r0jfjlawjf342rffjfa89pwfj8ewfew98pfrfj8428pfwa9fupfwfcajwfpawf8rfapfj9pf892jpfjpwafj8a where-ever-you-have-your-private-key-for-your-own-notes
save it, and setup your sshd_config to allow for public key login
sudo nano /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
save and restart ssh
sudo service ssh restart
Try SSHing to your ubuntu host from your private keyed computer using public key encryption. If all went well go back to ubuntu host and disable password authentication.
sudo nano /etc/ssh/sshd_config
PasswordAuthentication no
Save and restart ssh
sudo service ssh restart
Try sshing from private keyed computer again to confirm.
Want to add more? setup a non-privileged account, turn PermitRootLogin no, restart ssh, add your public key to the new account's authorized_keys, login as non-privileged account, su to your root or privileged account when you need to root or privilege your way through things.