rustdesk.yourdomain.com
。https://rustdesk.yourdomain.com
或http://youripaddress:21114
。admin
和密码test1234
登录。rustdesk.yourdomain.com
。https://rustdesk.yourdomain.com
或http://youripaddress:21114
。admin
和密码test1234
登录。这些服务使用 systemd,因此可以使用sudo systemctl stop|start|restart rustdesk-hbbs|rustdesk-hbbr
来启动和停止,例如 sudo systemctl restart rustdesk-hbbs
。
日志存储在 /var/log/rustdesk-server 中,您可以使用 tail /var/log/rustdesk-server/hbbs.log
或 tail /var/log/rustdesk-server/hbbs.error
查看它们。
要检查状态 sudo systemctl status rustdesk-hbbs|rustdesk-hbbr
例如 sudo systemctl status rustdesk-hbbs
。
服务
,然后单击启动
。http://youripaddress:21114
。admin
和密码test1234
登录。https://rustdesk.yourdomain.com
或http://youripaddress:21114
。admin
和密码test1234
登录。管理
。设置
。admin
用户?管理员
的帐户。Users
页面上的admin
。设置
。中继
。中继服务器
旁边的+
。+
并根据需要调整地理设置(记住并将您的密钥复制到其他服务器)。设置
。许可证
。编辑
并粘贴您的许可证代码。确定
。请参阅此处。
在左侧单击日志
。
本例中的 Gmail
设置
。SMTP
。smtp.gmail.com
。SMTP 端口
中输入端口 587。邮件帐户
中输入 Gmail 帐户,即myrustdeskserver@gmail.com
。发件人
中输入您的 Gmail 帐户,即myrustdeskserver@gmail.com
。检查
保存。许多 VPS 提供商会阻止端口 465 和 25。
一个简单的检查方法是使用 telnet。 要在 Linux 终端中测试,请输入telnet your.mailserver.com 25
。 在 Windows 上,使用 PowerShell 和Test-NetConnection -ComputerName your.mailserver.com -Port 25
。
您的邮件服务器可能未使用端口 25。请确保您使用的是正确的端口。
当然,此脚本可以提供帮助,将youraddress
和yourkey
替换为 RustDesk Server Pro 地址和密钥的地址和密钥
$ErrorActionPreference= 'silentlycontinue'
$rdver = ((Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RustDesk\").Version)
if($rdver -eq "1.2.1")
{
write-output "RustDesk $rdver is the newest version"
exit
}
If (!(Test-Path c:\Temp)) {
New-Item -ItemType Directory -Force -Path c:\Temp > null
}
cd c:\Temp
powershell Invoke-WebRequest "https://github.com/rustdesk/rustdesk/releases/download/1.2.1/rustdesk-1.2.1-x86_64.exe" -Outfile "rustdesk.exe"
Start-Process .\rustdesk.exe --silent-install -wait
$ServiceName = 'Rustdesk'
$arrService = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
if ($arrService -eq $null)
{
Start-Sleep -seconds 20
}
while ($arrService.Status -ne 'Running')
{
Start-Service $ServiceName
Start-Sleep -seconds 5
$arrService.Refresh()
}
net stop rustdesk
$username = ((Get-WMIObject -ClassName Win32_ComputerSystem).Username).Split('\')[1]
Remove-Item C:\Users\$username\AppData\Roaming\RustDesk\config\RustDesk2.toml
New-Item C:\Users\$username\AppData\Roaming\RustDesk\config\RustDesk2.toml
Set-Content C:\Users\$username\AppData\Roaming\RustDesk\config\RustDesk2.toml "rendezvous_server = 'youraddress' `nnat_type = 1`nserial = 0`n`n[options]`ncustom-rendezvous-server = 'youraddress'`nkey = 'yourkey'`nrelay-server = 'youraddress'`napi-server = 'https://youraddress'"
Remove-Item C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk2.toml
New-Item C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk2.toml
Set-Content C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk2.toml "rendezvous_server = 'youraddress' `nnat_type = 1`nserial = 0`n`n[options]`ncustom-rendezvous-server = 'youraddress'`nkey = 'yourkey'`nrelay-server = 'youraddress'`napi-server = 'https://youraddress'"
net start rustdesk
在 Windows 上,您可以使用以下 PowerShell 脚本:
$ErrorActionPreference= 'silentlycontinue'
Start-Process "$env:ProgramFiles\RustDesk\RustDesk.exe" --get-id
sleep 2
$rustdesk_id = (get-clipboard)
Write-Output $rustdesk_id
在 Windows 上,您可以使用以下 PowerShell 脚本:
$ErrorActionPreference = 'silentlycontinue'
net stop rustdesk > null
$ProcessActive = Get-Process rustdesk -ErrorAction SilentlyContinue
if($ProcessActive -ne $null)
{
stop-process -ProcessName rustdesk -Force
}
$rustdesk_pw = (-join ((65..90) + (97..122) | Get-Random -Count 12 | % {[char]$_}))
Start-Process "$env:ProgramFiles\RustDesk\RustDesk.exe" "--password $rustdesk_pw" -wait
Write-Output $rustdesk_pw
net start rustdesk > null
使用Nginx之类的代理,简单的安装脚本就有一个,非常简单。 就在这里。
类似的配置应该适用于 Traefik v2、HAProxy、Apache Proxy 和 Cloudflare Tunnel。
请通过 GitHub 提交。
这很容易排序,您需要允许跨组访问。
配置是自动生成的。
提交
。请联系我们的销售 团队。
是的! 我们有一个 YouTube 频道,稍后会创建B站频道。
例如,如果您从 Namesilo
购买域名 example.com
,您的服务器 IP 地址是 123.123.123.123
,您想使用 rustdesk.example.com
子域名作为您的 HTTPS Web 控制台地址。您需要打开链接,点击带有工具提示 Manage dns for the domain
的按钮,添加一个主机名为 rustdesk
且 IP 地址为您的服务器 IP 的 A
记录。
<YOUR_DOMAIN>
替换为您的子域名,例如 rustdesk.example.com
。sudo apt-get install nginx
sudo dnf install nginx
或 sudo yum install nginx
sudo pacman -S install nginx
sudo zypper install nginx
sudo emerge -av nginx
sudo apk add --no-cache nginx
运行 nginx -h
检查是否安装成功。
snap
,运行 sudo snap install certbot --classic
python3-certbot-nginx
,例如 Ubuntu 的 sudo apt-get install python3-certbot-nginx
certbot-nginx
,例如 CentOS 7 的 sudo yum install certbot-nginx
运行 certbot -h
检查是否安装成功。
有两种方式:
/etc/nginx/sites-available
和 /etc/nginx/sites-enabled
,将以下命令中的 <YOUR_DOMAIN>
替换为您的域名并运行。cat > /etc/nginx/sites-available/rustdesk.conf << EOF
server {
server_name <YOUR_DOMAIN>;
location / {
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:21114/;
}
}
EOF
然后运行 sudo ln -s /etc/nginx/sites-available/rustdesk.conf /etc/nginx/sites-enabled/rustdesk.conf
。
运行 cat /etc/nginx/sites-available/rustdesk.conf
确保其内容正确。
/etc/nginx/sites-available
和 /etc/nginx/sites-enabled
不存在,但目录 /etc/nginx/conf.d
存在,将以下命令中的 <YOUR_DOMAIN>
替换为您的域名并运行。cat > /etc/nginx/conf.d/rustdesk.conf << EOF
server {
server_name <YOUR_DOMAIN>;
location / {
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:21114/;
}
}
EOF
运行 cat /etc/nginx/conf.d/rustdesk.conf
确保其内容正确。
运行以下命令:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw --force enable
sudo ufw --force reload
将 $YOUR_DOMAIN
替换为您的域名,然后运行
sudo certbot --nginx --cert-name $YOUR_DOMAIN --key-type ecdsa --renew-by-default --no-eff-email --agree-tos --server https://acme-v02.api.letsencrypt.org/directory -d $YOUR_DOMAIN
。
如果提示 Enter email address (used for urgent renewal and security notices)
,输入您的电子邮件地址。
最后,rustdesk.conf
的内容应该如下:
server {
server_name <YOUR_DOMAIN>;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:21114/;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/<YOUR_DOMAIN>/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/<YOUR_DOMAIN>/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = <YOUR_DOMAIN>) {
return 301 https://$host$request_uri;
} # managed by Certbot
server_name <YOUR_DOMAIN>;
listen 80;
return 404; # managed by Certbot
}
以下是一些常见错误:
Successfully deployed certificate for <YOUR_DOMAIN> to /etc/nginx/.../default
而不是 Successfully deployed certificate for <YOUR_DOMAIN> to /etc/nginx/.../rustdesk.conf
。原因可能是 Certbot 找不到 rustdesk.conf
文件,您可以尝试以下解决方案之一:
sudo service nginx restart
。<YOUR_DOMAIN>
的服务器配置 server{...}
复制到 rustdesk.conf
,并将 location{...}
更改为以下内容。location / {
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:21114/;
}
too many certificates (5) already issued for this exact set of domains in the last 168 hours
解决方案:向 DNS 添加另一个域名并将 <YOUR_DOMAIN>
更改为它,例如 rustdesk2.example.com
。然后重复步骤 1、4、6。
Error getting validation data
解决方案:可能是由防火墙引起的,请参阅 https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/faq/#firewall
注意:如果您手动更改了 rustdesk.conf
,请运行 sudo service nginx restart
。
https://<YOUR_DOMAIN>
,使用默认用户名 “admin” 和密码 “test1234” 登录,然后将密码更改为您自己的密码。将以下配置添加到 /etc/nginx/.../rustdesk.conf
文件的第一个 server
部分,然后重启 Nginx
服务。
Web客户端通过 https://<YOUR_DOMAIN>/web
访问, 自定义客户端通过在高级选项中设置 allow-websocket=Y
来使用websocket。如果自定义客户端中启用了websocket,该自定义客户端将不会被使用tcp/udp, 只能通过中继连接(除IP直连)。如果只使用这种启用了websocket的客户端, 也可以关闭服务器的21114~21119端口, 只开启443端口。
location /ws/id {
proxy_pass http://127.0.0.1:21118;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 120s;
}
location /ws/relay {
proxy_pass http://127.0.0.1:21119;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 120s;
}
完整配置如下:
server {
server_name <YOUR_DOMAIN>;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:21114/;
}
location /ws/id {
proxy_pass http://127.0.0.1:21118;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 120s;
}
location /ws/relay {
proxy_pass http://127.0.0.1:21119;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 120s;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/<YOUR_DOMAIN>/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/<YOUR_DOMAIN>/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = <YOUR_DOMAIN>) {
return 301 https://$host$request_uri;
} # managed by Certbot
server_name <YOUR_DOMAIN>;
listen 80;
return 404; # managed by Certbot
}
如果您之前为 Web 客户端部署过,并想在所有平台上使用,您需要添加 proxy_read_timeout
。
https://rustdesk.com/web
,需要绕过 CORS 限制您需要在 /etc/nginx/.../rustdesk.conf
的 location /
部分添加以下内容,以绕过浏览器的 CORS 限制。如果您使用自己的 Web 客户端,可以跳过此步骤。
if ($http_origin ~* (https?://(www\.)?rustdesk\.com)) {
add_header 'Access-Control-Allow-Origin' "$http_origin" always;
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, PATCH, OPTIONS' always;
add_header 'Access-Control-Allow-Headers' 'Origin, Content-Type, Accept, Authorization' always;
add_header 'Access-Control-Allow-Credentials' 'true' always;
}
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' "$http_origin" always;
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, PATCH, OPTIONS' always;
add_header 'Access-Control-Allow-Headers' 'Origin, Content-Type, Accept, Authorization' always;
add_header 'Access-Control-Allow-Credentials' 'true' always;
add_header 'Content-Length' 0;
add_header 'Content-Type' 'text/plain charset=UTF-8';
return 204;
}
确保在被控制的设备上正确设置了 API,https://github.com/rustdesk/rustdesk-server-pro/issues/21#issuecomment-1637935750。
运行以下命令:
sudo systemctl stop rustdesk-hbbs.service
sudo systemctl disable rustdesk-hbbs.service
sudo systemctl stop rustdesk-hbbr.service
sudo systemctl disable rustdesk-hbbr.service
sudo systemctl daemon-reload
sudo rm /etc/systemd/system/rustdesk-hbbs.service
sudo rm etc/systemd/system/rustdesk-hbbr.service
sudo rm /usr/bin/hbbs
sudo rm /usr/bin/hbbr
sudo rm -rf /var/lib/rustdesk-server/
sudo rm -rf /var/log/rustdesk-server/
如果脚本安装了 Nginx,则使用以下命令删除:
sudo apt remove nginx
禁用然后删除现在可用。
$ErrorActionPreference= 'silentlycontinue'
$rdver = ((Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RustDesk\").Version)
if ($rdver -eq "1.2.6")
{
Write-Output "RustDesk $rdver 是最新版本。"
Exit
}
if (!(Test-Path C:\Temp))
{
New-Item -ItemType Directory -Force -Path C:\Temp > null
}
cd C:\Temp
Invoke-WebRequest "https://github.com/rustdesk/rustdesk/releases/download/1.2.6/rustdesk-1.2.6-x86_64.exe" -Outfile "rustdesk.exe"
Start-Process .\rustdesk.exe --silent-install -wait
Key mismatch
错误请使用正确的密钥配置您的客户端。
Failed to connect to relay server
错误请确保 hbbr
正在运行。有关 hbbr
的更多信息,您可以在此处找到。
如果您的 hbbr
不在与 hbbs
相同的机器上运行,或者您有多个中继服务器,或者您不在默认端口 21117
上运行它,您必须明确告诉 hbbs
。请查看此处。
https://github.com/rustdesk/rustdesk/discussions/6576
rustdesk-utils
。如果没有,您可以从这里获取。此外,您需要从数据库所在的文件夹执行命令,即 /var/lib/rustdesk-server
。rustdesk-utils set_password username password
。如果成功,它将显示 Done。您还可以使用以下其他命令 genkeypair
、validatekeypair [public key] [secret key]
、doctor [rustdesk-server]
、reset_email_verification
和 reset_2fa_verification
,这些命令可以与 rustdesk-utils
一起使用。
https://github.com/rustdesk/rustdesk-server-pro/discussions/183
https://github.com/rustdesk/rustdesk-server-pro/issues/99#issuecomment-2235014703