如何更加优雅的使用 SSH 进行登录

引言

我们在日常的开发过程中,很多时候需要连接服务器查看日志或者在服务器上调试代码。但是,使用 ssh 命令登录服务器每次都需要输出密码,就比较繁琐。因此我们可以使用 sshpass 通过参数指定密码进行登录。解决了这个问题之后,我发现登录服务器之后,还需要手动 cd 切换到项目目录或者日志目录。为了能够使用一条命令,直接到达目的地,还可以通过指定 -t 参数,下面就详细介绍一下使用方式。

直接通过参数指定密码进行登录

原生的 SSH 不支持直接在参数中指定密码,所以我们使用一个新的工具 sshpass,用来通过参数指定密码。

1、首先,按照 sshpass。

sudo apt-get install sshpass

2、安装完成之后,进行登录操作。

sshpass -p 123456 ssh root@127.0.0.1 -p 22

登录之后,直接切换到项目目录

  • -o ServerAliveInterval=60 参数,这个属性的作用是client每隔60秒发送一次请求给server,然后server响应,从而保持连接。
  • -t 建立这个连接时强制使用伪终端模式。
  • cd /opt/project;bash;cd /opt/project; 切换到项目目录下,bash; 作用是执行远程命令后不自动断开 ssh 连接。
sshpass -p 123456 ssh root@127.0.0.1 -p 22 -o ServerAliveInterval=60 -t 'cd /opt/project;bash;'

总结

1、使用公私钥的方式,也可以不用指定密码。
2、使用 sshpass 可以更快捷的登录服务器。
3、使用 -t 'bash;' 可以执行远程命令,并且不退出。

posted @ 2020-04-15 18:00  Yxh_blogs  阅读(278)  评论(0编辑  收藏  举报