Generate keys

ssh-keygen

Send your public key to trusted parties by copying the output below. Code Talkers should email them to netcmnd

cd ~/.ssh/
cat id_rsa.pub

If you emailed me your key, I can add you to the Code Talkers Hacking Club Git Lab. Now, you should enable your digital ocean vps for ssh as follows

ssh-copy-id username@xxx.xxx.xxx.xxx

That's it - you should now no longer need to enter your password. If this is not working, check your configuration using the commands below and try again. You might need to enable public key authentication.

cd /etc/ssh/
sudo nano sshd_config
sudo systemctl restart sshd.service
sudo systemctl restart ssh.service

Keep those public and private key pairs protected. If you did not change anything, they have the permissions below. But we all make mistakes!

chmod 700 ~/.ssh 
chmod 644 ~/.ssh/id_rsa.pub
chmod 600 ~/.ssh/id_rsa
chmod 755 ~/

Using with screen … more later

ssh -t xx.xx.xx.xx screen -DRO

config options for /etc/ssh/sshd_config

Port 53535
PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin prohibit-password
Protocol 2
AllowUsers sally
AllowUsers johnny
PermitEmptyPasswords no
X11Forwarding yes
PrintMotd yes
ChallengeResponseAuthentication no
UsePAM yes

Then, always restart the service

sudo systemctl restart sshd.service

Debian 14 changes to ssh. The kex packets are so large they may not traverse on vpn connections, etc. On the box you connect to open sudo nano /etc/ssh/sshd_config

KexAlgorithms curve25519-sha256,ecdh-sha2-nistp256,diffie-hellman-group14-sha256

On the box reaching out or from which you are connecting, open sudo nano /etc/ssh/ssh_config and enter these two lines at the end with the same indentation:

KexAlgorithms curve25519-sha256
IPQoS none

If you have not yet noticed, nor made any changes and need to connect quickly, use the following:

ssh -o KexAlgorithms=curve25519-sha256 -o IPQoS=none root@10.13.13.20

Then, if you use git across a vpn, you will now need to accept those environment variables. So on the git server's sshd_config file, add the git protocol as an allowance:

AcceptEnv LANG LC_* GIT_PROTOCOL

oemb1905 2026/09/11 17:38