配置SSH远程登陆命令行控制
提示:在本文操作之前需要保证与从机在同一局域网内的通讯正常。具体网络配置详情查看前序文章①
前言
在配置ssh登录后便可以实现在虚拟机中直接登录从机的命令行来控制从机的运行。与前文的NFS文件挂载联合使用便可以达到远程操控开发的效果
提示:以下是本篇文章正文内容,下面案例可供参考
一、配置服务端(树莓派)ssh
- 更新软件源
apt-get update
- 下载ssh
apt-get install openssh-server
- 启动ssh服务
sudo service ssh start
- 检查是否启动成功
ps -aux | grep ''ssh''
出现下图所示证明启动成功
*若后续无法正常链接ssh,需在文件 /etc/hosts.allow末端添加
sshd: ALL ##允许所有ip主机均能连接本机
二、配置客户端(虚拟机)的ssh
- 下载客户端ssh
sudo apt install openssh-client
- 测试通信是否正常
(这里的ip地址应填自己想要链接的服务端(树莓派)的ip地址)
ping 192.168.3.122
如若无法通信可参考第一篇网络配置推文
- ssh登录
这里@前需要填写服务端电脑的用户名,@之后填写其ip地址
ssh yang@168.0.3.301
之后输入想链接的服务端的密码即可登录
- 若想推出ssh登录而不关闭当前终端只需输入:
exit
代码如下(示例):
三、设置ssh快捷登录方式
1.设置无密码登录ssh
- 设置ssh密钥
ssh-keygen
接着弹出的提示按“enter”,中间如果出现覆盖提醒就输入“y”,确认覆盖。
出现红框中的内容就证明ssh密钥设置成功
生成秘钥后我们需要输入下列所示的指令去复制秘钥,输入指令后提示需要输入从机的密码,输入完密码后就已经成功绑定了无密码ssh登录了。复制秘钥指令最后的部分是从机的用户名和IP地址,可以根据从机的信息自行修改。
ssh-copy-id -i .ssh/id_rsa.pub yang@192.168.3.108
这个时候无密码登录就已经设置好了,之后我们来尝试一下登录从机后没有输入密码的提醒我们就已经登录进去了
2.设置无IP地址登录
在实现无密码登录以后,还可以再简化这个ssh登录过程,就是无IP登录。但是无IP登录并不是说真的不需要IP地址就可以登录,只是说在系统中做了一个映射,输入一个名称就等于输入这个IP。
指令如下(示例):
sudo vim /etc/hosts
在文件下输入从机的IP地址和名称的映射,IP地址和名称中间注意要有空格,其余的内容不需要做修改。
保存退出,然后便可实现用字母“huike”来代替ip地址登录ssh
总结
提示:这里对文章进行总结:
以上便实现了虚拟机ssh登录工控机(树莓派)的命令行的操作
结合文章②的NFS文件挂载便可实现对远端服务器的控制与开发。接下来再设置完ros的主从机节点设置后(详情查看下一篇推文)。便实现了较为完整的远程开发控制的相关配置