收起左侧

【折腾】为飞牛 OS 添加远程桌面环境(xfce4桌面 + 远程kasmvnc + 本地xrdp)

0
回复
299
查看
[ 复制链接 ]

2

主题

39

回帖

0

牛值

江湖小虾

【折腾向】为飞牛 OS 控制台添加桌面环境(XFCE + XRDP + 中文)

https://club.fnnas.com/forum.php?mod=viewthread&tid=49465

书接上回。


⚠️ 非官方方案,仅供娱乐与学习,请勿用于生产环境

说明

在飞牛的论坛上看到,如何给安装飞牛安装XFCE桌面与XRDP,之前也有安装过,本地用windows的来连接rdp是很不错的,但是如何远程连接是个问题,我尝试过用异地组网,然后远程rdp这样做,但是有画面卡的根本不能用,即使是开了充会员也是用不了,后面又想到了之前折腾webtop与kasmvnc,这两个好是好,但是要跑在Docker上,由于我就在想能不能将它的服务直接拿过来用,但对于linux的不熟悉,还是研究了好久才跑通了,反正就是各种的报错,上面的贴让我知道了如何开xrdp,后面我又集成了kasmvnc,加上好用的节点小宝,终于是跑通了,飞牛安装桌面然后kasmvnc远程,完美的避开了Dokcer的损耗。

安装步骤

1、新建脚本

用了更简单的安装,我编写了安装脚本,可以用Nxshell来连接,然后cd /vol1/1000目录,然后nano a.sh,将下面的脚本粘贴进去,按ctrl+o写入按Enter确认,最后按ctrl+x退出。

#!/bin/bash
# 获取当前用户
CURRENT_USER=$(whoami)

# 确保家目录权限正确
sudo mkdir -p "/home/${CURRENT_USER}"
sudo chown -R $CURRENT_USER:1001 "/home/${CURRENT_USER}"
sudo chmod -R 700 "/home/${CURRENT_USER}"

#任何返回非 0,都会立刻让脚本退出
set -e

# 检查是否有 -u 参数,决定是否更新
while getopts "u" opt; do
  [ "$opt" = "u" ] && {
    echo "[INFO] 更新软件源..."
    sudo apt update
  }
done

echo "[INFO] 配置中文字体..."
sudo apt install -y locales fonts-noto-cjk
sudo sed -i '/^# zh_CN.UTF-8 UTF-8/s/^# //' /etc/locale.gen
sudo locale-gen
sudo update-locale LANG=zh_CN.UTF-8

echo "[INFO] 安装xfce4桌面与dbus-x11..."
sudo apt install -y dbus-x11 xfce4 xfce4-goodies

echo "[INFO] 下载安装 xrdp..."
sudo apt install -y xrdp
echo "/usr/bin/xfce4-session" > "$HOME/.xsession"
#将Xrdp用户加入ssl-cert组,确保证书访问权限
sudo adduser xrdp ssl-cert

#KasmVNC下载地址
DOWNLOAD_URL='https://github.com/kasmtech/KasmVNC/releases/download/v1.4.0/kasmvncserver_bookworm_1.4.0_amd64.deb'

if dpkg -s kasmvncserver >/dev/null 2>&1; then
  echo "[INFO] KasmVNC 已安装,跳过下载和安装。"
else
  echo "[INFO] 未检测到 KasmVNC,准备下载安装..."
  wget -q --show-progress --tries=3 -c "$DOWNLOAD_URL" -O /tmp/kasmvnc.deb
  sudo apt install -y /tmp/kasmvnc.deb
fi


# 获取主内网 IP 地址
INTERNAL_IP=$(hostname -I | awk '{print $1}')

echo "[INFO] 添加用户到ssl-cert组..."
sudo adduser $USER ssl-cert
 
echo "[INFO] 配置KasmVNC的Systemd服务..."
sudo tee "/etc/systemd/system/kasmvnc.service" > /dev/null <<EOF
[Unit]
Description=KasmVNC
After=network.target
[Service]
Type=forking
User=${CURRENT_USER}
ExecStart=/usr/bin/kasmvncserver -publicIP ${INTERNAL_IP}
ExecStop=/usr/bin/kasmvncserver -kill :1
[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable xrdp
sudo systemctl restart xrdp
sudo systemctl enable kasmvnc
 
echo "[INFO] KasmVNC启动xfce桌面..."
sg ssl-cert -c "kasmvncserver -select-de xfce -publicIP $INTERNAL_IP"

2、执行脚本

先用chmod +x a.sh给运行权限,然后./a.sh -u来运行,加-u 参数是要执行apt update命令,重复运行更新一次就够了,最后输入密码,开始跑脚本如下图所示:

image.png

运行完成后,

image.png

这是成功安装了,要新建kasmvnc的用户,此kasmvnc用户可用于后面的kasm登陆,输入1新建,然后输入用户名,可以自定义用户,也可以直接回车用系统默认的,然后输入两次密码,出现下图就成功了。

image.png

3、连接Kasmvnc

这里要用到飞牛商店里的节点小宝,目前不充钱也够用,它的异地组网功能很好用,现在是安装成了,那kasmvnc只支持https协议,更多配置请看:KasmVNC 1.4.0,也支持复制粘贴到网页,现在本地连接一下:https://飞牛IP:8444,然后输入刚才设的用户名与密码,连接如下图所示:

image.png

重启设备,然后安装节点小宝,登陆绑定一下设备,

image.png

然后查看控制台,测试http连接,下图组网成功

image.png

异地组网成功后,输入https://100.66.1.3:8444,然后输入用户与密码,得下图所示,

image.png

当然,现在也可以远程rdp,只是这个卡的不能用,还是kasmvnc好用,

image.png

补充

本地桌面连接(XRDP / mstsc)

Win + R,输入:

mstsc /v [飞牛IP]

在登录页输入账号密码即可登录

安装Chrome浏览器

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install -y ./google-chrome-stable_current_amd64.deb
#以沙盒模式运行
google-chrome-stable --no-sandbox

风险提示(重要)

  • 本脚本仅供娱乐和学习用途
  • 不建议在生产环境中使用
  • 不保证不会对系统造成影响
  • 使用后果请自行承担

飞牛 OS 并非桌面系统,本文方案属于非官方折腾玩法。

PS:最后,感谢飞牛tongrens用户提供的xrdp方案。。

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则