SSH používá každý vývojář, ale většina zná jen ssh user@host. Tady je 12 triků navíc.
1. SSH config¶
~/.ssh/config¶
Host prod
HostName 10.0.1.50
User deploy
IdentityFile ~/.ssh/prod_key
2. Local port forward¶
ssh -L 5432:localhost:5432 prod
3. Reverse tunnel¶
ssh -R 8080:localhost:3000 remote-server
4. SOCKS proxy¶
ssh -D 1080 prod
5. Jump host¶
ssh -J bastion prod-internal
6. Multiplexing¶
Host *
ControlMaster auto
ControlPath ~/.ssh/sockets/%r@%h-%p
ControlPersist 600
7. rsync přes SSH¶
rsync -avz –progress ./dist/ prod:/var/www/
8. Agent forwarding¶
ssh -A bastion
9. Escape sequences¶
~. ukončí zamrzlou session
~? seznam escape sekvencí
10. Paralelní příkazy¶
for host in web{1..5}; do ssh $host “uptime” &; done; wait
11. Ed25519 klíče¶
ssh-keygen -t ed25519 -C “[email protected]”
12. Fail2ban¶
[sshd]
enabled = true
maxretry = 3
bantime = 3600
Tip¶
Vypněte password auth, používejte ed25519 klíče a fail2ban.