【Raspberry Pi 5体验】+ 02.远程连接测试
[复制链接]
【Raspberry Pi 5体验】+ 02.远程连接测试
树莓派5 开发板提供了多种方式进行调试使用:
//------已有登陆方式:
a.使用USB转串口转换器连接进行串口登录;
b.通过以太网使用SSH登录(系统镜像烧录时务必配置网络连接);
c.通过HDMI使用系统桌面环境登录;
//------待测试登陆方式:
a.VNC //测试正常
b.XRDP //测试正常
c.手机SSH //测试正常
从最终使用效果来讲,个人认为SSH最便捷。
本节测试图形化的远程桌面VNC和XRDP进行连接登陆的方式,同时探索了手机SSH的可行性。
1. VNC远程
树莓派5的官方系统镜像已经继承了VNC远程桌面,直接配置启动VNC即可。常用的VNC软件包括RealVNC、VNC-Viewer等。
在开始之前,需要启动系统并登录树莓派5,进入到树莓派命令窗口。通过显示器和键鼠直接操作或通过SSH登录都可以。
1.1 启用树莓派 VNC 服务
在终端输入以下命令进入配置界面。
//------启动树莓派配置指令
sudo raspi-config
//------依次操作:
Interfacing Options -> VNC -> Yes(Enable VNC) -> 创建VNC服务。
之后系统会提示你是否要安装 VNC 服务,输入 y 之后回车,等待系统自动下载安装完成,一切顺利的话VNC服务就自动启动了,服务端口号默认是5900。
//------示例Log日志
zhaomeijing@raspberrypi5:~/workspace $ sudo raspi-config
<如图操作配置使能VNC>
Created symlink /etc/systemd/system/multi-user.target.wants/wayvnc.service → /lib/systemd/system/wayvnc.service.
【图】Raspberry-Pi5配置远程VNC
1.2 通过VNC软件连接登录
RealVNC-Viewer是一款非常好用的VNC软件,连接方法如下:
//------RealVNC Viewer
//---官网
https://www.realvnc.com/
//---下载地址
https://www.realvnc.com/en/connect/download/viewer/
//------连接方法
1.通过ifconfig获取树莓派5的网络IP地址;
2.运行RealVNC-Viewer之后输入树莓派的IP地址和端口地址;
3.连接之后输入树莓派的登录用户名和密码,确认之后即可进入树莓派的远程桌面。
【图】VNC-Viewer
2. XRDP
Xrdp是一个开源工具,允许用户通过Windows RDP访问Linux远程桌面。除了Windows RDP(mstsc)之外,xrdp工具还接受来自其他RDP客户端的连接,如FreeRDP,rdesktop和NeutrinoRDP。
想要实现XRDP的远程连接,需要进行Linux端操作和windows端操作两部分。
//------windows通过Xrdp工具远程连接Linux(CnetOS)
参考链接:
https://blog.csdn.net/qq_56720075/article/details/128911573
2.1 树莓派Debian端的操作
树莓派Debian端的操作:
1.使用任意已有的登陆方式安装xrdp软件
sudo apt install -y xrdp
2.启动Xrdp服务,并使能开机自动运行:
sudo systemctl start xrdp
sudo systemctl enable xrdp
3.设置防火墙,使能端口3389(开放3389端口):
sudo firewall-cmd --zone=public --add-port=3389/tcp --permanent
4.重启防火墙,生效配置:
sudo systemctl restart firewalld.service
如果出现报错 error – problem connecting,问题根源在于tightvnc,出现问题的版本跟X字体有冲突,导致连接Xserver出错。
解决方法:
sudo apt-get purge tightvnc xrdp
sudo apt-get install tightvncserver xrdp
最后启动 xrdp 服务,sudo /etc/init.d/xrdp restart,此时会启用相应端口,配置方面默认即可。
通过命令:netstat -tnl
查看 3350 3389 5910 这三个端口处于LISTEN,一般就没问题了。
dpkg -L + 软件包的名字,可以知道这个软件包包含了哪些文件。
2.2 windows端的操作
windows端的操作:
//---windows端的操作
1.“Win + R”打开运行窗口,输入“mstsc”或者“mstsc.exe”,此时会打开远程连接窗口;
|---a.“Win + R”打开运行窗口;
|---b.输入“mstsc”或者“mstsc.exe”;
|---c.此时会打开远程连接窗口;
2.在“计算机”输入IP地址;
3.在“用户名”输入密码;
(注:假设OS-GUI界面启动了任意程序,直接关闭远程再重新建立远程,此时OS-GUI的程序仍存在。)
【图】windows启动mstsc远程连接
3. 最终效果
VNC和XRDP可以同时运行,二者同时运行最终效果:
4. 手机连接树莓派
Termius是一款手机和PC的全平台终端神器,它不仅支持SSH连接,还提供了文件传输的功能,能够满足不同操作系统用户的需求。 Termius软件以其简洁的界面和强大的功能受到了广泛好评。 它支持Windows、macOS、iOS、Android和Linux操作系统,让用户可以随时随地通过SSH访问远程服务器。 Termius还提供了SSH信息同步功能,使得用户在不同设备间的操作可以无缝衔接。 此外,Termius还支持FTP/SFTP连接,可以作为filezilla和WINSCP的替代品,为用户提供了极大的便利。
//------Termius终端工具(记得选择个人免费版)
//---官网
https://termius.com/
//---下载
https://github.com/termius
//---账户管理(需要邮箱注册,注册完成后可以进行设备管理)
https://account.termius.com/
对于苹果生态用户来讲,直接在APP-Store搜索“termius”然后下载即可;对于安卓用户;对于PC-Windows用户来讲,拿它当普通终端使用即可。此处以iPhone连接树莓派为例进行演示:
打开Ap-Store,搜索“termius”然后下载安装;安装完成后,需要使用邮箱完成注册;输入IP地址、用户名、登录密码,连接树莓派5即可。
【图】账户管理(需要邮箱注册,记得选择个人免费版,注册完成后可以进行设备管理)
【图】手机下载与登录
5. 防火墙UFW使用与避坑
慎重选择防火墙工具“ufw”,它安装完成后是禁用所有端口的输入(包括SSH的默认22端口);换句话说,UFW默认情况下允许流量传出,但拒绝流量传入。这意味着可以浏览网站或者使用wget,apt-get等命令下载安装服务,但不允许外部程序访问本机。我这边安装完成ufw之后,直接无法SSH了,排查了很久才发现UFW这个很不人性化的默认设置。
UFW简介
UFW(Uncomplicated Firewall)是一个在Linux上管理防火墙的工具,它简化了iptables命令的操作,使得配置防火墙规则变得更加容易。
我安装的版本是ufw-0.36.2
zhaomeijing@raspberrypi5:~/workspace$ ufw version
ufw 0.36.2
Copyright 2008-2023 Canonical Ltd.
zhaomeijing@raspberrypi5:~/workspace$
安装防火墙UFW
sudo apt-get install ufw -y
启动/禁用防火墙UFW
sudo ufw enable
sudo ufw disable
查看状态
sudo ufw status
如果是Status: active则表明已经开启
重置UFW防火墙,禁用UFW并删除所有之前定义的规则
sudo ufw reset
列出规则
sudo ufw status numbered
开放端口
指令格式:
sudo ufw allow 端口号/协议
示例说明:
sudo ufw allow 2024/tcp 允许通过TCP协议访问本机的2024端口
sudo ufw allow 2024:2030/tcp 允许某个端口范围,例如2024~2030的TCP协议
sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口
sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口
sudo ufw allow 53 允许外部访问53端口(tcp/udp)
sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口
sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53
sudo ufw deny smtp 禁止外部访问smtp服务
sudo ufw allow ssh 允许外部访问本机SSH服务器
sudo ufw delete allow smtp 删除上面建立的某条规则
关闭端口
sudo ufw deny ssh
重启防火墙(刷新配置)
在执行该命令后,UFW会重新读取并应用所有的防火墙规则,以确保系统的安全性和可用性。
sudo ufw reload
整体来讲,UFW防火墙使用比较简单易用。
zhaomeijing@raspberrypi5:~/workspace$ ufw --help
Usage: ufw COMMAND
Commands:
enable enables the firewall
disable disables the firewall
default ARG set default policy
logging LEVEL set logging to LEVEL
allow ARGS add allow rule
deny ARGS add deny rule
reject ARGS add reject rule
limit ARGS add limit rule
delete RULE|NUM delete RULE
insert NUM RULE insert RULE at NUM
prepend RULE prepend RULE
route RULE add route RULE
route delete RULE|NUM delete route RULE
route insert NUM RULE insert route RULE at NUM
reload reload firewall
reset reset firewall
status show firewall status
status numbered show firewall status as numbered list of RULES
status verbose show verbose firewall status
show ARG show firewall report
version display version information
Application profile commands:
app list list application profiles
app info PROFILE show information on PROFILE
app update PROFILE update PROFILE
app default ARG set default application policy
zhaomeijing@raspberrypi5:~/workspace$
【视频】连接效果(包括手机SSH)
树莓派连接效果_zmj
//------end
|