免密码登录Mininet & 一键ssh脚本

免密码登录Mininet

在装有ODL的Ubuntu端检查一下是否已经有ssh密钥:
~/.ssh/id_rsa 或者 ~/.ssh/id_dsa
如果都不能找到任何文件的话,就需要通过命令生成ssh密钥:
ssh-keygen -t rsa
为了加快ssh连接的速度,需要将你的公钥添加给Mininet端:
scp ~/.ssh/id_rsa.pub mininet@Mininet的IP地址:~/
最后先通过ssh登录Mininet,再在Mininet下输入命令:

cd ~/ && mkdir -p .ssh && chmod 700 .ssh && cd .ssh && touch authorized_keys && chmod 600 authorized_keys && cat ../id_rsa.pub >> authorized_keys

至此,以后每次登陆就不必输入账号密码了。

PS. 如果出现报错“Agent admitted failure to sign using the key”且仍需要手动输入密码,则在装有ODL的Ubuntu端输入:
ssh-add ~/.ssh/id_rsa
再试一下ssh就成功了。

注意文件夹的权限必须满足:https://yq.aliyun.com/ziliao/80932

一键ssh脚本

进一步,可以创建一个脚本文件:
vim mininet
按“I”进行编辑:

#!/bin/bash
ssh -Y mininet@minivm

注意不要写成“!#”,虽然也能运行,但是每次都会提示“line 1: !#/bin/bash: No such file or directory”
按“Esc”退出编辑,“:wq!”保存并退出编辑器。
接着输入命令:
sudo mv mininet /usr/local/bin
sudo chmod 755 /usr/local/bin/mininet
(chmod是Linux下设置文件权限的命令。775代表:文件所有者可读可写可执行、与文件所有者同属一个用户组的其他用户可读可执行、其它用户组可读可执行)
这样以后就可以只输入“mininet”这个命令来登录了。

PS. 同理也可以写一个运行ODL的脚本~

你可能感兴趣的:(免密码登录Mininet & 一键ssh脚本)