树莓派开发从零开始学:超好玩的智能小硬件制作书
上QQ阅读APP看书,第一时间看更新

2.3.2 Linux远程无密码登录

在Linux上用ssh无密码登录,与Windows上的原理是一样的。Raspberry也属于Linux,师出同门就更方便了。

1.登录客户端

在Linux下,打开Terminal。或者直接按Ctrl + Alt + F2组合键,如图2-37所示进入控制台。

图2-37 Linux控制台

2.在客户端创建公钥、私钥

输入用户名密码登录后。这里不需要用root登录,一般用户都可以。执行命令:

    ssh-keygen –t rsa –P ""

按Enter键就会在登录用户的家目录下创建.ssh目录和.ssh/id_rsa、.ssh/id_rsa.pub文件。

3.将公钥传至服务端(Raspberry)

下面我们要将Linux中创建的公钥id_rsa.pub传输到Raspberry。执行命令:

    ssh pi@192.168.2.91

输入pi的密码,登录到了Raspberry,如图2-38所示。

图2-38 登录到Raspberry

执行命令:

    scp loginName@LinuxIP:/home/loginName/.ssh/id_rsa.pub /home/pi/.ssh/linux.pubkey

这里需要输入Linux用户的密码。

4.公钥作用于服务端

把锁挂在大门上,运行命令:

    cd .ssh
    cat linux.pubkey >> authorized_keys
    loginName是Linux用户的登录名。LinuxIP是Linux主机的IP。

好了,到这一步就可以了。执行命令:

    exit

现在又回到了Linux。再次执行命令:

    ssh pi@192.168.2.91

这里就不再需要输入密码了,可以直接登录到Raspberry上了。

注意

在Windows登录时使用的是服务端(Raspberry)创建公钥、私钥。在Linux登录时使用的是客户端(Linux)创建公钥、私钥。这两种方式效果是一样的。