《树莓派实战秘籍》——1.12 技巧12连接SSH

简介:

本节书摘来自异步社区《树莓派实战秘籍》一书中的第1章,第1.12节,作者: 【美】Ruth Suehle , Tom Callaway 更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.12 技巧12连接SSH

对于任何headless项目、以及任何从方便的角度来说和你相距较远的项目,或者仅仅只是因为你懒得穿过房间,这些情况下你都需要知道如何SSH到你的树莓派上。

OpenSSH,由OpenBSD项目为安全通信所创建的开源的工具集,很可能在你选择的任何发行版上都有效。

如果你有一点点复古倾向,请注意“Squeeze”这个在“Wheezy”之前的版本,它并没有在默认情况下运行SSH。
如果你不能确定,你要做的就是尝试SSH到你的Pi。你会发现这相当简单,连接显示器和键盘,然后运行:


<a href=https://yqfile.alicdn.com/359fc7a9cb92a8be6c6389435b96a25edd36fdc1.png" >

如果你的输出并不与上面输出的信息类似,你应该赶快安装SSH。在Fedora系统的安装命令如下所示:


1d31db96fcf8e2ccf44511a3b33cb30ff64e4781

下面是如何在Debian/Ubuntu上安装:


<a href=https://yqfile.alicdn.com/f4b53d2a6a109c9b4450a5c7ce5d83cf6ae4c810.png" >

当你确定SSH已经安装好之后,将其设置为每次开机时自动运行的守护进程:


e76082c8750e36244cafd8ff4d1fbbaa98d5d7a8

如果你不是从最开始就进入Pi的headless模式,假定你手边就有显示器和键盘,你可以将Pi连上显示器并运行ifconfig命令。这是比较简单的获取IP地址的方式。请注意,如果你使用的是Fedora或Pidora,你需要使用ip addr命令替换ifconfig。

也可以检查你的路由器的缺省IP地址,这个地址可能在某处的一张贴纸上,你可以搜索你的路由器品牌,也可能在某个网站上找到它(192.168.0.1是一个常见的路由器地址)。你还可以运行route -n来获取它,在Gateway下面标记着UG的那一行的数字就是缺省IP。在Web浏览器上进入这个地址,你几乎肯定会找到某种路由器控制面板,你也可以看到已连接的设备,其中包括Pi。

你还可以使用nmap网络映射工具,如果你没有使用过它,这也是一种有趣的学习新工具的方式。这就是说,你应该只能在你的家庭网络而不能在办公室、咖啡馆、或任何其他你没有话语权的网络里完成你的nmap学习。当你执行su -c nmap 192.168.1.1/24时(需要使用你的网络的实际值替换掉命令中的IP地址),你可以看到所有连接到网络的设备的一个列表,其中有一个设备的MAC地址标记着Raspberry Pi Foundation,它同时也列出了你的Pi的IP地址。

如果你经常需要通过SSH连接,你会想通过给Pi设置一个静态IP地址(参见技巧13)来将事情简单化。
现在你已经做好了连接Pi的准备了,你可以通过运行ssh username@host命令来进行连接,这里username是你在树莓派上已经设置好的账号,host是你发现或者配置的Pi的IP地址。如果你尚未设置一个用户,你可能需要参考默认登录方式。对于Pidora,它是root/raspberrypi,对于基于Raspbian的系统,它是pi/raspberry。

当你第一次通过SSH连接到任何一台机器,它都会将该机器的记录存储到.ssh/known_hosts文件中。系统将在每一次连接时都会检查这个列表,这意味着在你第一次连接时,你会看到一个对话框并对你提出询问:


935e02243b7e200d2f65aafda9aa9a813ce21e94

这听起来像预示着坏消息,尽管跟随着“警告”信息,但是在这里“yes”是正确的答案。

现在,你已经做好了使用命令行从树莓派发送或接收文件的准备,这几乎就像你直接在树莓派上工作一样。如果你想通过SSH启动GUI接口,可以在连接时使用-X参数:


291b3ee968894895aea6545349b4a98c654af9ee

大多数(但不是全部)的图形化应用程序都可以使用这种方式工作,其被称为“X转发”。

相关文章
|
4月前
|
Linux 网络安全 Docker
windows ssh连接docker 容器
windows ssh连接docker 容器
94 0
|
1月前
|
安全 Shell 网络安全
如何通过SSH连接云服务器
当你购买云服务器后,你可以通过SSH方式安全的连接到你的云服务器,因为只有你连上云服务器后才能进行服务器相关的配置操作。这里分别介绍了MAC用户和Windows用户如何通过SSH连接云服务器。
216 1
如何通过SSH连接云服务器
|
1月前
|
存储 安全 网络安全
Git 安全远程访问:SSH 密钥对生成、添加和连接步骤解析
SSH(Secure Shell)是一种用于安全远程访问的协议,它提供了加密通信和身份验证机制。在使用 SSH 连接到远程 Git 存储库时,您可以使用 SSH 密钥对来确保安全性。以下是关于如何生成和使用 SSH 密钥对的详细步骤: 生成 SSH 密钥对
98 2
|
1月前
|
安全 Linux Shell
|
2月前
|
安全 网络协议 Shell
SSH连接密码问题:原因、表现与解决方案
SSH连接密码问题:原因、表现与解决方案
83 3
|
3月前
|
安全 Shell 网络安全
远程登录安全连接协议SSH(Secure Shell)
SSH(Secure Shell)协议是一种用于在不安全网络上提供安全远程登录、命令执行和数据传输的加密网络协议,通过公钥加密和身份验证技术确保通信的安全性和隐私性。
85 0
|
4月前
|
网络协议 Linux 网络安全
无公网IP环境固定地址远程SSH访问本地树莓派Raspberry Pi
无公网IP环境固定地址远程SSH访问本地树莓派Raspberry Pi
|
4月前
|
网络安全 Python
动手写个ssh连接工具
动手写个ssh连接工具
55 0
|
3月前
|
Linux 网络安全
Linux命令(124)之ssh
Linux命令(124)之ssh
33 2