欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mac iterms2 expect & ssh 公钥 登陆服务器

程序员文章站 2022-06-25 12:08:57
...

一、使用 expect 登陆。

  • Iterm2 配置
    mac iterms2 expect & ssh 公钥 登陆服务器

  • 配置 expct 脚本

    #!/usr/bin/expect -f
    set port 22
    set user lzq
    set host 192.168.178.101
    set password 123456
    set timeout 30
    
    spawn ssh -p $port aaa@qq.com$host
    expect "*assword:*"
    send "$password\r"
    interact
    expect eof
  • 遇到的问题
    Mac iterm2 使用expect后无法使用lrzsz 指令,上传不报错,文件也没有
    解决方法

二、使用公钥免密登陆

SSH 原理与运用

  1. 生成秘钥
ssh-******

上面这个命令会在用户目录. ssh 文件夹下创建公私钥

cd ~/.ssh
ls

下创建两个**:

id_rsa (私钥)
id_rsa.pub (公钥)
  1. 将公钥放到 服务器上
ssh-copy-id -i ~/.ssh/id_rsa.pub aaa@qq.com

上面这条命令是写到服务器上的 ssh 目录下去了

cd ~/.ssh
vim authorized_keys

可以看到客户端写入到服务器的 id_rsa.pub (公钥)内容。

3.测试免密登录

客户端通过 ssh 连接远程服务器,就可以免密登录了。

ssh aaa@qq.com
  1. 配置 Iterm2
    mac iterms2 expect & ssh 公钥 登陆服务器