SSH Command Reference

SSH Common command Quick Reference,,, and

ssh user@host
ssh -p 2222 user@host
ssh -i ~/.ssh/key user@host
ssh user@host 'command' command
ssh -J jump user@target
ssh -v user@host

ssh-keygen -t ed25519 -C "email" Ed25519 (Recommended)
ssh-keygen -t rsa -b 4096 RSA 4096
ssh-copy-id user@host Copy
ssh-add ~/.ssh/key agent
ssh-add -l agent
ssh-add -D agent
eval $(ssh-agent -s) SSH agent
ssh-keygen -R hostname known_hosts

scp file user@host:/path/
scp user@host:/path/file ./
scp -r dir/ user@host:/path/
sftp user@host
sftp> put local_file sftp
sftp> get remote_file sftp
rsync -avz -e ssh src/ user@host:dest/ (Recommended)

ssh -NL 8080:localhost:80 user@host ()
ssh -NR 8080:localhost:3000 user@host ()
ssh -ND 1080 user@host (SOCKS )
ssh -fNL 3307:db:3306 user@bastion
ssh -NL 3307:db:3306 -L 6380:redis:6379 user@host

vim ~/.ssh/config SSH
chmod 600 ~/.ssh/config
chmod 700 ~/.ssh .ssh
chmod 600 ~/.ssh/id_*
ssh -O check user@host
ssh -O exit user@host
ssh-keyscan host >> ~/.ssh/known_hosts

PermitRootLogin no root
PasswordAuthentication no
AllowUsers user1 user2
MaxAuthTries 3
Port 2222
sshd -t Syntax
systemctl restart sshd SSH