[Ubuntu Server 22.04] Ubuntu 桌面远程桌面协议(RDP)设置

您所在的位置:网站首页 无法远程桌面连接ubuntu [Ubuntu Server 22.04] Ubuntu 桌面远程桌面协议(RDP)设置

[Ubuntu Server 22.04] Ubuntu 桌面远程桌面协议(RDP)设置

2024-07-13 10:44| 来源: 网络整理| 查看: 265

注意事项

请注意事项

请留意以下事项

请注意以下事项

请留意以下注意事项

附上所指链接中的内容。

[Ubuntu Server 22.04] 个人初始设置备忘录

总结 “Table of Contents” -> 「目录」

1. 安装Tailscale 2. 安装WeTTY 3. 安装Ubuntu桌面(GDM3 Ubuntu自定义),设置自动登录 4. 设置Ubuntu桌面的RDP 概述 构建 – 设置RDP 0. 从GNOME设置启用RDP 1. 创建openSSL证书和密钥文件 2. 启用RDP并解除只读限制 3. 解锁GNOME钥匙链 解锁Keyring(CLI) 4. 设置RDP用户认证信息 – 检查 1. 检查各种状态 2. 修改设置 3. 重新启动RDP服务 – 使用RDP连接 1. 将gnome-remote-desktop注册为服务 2. 启动GNOME桌面,解锁钥匙链 3. 从任意客户端连接 ※如果要将RDP客户端屏幕扩展到其他显示器 ※关于无头模式 – 故障排除 引用来源、参考来源、参考网站 5. 安装PowerTOP TLP 6. 自动重新启动设置(Crontab,rtcwake)

“Explanation” – “解释”

GNOME RDP 是从 Ubuntu 22.04 开始内置的 RDP 主机。

“目标”

在不连接显示器的服务器用途的个人电脑上,使用桌面环境。

「必需品」

・虚拟显示适配器(虚拟插头) (若使用无屏幕连接,则不需要)

确定事项

・Ubuntu 22.04 LTS 将安装 GNOME 42。 ・请先执行 “[Ubuntu Server 22.04] Ubuntu-Desktop 安装和自动登录设置”。 ・在 ubuntu 22.04 中使用 GNOME RDP,音频可能无法输出。

建設 RDP配置 请在 GNOME 设置中启用 RDP。

将org.gnome.desktop.remote-desktop.rdp的enable属性设置为true。

1. 创建 OpenSSL 证书和密钥文件。

如果在执行 grdctl status 时未设置任何内容在 “TLS certificate” 和 “TLS key” 中(如 Ex.1 所示),请执行 bash:1。 ※如果已经设置了,那么无需进行此操作。请继续进行 “2. 启用 RDP 并取消仅查看”。

USER@servername:~$ grdctl status RDP: Status: disabled TLS certificate: TLS key: View-only: yes Username: (empty) Password: (empty) # 创建目录 mkdir -p /home/$(whoami)/.local/share/gnome-remote-desktop/ cd /home/$(whoami)/.local/share/gnome-remote-desktop/ # 创建证书和密钥 openssl genrsa -out tls.key 4096 openssl req -new -key tls.key -out tls.csr openssl x509 -req -days 730 -signkey tls.key -in tls.csr -out tls.crt # 把名字 gnome-remote-desktop 对标 mv tls.crt rdp-tls.crt mv tls.key rdp-tls.key # 设置创建的证书和密钥。 grdctl rdp set-tls-cert /home/$(whoami)/.local/share/gnome-remote-desktop/rdp-tls.crt grdctl rdp set-tls-key /home/$(whoami)/.local/share/gnome-remote-desktop/rdp-tls.key # 确认 grdctl status

自己证明书”openssl req -new -key tls.key -out tls.csr”的例子 · 橙色部分是输入内容。 · ServerName请根据喜好设定。 (Ubuntu的默认是GNOME) · 在红色字处,请不要输入任何内容。 ※即使不输入任何内容,按下Enter即可进入下一项。 USER@servername:~$ openssl req -new -key tls.key -out tls.csr

你即将被要求输入将被纳入到您的证书请求中的信息。 您即将输入的是所谓的专有名称或DN。 有一些字段,您可以将其中一些留空。 对于某些字段,将有一个默认值。 如果您输入“.”,那么该字段将保持空白。 —– 国家名称(2个字母代码)[AU]:JP 州或省名称(全名)[Some-State]:东京 地区名称(例如,城市)[]:新宿区 组织名称(例如,公司)[Internet Widgits Pty Ltd]: 组织单位名称(例如,部门)[]: 通用名称(如服务器FQDN或您的名称)[]:ServerName 电子邮件地址[]: 请输入以下“额外”属性 用于与您的证书请求一起发送 挑战密码[]: 可选的公司名称[]:

2.启用 RDP 并停用只读视图 grdctl rdp enable grdctl rdp disable-view-only 3.解锁 GNOME 钥匙扣

Ubuntu 桌面的 RDP 会将连接所需的用户名和密码存储在 GNOME 密钥环中。 因此,要建立 RDP 连接,gnome-remote-desktop 必须能通过以下方式之一读取 GNOME 密钥环

控制台登录图形用户界面一次(如果是自动登录,则注销 ➝ 登录)

 

从控制台打开 GNOME 钥匙扣并解锁

 

为 GNOME 密钥环设置空白密码

 

通过 CLI 解锁 GNOME 密钥环

在这里,这是通过 方法4. ※注意※ 如果 GNOME 桌面从未启动过,此处输入的 password=”” 值将被设置为 GNOME 密钥环的密码。

password="当前登录用户的密码。" killall -q -u "$(whoami)" gnome-keyring-daemon export $( echo -n "$password" | gnome-keyring-daemon --daemonize --login ) >/dev/null 2>&1 # 確認 1 //将连接用户名初始化为 "test_user",密码初始化为 "test_password"。 grdctl rdp set-credentials "test_user" "test_password" # 確認 2 grdctl status --show-credentials

解锁是否成功。

如果 “grdctl rdp set-credentials “” “”” 不返回 “无法在已锁定的集合中创建项目”,那就可以了。

如果看起来不像↓,也没关系。

USER@servername:~$ grdctl rdp set-credentials "" "" Cannot create an item in a locked collection

并且

如果执行“grdctl status –show-credentials”的结果中,”Username:”和”Password:”不为(null),则表示成功。

如果看起来不像↓,也没关系。

USER@servername:~$ grdctl status --show-credentials RDP: Status: enabled TLS certificate: /home/$(whoami)/.local/share/gnome-remote-desktop/rdp-tls.crt TLS key: /home/$(whoami)/.local/share/gnome-remote-desktop/rdp-tls.key View-only: no Username: (null) Password: (null)

我会创建一个脚本,使其能够轻松执行。

文件名为 gdm3-key 的脚本 cd $HOME

 

touch gdm3-key

 

vim gdm3-key #!/bin/bash printf '[Unlock Keyring] password for '"$(whoami)"': ' && read -s password && echo --completed-- killall -q -u "$(whoami)" gnome-keyring-daemon export $( echo -n "$password" | gnome-keyring-daemon --daemonize --login ) >/dev/null 2>&1 grdctl status --show-credentials unset password exit

以防万一(确保换行代码为 LF) 4. sed -i -e ‘s/\r//g’ gdm3-key 実行は 5. bash ~/gdm3-key

4.RDP 用的用户信息认证设置

3.先解锁 GNOME 钥匙圈。 用户名和密码可以自由选择。 这里,用户名设置为当前登录 shell 的用户。

# grdctl rdp set-credentials "用户名" "密码" grdctl rdp set-credentials "$(whoami)" "RDP_Password" # 证实 grdctl status --show-credentials 请核实 1. 查看各种状态 grdctl status systemctl --user status gnome-remote-desktop.service # gsettings list-keys org.gnome.desktop.remote-desktop.rdp gsettings get org.gnome.desktop.remote-desktop.rdp enable 2. 更改设置 ‘’ 1.下一个情况 ‘’ USER@servername:~$ gsettings get org.gnome.desktop.remote-desktop.rdp enable ‘’ false gsettings set org.gnome.desktop.remote-desktop.rdp enable true ‘’ 2.在下列情况下 ‘’ USER@servername:~$ grdctl status | head -n 5 | grep Status: ‘’ Status: disabled grdctl rdp enable 3. 重新启动RDP服务

请重启gnome-remote-desktop.service服务的用户级systemctl。 以管理员身份立即重新启动计算机。

用实际的远程桌面协议(RDP)进行连接 将gnome-remote-desktop注册为服务。

让 gnome-session.target 在启动时也启动 gnome-remote-desktop。 systemctl –user 启用并立即运行 gnome-remote-desktop.service。

USER@servername:~$ cat /home/$(whoami)/.config/systemd/user/gnome-session.target.wants/gnome-remote-desktop.service [Unit] Description=GNOME Remote Desktop [Service] Type=dbus BusName=org.gnome.RemoteDesktop ExecStart=/usr/libexec/gnome-remote-desktop-daemon Restart=on-failure [Install] WantedBy=gnome-session.target 启动GNOME桌面、解锁密钥环。 sudo systemctl start gdm3 bash ~/gdm3-key 3. 从任意的客户端进行连接

本节介绍从 Windows 连接

[Win + R]

 

[mstsc /v:Ubuntu Server IP地址] 例)mstsc /v:192.168.xxx.xxx:3389

 

其他 ➝ 使用其他帐户。

 

“4.RDP 使用在 “设置用户身份验证信息 “中设置的用户名和密码进行连接。 截图 (369).png  ※RDP 当客户端屏幕用作扩展显示屏时。

将 RDP 客户端扩展为多屏幕现象

关于headless的事项

如果不是运行Ubuntu桌面,而是运行GNOME Shell,就可以通过RDP连接到无头模式。无头。

故障排除

如果使用用户名和密码进行身份验证,但系统立即退出、

gsettings set org.gnome.desktop.remote-desktop.rdp enable false gsettings set org.gnome.desktop.remote-desktop.rdp enable true systemctl --user restart gnome-remote-desktop.service 截图 (371)ver1.png 截图 (370)ver1.png

如果无法重新连接,请重新启动GDM3。

sudo systemctl restart gdm3 bash ~/gdm3-key

如果主机分辨率高于客户端,则可能无法正常显示。 请参考文章 ↓ 更改分辨率。 通过 CLI 更改桌面分辨率

引用来源、参照来源、参考来源

Ubuntu 22.04 解锁启动密码和钥匙圈 ・https://arakoki70.com/?p=7040# Unlock Gnome Keyring Daemon from command line ・https://unix.stackexchange.com/questions/602313/unlock-gnome-keyring-daemon-from-command-line/602935 Ubuntu 22.04 remote desktop headless? ・https://askubuntu.com/questions/1407444/ubuntu-22-04-remote-desktop-headless [未完] Ubuntu Server 22.04 on 我想在 LXD 中安装一个桌面环境,并使用 gnome-remote-desktop [?] ・https://qiita.com/daikichi298/items/a0157954411f6e827411 Ubuntu Manpage [gsettings – GSettings configuration tool] ・https://manpages.ubuntu.com/manpages/trusty/man1/gsettings.1.html Shell Script撰写的 10 个技巧。 ・https://keens.github.io/blog/2015/06/17/shell_scriptwokakutokinikiwotsuketaikoto/ OpenSSL で SSL 签发自我证书的程序 ・https://weblabo.oscasierra.net/openssl-gencert-1/ 10.2.4.1 创建客户证书。 ・http://www2.matsue-ct.ac.jp/home/kanayama/text/nginx/node99.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3