二、在树莓派上学习C#和Linux:配置SSH
  OxHqi88Ov1ed 2024年02月22日 32 0

在树莓派上学习C#和Linux: 配置SSH

官方文档:https://www.raspberrypi.com/documentation/computers/remote-access.html#ssh

运行命令行输出IP

在树莓派的控制台输入hostname -I 得到IP地址
也可以使用mDNS解析raspberrypi.local
在Windows 下的powershell中输入ping raspberrypi.local

安装nmap 命令 用于扫描局域网的设备

如果是动态IP分配则需要这个静态不需要
下载链接:https://nmap.org/download.html
获取到局域网IP,然后在Windows端的Powershell中输入指令,我的网段是192.168.1.* 所以我的指令是: nmap -sn 192.168.1.0/24
枚举结果如下:
MAC Address: B8:27:EB:8B:DD:EC (Raspberry Pi Foundation)
Nmap scan report for 192.168.1.8

或者在你的Powershell中输入arp -a 找到你的树莓派设备设备;

添加SSH文件

1、在windows的Powershell中在一个路径下执行new-item ssh -type file 创建ssh空白文件
2、把SSH文件拷贝到树莓派内存卡的根目录中,然后把卡插入树莓派。
3、启动重启树莓派

设置树莓派的SSH服务器

Raspberry Pi OS 默认禁用 SSH 服务器
可以使用 raspi-config 应用程序从终端启用它
以下1-6步骤在树莓派中操作:

  1. 在终端窗口中输入sudo raspi-config
    2.选择Interfacing Options
    3.导航到并选择SSH
    4.选择Yes
    5.选择Ok
    6.选择Finish
    注意
    对于无外设设置,可以通过将名为 的文件(不带任何扩展名)放在 SD 卡的启动分区上来启用 SSH。当 Raspberry Pi 启动时,它会查找文件。如果找到,则启用 SSH 并删除文件。文件的内容无关紧要;它可以包含文本,也可以什么都不包含。sshssh
    注意
    对于无头设置,除了文件之外,您还需要一个文件,其中包含一个字符串。请参阅有关Raspberry Pi的无头设置的讨论中有关配置用户的部分。sshuserconf.txtusername:encryptedpassword
    警告
    在可能连接到互联网的树莓派上启用 SSH 时,您应该确保您的密码不容易被暴力破解。

更改树莓派文件

这里有点曲折 我最后直接选择使用了root
如果树莓派没有设置密码的话使用
在树莓派的控制台中使用sudo passwd 设置密码
切换账号如下 sudo su root 或者sudo su duwenlong
sudo nano /etc/ssh/sshd_config
把PasswordAuthentication的#号去掉
Port 22的#号去掉
PermitRootLogin 添加yes 不要带#号
我最后又在文件的末尾添加了AllowUsers root
保存退出
然后在根目录添加 touch /.ssh
设置权限chmod 700 ~/.ssh
sudo service ssh restart
然后使用 ssh root@192.168.1.23 yes yes 就连上了。

期间很多很多的问题端口的注释没有开,先使用Telnet 192.168.1.23 22 看端口号是否打开。发现没有打开。
service ssh status 检查SSH服务是否正在运行。service ssh start 可以启动它。netstat tuln | grep 22检查22端口是否已经开放

现在可以局域网连接啦。只是目前这样设置是不安全的。但是可以开始下一步编写C#程序和连接外设了。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2024年02月22日 0

暂无评论

推荐阅读
  wJzKjCv7Jd8R   3小时前   7   0   0 .NET
OxHqi88Ov1ed