mac iterms2 expect & ssh 公鑰 登陸服務器

一、使用 expect 登陸。

  • Iterm2 配置

  • 配置 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 $user@$host
    expect "*assword:*"
    send "$password\r"
    interact
    expect eof
  • 遇到的問題
    Mac iterm2 使用expect後無法使用lrzsz 指令,上傳不報錯,文件也沒有
    解決方法

二、使用公鑰免密登陸

SSH 原理與運用

  1. 生成祕鑰
ssh-keygen

上面這個命令會在用戶目錄. ssh 文件夾下創建公私鑰

cd ~/.ssh
ls

下創建兩個密鑰:

id_rsa (私鑰)
id_rsa.pub (公鑰)
  1. 將公鑰放到 服務器上
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

上面這條命令是寫到服務器上的 ssh 目錄下去了

cd ~/.ssh
vim authorized_keys

可以看到客戶端寫入到服務器的 id_rsa.pub (公鑰)內容。

3.測試免密登錄

客戶端通過 ssh 連接遠程服務器,就可以免密登錄了。

ssh [email protected]
  1. 配置 Iterm2
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章