Nowadays we are use to deploy code in the cloud and to have all our machines and servers in cloud environments. All of this, it has even made more important the use of ssh to connect remotely to our servers allocated in the cloud.
I have written multiple times in my console the commands to connect to one server or another but, as every developer, I am lazy and I try to simplify my life. In this case, we can do this with a simple lines in a couple of files:
- ~/.ssh/config: We are going to configure the machines we want to connect or tunnels we wnat to create.
- ~/.bashrc or ~/.bash_profile: Create some alias to easily connect to our servers
SSH config file
Server to connect
# MyServer-1
Host myServer1
HostName myserver1.myorg.com
User username
IdentityFile ~/.ssh/myCertificate.pem
PasswordAuthentication no
StrictHostKeyChecking no
Create tunnel
# MyServer-1 - myDb
Host myServer1Db
HostName myserver1.myorg.com
User username
IdentityFile ~/.ssh/myCertificate.pem
PasswordAuthentication no
StrictHostKeyChecking no
LocalForward 3307 myserver1.myorg.com:3306
Bash Config file
alias myserver1="ssh myServer1" alias myserver1db="ssh myServer1Db"
Conclusion
After this, it will be enough to connect to our remote servers with executing our aliases in our console. No more remember commands.