SSH
Secure Shell (SSH) Tips & Tricks:
Passwordless SSH Aunthentication
ssh-keygen [Press enter key 3 times] # Generate SSH key pair (public + private key) ssh-copy-id -i ~/.ssh/id_rsa.pub -p 2222 user@example.com # Copy Public key to remote server user@example.com's password:xxxxxxxxxxx ssh -p 2222 user@example.com # Test connectivity
- Alternative
Add the following to .bashrc file:
alias easyssh='sshpass -p passwd ssh user@example.com -p 2222'
But this may be a security issue as password can be found from logs & this file.
MySQL connection over SSH tunnel
ssh -f user@ssh.server.com -L 3307:mysql1.server.com:3306 -N
Then at localhost:
mysql -h 127.0.0.1 -P 3307 -u dbuser -p db
Use Key-less SSH login to skip password entry.
Copy files via SSH
scp -rp FILE_NAME USERNAME@HOST:DEST_PATH sshpass -p nsroot scp -rp nsroot@10.107.88.78:/nsconfig/ns.conf conf.txt
Disable SSH timeout
Completely disable SSH timeout
sudo nano /etc/ssh/sshd_config
TCPKeepAlive yes ClientAliveInterval 30 ClientAliveCountMax 99999
sudo service sshd restart
Password from LAN, Key from Internet
Source: ubuntuforums.org
sudo nano /etc/ssh/sshd_config
# require a key for everybody PasswordAuthentication no # any member of the group 'downstairs' can log in without a key # while connecting from the subnet Match Address 192.168.0.0/16 Group downstairs PasswordAuthentication yes
{{#widget:DISQUS |id=networkm |uniqid=SSH |url=https://aman.awiki.org/wiki/SSH }}