手记

全局脚本注入 +免密登录

一.本地公钥上传服务器

1.生成本地公钥

    命令:``` ssh-keygen -t rsa  ```

2.id_rsa.pub公钥上传服务器用户下.ssh/authorized_keys

    ~~会提示输入密码~~
    命令:```cat ~/.ssh/id_rsa.pub | ssh name@ip 'cat >> .ssh/authorized_keys'```

二.sh脚本注入写入全局命令

1.先安装expect

    centos :sudo yum install expect
    ubuntu :sudo apt-get install expect
安装后的安装目录在/usr/bin/expect,也可以通过 whereis expect 查找

2.创建test.sh脚本写入

#!expect的安装目录 -f:执行文件
  • #!/usr/bin/expect -f
spawn:执行启动新的进程 ssh
  • spawn ssh name@ip
interact:允许用户交互
  • interact
#!/usr/bin/expect -f
spawn ssh name@ip
interact

当前test.sh脚本存放在/usr/local/ssh_sh 目录下

3.写入全局命令

(1)切换路径到用户组下sudo vim .bashrc 写入命令:

alias 你希望全局命令=“你的sh脚本存放路径”

    如: alias ssh_test="/usr/local/ssh_sh/ssh_test.sh"
(2)wq!保存,source .bashrc 立即执行生效
    使用ssh_test命令即可登录到你的目的服务器
1人推荐
随时随地看视频
慕课网APP