简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!
优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀
优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀
优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门实战课【原创干货持续更新中……】🚀
人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.
🍉🍉🍉文章目录🍉🍉🍉
- 🌻1.前言
- 🌻2.ssh+x11介绍
- 🌻3. 解决方案
- 🐓3.1 服务器端配置
- 🐓3.2 重启sshd服务
- 🐓3.2 客户端连接服务端
🌻1.前言
本篇目的:XUbuntu22.04之ssh+x11显示远程图形到本机
🌻2.ssh+x11介绍
- Linux平台下的SSH(Secure Shell)和X11是两种关键的技术,它们分别为安全的网络连接和图形界面传输提供了解决方案。
SSH,即安全外壳协议,是一种在不安全的网络中为网络服务提供安全传输环境的协议。它提供了加密的通讯渠道,使得远程登录、文件传输和命令执行等操作可以安全地进行。在Linux平台上,SSH广泛应用于远程管理和服务器之间的安全数据传输。 - SSH具有以下特点:
- 加密:SSH在传输过程中对数据进行加密,保证了数据的安全性。
- 认证:SSH支持多种认证方式,如密码认证、密钥认证等,保证了连接的安全性。
- 完整性:SSH能够检测数据在传输过程中是否被篡改,确保数据的完整性。
- 隧道技术:SSH支持隧道技术,可以将加密的通讯通道穿越不安全的网络,应用于各种场景,如VPN、远程桌面等。
- 在Linux平台上,SSH可以通过命令行工具ssh和scp进行使用。例如,使用ssh命令可以实现远程登录到Linux服务器,执行命令操作。使用scp命令可以在本地和远程服务器之间安全地复制文件。
- X11,即X窗口系统版本11,是Unix和类Unix操作系统上的一种图形窗口系统。它允许用户在远程服务器上运行图形界面应用程序,并在本地机器上显示。X11转发技术使得在SSH连接中可以传输图形界面数据,实现在本地机器上显示远程服务器上的图形界面应用程序。
- 要在SSH连接中使用X11转发,首先确保客户端和服务器都支持X11转发。在大多数Linux发行版中,X11和SSH都默认安装并支持X11转发。
以下是使用SSH和X11转发在Linux平台上运行远程图形界面应用程序的基本步骤:
- 安装SSH客户端和X11:确保你的本地机器上安装了SSH客户端和X11。在大多数Linux发行版中,它们都已经预装好了。
- 启动SSH会话:使用ssh命令连接到远程服务器。例如:
ssh user@remote_host
- 这里的
user
是远程服务器的登录名,remote_host
是远程服务器的地址。
- 启用X11转发:在SSH会话中,使用export命令设置DISPLAY环境变量,指向本地机器上的X11显示器。例如:
export DISPLAY=local_display_number:0
- 这里的
local_display_number
是你本地机器上的显示器编号。
- 运行远程服务器上的图形界面应用程序:现在,你可以像在本地机器上一样运行远程服务器上的图形界面应用程序。例如,如果你想运行远程服务器上的Firefox浏览器,可以使用以下命令:
ssh -X user@remote_host 'firefox http://localhost:8080'
- 这里的
-X
选项用于启用X11转发。注意,你必须将user
、remote_host
和http://localhost:8080
替换为实际的登录名、主机名和URL。 - 通过以上步骤,你可以在本地机器上远程运行服务器上的图形界面应用程序,就像它们是在本地运行的一样。这使得远程服务器上的应用程序更加易于使用,尤其是在需要与远程服务器上的图形界面应用程序进行交互时。
🌻3. 解决方案
🐓3.1 服务器端配置
# sudo apt install openssh-server openssh-client
//打开以下注释项
# sudo vim /etc/ssh/sshd_config
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes
🐓3.2 重启sshd服务
# sudo /etc/init.d/ssh restart
🐓3.2 客户端连接服务端
# ssh -X root@192.168.1.6