22 KiB
title | weight |
---|---|
FAQ | 600 |
¿Cómo puedo instalar con el script de instalación simple?
- Obtén tu licencia desde https://rustdesk.com/pricing.html, consulta la página de licencia para más detalles.
- Inicia un VPS, metal desnudo o VM Linux.
- Si quieres usar DNS y SSL, crea un nombre DNS como
rustdesk.yourdomain.com
. - Esta página.
- Copia y pega el comando en tu terminal Linux.
- Sigue las indicaciones que te guían a través de la instalación.
- Una vez completada la instalación, ve a
https://rustdesk.yourdomain.com
ohttp://youripaddress:21114
. - Inicia sesión con el nombre de usuario
admin
y contraseñatest1234
. - Ingresa tu código de licencia comprado en el paso 1.
¿Cómo puedo convertir de RustDesk Server Open Source a RustDesk Server Pro?
- Obtén tu licencia desde https://rustdesk.com/pricing.html, consulta la página de licencia para más detalles.
- Abre el puerto TCP 21114.
- Inicia sesión en tu RustDesk Server.
- Si aún no usas DNS y quieres usar SSL, crea un nombre DNS como
rustdesk.yourdomain.com
. - Esta página.
- Copia y pega el comando en tu terminal Linux.
- Sigue las indicaciones que te guían a través de la instalación.
- Una vez completada la instalación, ve a
https://rustdesk.yourdomain.com
ohttp://youripaddress:21114
. - Inicia sesión con el nombre de usuario
admin
y contraseñatest1234
. - Ingresa tu código de licencia comprado en el paso 1.
Hay una nueva versión de RustDesk Server Pro, ¿cómo puedo actualizar?
Es mejor hacer una copia de seguridad de los archivos de datos (archivos sqlite3, etc.) primero, https://github.com/rustdesk/rustdesk-server-pro/discussions/184#discussioncomment-8013375.
-
Si instalaste con script (
install.sh
)
Por favor ejecuta update.sh.
-
Docker Compose
sudo docker compose down
sudo docker compose pull
sudo docker compose up -d
Pero esto depende de tu versión de docker, para más discusión, consulta esto.
-
Docker
sudo docker ps
## también puedes usar <NOMBRE DEL CONTENEDOR>, ej. `hbbs` y `hbbr` si sigues nuestro manual.
sudo docker stop <ID DEL CONTENEDOR>
sudo docker rm <ID DEL CONTENEDOR>
sudo docker rmi <ID DE LA IMAGEN>
sudo docker run ..... # igual que lo instalaste antes
Instalé con el script, ¿cómo puedo iniciar y detener servicios?
Los servicios usan systemd así que pueden iniciarse y detenerse usando sudo systemctl stop|start|restart rustdesk-hbbs|rustdesk-hbbr
ej. sudo systemctl restart rustdesk-hbbs
.
Instalé con el script, ¿cómo puedo ver los logs de Linux?
Los logs se almacenan en /var/log/rustdesk-server
, puedes verlos usando tail /var/log/rustdesk-server/hbbs.log
o tail /var/log/rustdesk-server/hbbs.error
.
Instalé con el script, ¿cómo puedo verificar el estado de los servicios RustDesk?
Para verificar el estado sudo systemctl status rustdesk-hbbs|rustdesk-hbbr
ej. sudo systemctl status rustdesk-hbbs
.
¿Cómo puedo cambiar la contraseña de admin?
- Ve a
https://rustdesk.yourdomain.com
ohttp://youripaddress:21114
. - Inicia sesión con el nombre de usuario
admin
y contraseñatest1234
. - Haz clic en
admin
en la esquina superior derecha. - Haz clic en
Configuración
. - Ingresa tu nueva contraseña en las casillas proporcionadas.
¿Cómo puedo mover mi licencia a un nuevo servidor?
Por favor ve aquí.
Los correos electrónicos no funcionan desde mi VPS
Muchos proveedores de VPS bloquean los puertos 465 y 25.
Una forma simple de verificar es usando telnet. Para probar en el terminal Linux escribe telnet your.mailserver.com 25
. En Windows usa PowerShell con Test-NetConnection -ComputerName your.mailserver.com -Port 25
.
Tu servidor de correo puede no estar usando el puerto 25. Asegúrate de usar los puertos correctos.
¿Puedo desplegar RustDesk usando PowerShell o similar?
Por supuesto, puedes encontrar scripts para ayudar con el despliegue aquí.
¿Cómo puedo reportar un error?
Por favor reporta vía GitHub.
¿Por qué si estoy auto-hospedando esto no es gratis y código abierto?
- RustDesk se ha convertido en un trabajo de tiempo completo para varias personas, tienen vidas, esposas, trabajos e hijos que requieren atención y cuestan dinero!
- Queremos estar aquí y seguir haciendo grandes progresos en los años venideros.
- La versión código abierto continuará siendo código abierto y alentamos a otros a hacer desarrollos en línea con la licencia AGPL.
No puedo conectarme a dispositivos en diferentes grupos, ¿por qué?
Esto se soluciona fácilmente, necesitas permitir acceso entre grupos.
- Agregar nuevos grupos.
- Hacer clic en
Editar
. - Seleccionar los grupos relevantes a los que quieres acceso (los agrega automáticamente en el grupo correspondiente).
¿Cómo puedo obtener configuraciones automáticamente?
Las configuraciones se generan automáticamente.
- Descarga los clientes más nuevos de GitHub.
- En la página principal de la consola web haz clic en
Windows EXE
. - Llena el host y API (si es diferente de tu configuración).
- Haz clic en
Enviar
. - Escanea el código QR en Android y renombra el exe a lo que se ha generado.
¿Ofrecen hosting para RustDesk Server Pro?
Por favor ponte en contacto con nuestro equipo de ventas.
¿Hay algún lugar donde pueda ver guías de configuración en video?
¡Sí! Tenemos un Canal de YouTube.
¿Por qué mis logs / nombres de dispositivo están vacíos?
Asegúrate de que la API esté configurada correctamente en el dispositivo controlado, https://github.com/rustdesk/rustdesk-server-pro/issues/21#issuecomment-1637935750.
¿Cómo puedo desinstalar RustDesk Server Pro?
Ejecuta los siguientes comandos:
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/
Si el script instaló Nginx entonces remueve usando:
sudo apt remove nginx
¿Cómo puedo eliminar dispositivos de la lista de dispositivos en la consola web?
Desactiva y luego eliminar estará disponible.
¿Cómo puedo actualizar RustDesk con PowerShell?
$ErrorActionPreference= 'silentlycontinue'
$rdver = ((Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RustDesk\").Version)
if ($rdver -eq "1.2.6")
{
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
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
Error Key mismatch
Por favor configura tu cliente con la clave correcta.
Error Failed to connect to relay server
Por favor asegúrate de que hbbr
esté ejecutándose. Más información sobre hbbr
, puedes encontrarla aquí.
Si tu hbbr
no se ejecuta en la misma máquina que hbbs
, o tienes múltiples servidores relay, o no lo ejecutas en el puerto predeterminado 21117
, tienes que decirle a hbbs
explícitamente. Por favor consulta aquí.
Restablecer MFA para cuenta Admin
https://github.com/rustdesk/rustdesk/discussions/6576
Configurar HTTPS para consola web manualmente
1. Comprar un nombre de dominio y resolverlo a la dirección IP de tu servidor.
- Compra un nombre de dominio de un registrador como GoDaddy, Namecheap o Namesilo.
- Resuelve el nombre de dominio a la dirección IP de tu servidor con uno de los siguientes:
- El panel de control de tu registrador de dominios (recomendado)
- Proveedores DNS
Por ejemplo, si compras un nombre de dominio example.com
de Namesilo
y la dirección IP de tu servidor es 123.123.123.123
, quieres usar el subdominio rustdesk.example.com
como tu dirección de consola web HTTPS. Necesitas abrir link, hacer clic en el botón con información sobre herramientas Manage dns for the domain
, agregar un registro A
con el nombre de host rustdesk
y la dirección IP de tu servidor.
- Toma algún tiempo para que el DNS surta efecto, https://www.whatsmydns.net y verifica si el nombre de dominio se ha resuelto a la dirección IP de tu servidor. El paso 6 depende del resultado correcto de resolución. En los siguientes pasos, reemplaza
<YOUR_DOMAIN>
con tu subdominio, ej.rustdesk.example.com
.
2. Instalar Nginx
- Debian/Ubuntu:
sudo apt-get install nginx
- Fedora/CentOS:
sudo dnf install nginx
osudo yum install nginx
- Arch:
sudo pacman -S install nginx
- openSUSE:
sudo zypper install nginx
- Gentoo:
sudo emerge -av nginx
- Appine:
sudo apk add --no-cache nginx
Ejecuta nginx -h
para verificar si se ha instalado correctamente.
3. Instalar Certbot
- Método 1: Si
snap
está instalado, ejecutasudo snap install certbot --classic
. - Método 2: Usando
python3-certbot-nginx
en su lugar, ej.sudo apt-get install python3-certbot-nginx
para Ubuntu. - Método 3: Si los dos métodos anteriores fallaron, intenta instalar
certbot-nginx
, ej.sudo yum install certbot-nginx
para CentOS 7.
Ejecuta certbot -h
para verificar si se ha instalado correctamente.
4. Configurar Nginx
Hay dos formas:
- Si existen los directorios
/etc/nginx/sites-available
y/etc/nginx/sites-enabled
, reemplaza<YOUR_DOMAIN>
del siguiente comando con tu nombre de dominio y ejecútalo.
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
Luego ejecuta sudo ln -s /etc/nginx/sites-available/rustdesk.conf /etc/nginx/sites-enabled/rustdesk.conf
.
Ejecuta cat /etc/nginx/sites-available/rustdesk.conf
para asegurarte de que su contenido sea correcto.
- Si los directorios
/etc/nginx/sites-available
y/etc/nginx/sites-enabled
no existen y existe el directorio/etc/nginx/conf.d
, reemplaza<YOUR_DOMAIN>
del siguiente comando con tu nombre de dominio y ejecútalo.
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
Ejecuta cat /etc/nginx/conf.d/rustdesk.conf
para asegurarte de que su contenido sea correcto.
5. Habilitar reglas de firewall para el dominio
Ejecuta los siguientes comandos:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw --force enable
sudo ufw --force reload
6. Generar certificado SSL
Reemplaza $YOUR_DOMAIN
con tu nombre de dominio, luego ejecuta
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
.
Si te solicita Enter email address (used for urgent renewal and security notices)
, ingresa tu dirección de correo electrónico.
Finalmente, el contenido de rustdesk.conf
debería ser así:
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
}
Aquí hay algunos errores comunes:
- La consola imprime
Successfully deployed certificate for <YOUR_DOMAIN> to /etc/nginx/.../default
en lugar deSuccessfully deployed certificate for <YOUR_DOMAIN> to /etc/nginx/.../rustdesk.conf
.
La razón puede ser que Certbot no encuentra el archivo rustdesk.conf
, puedes probar una de las siguientes soluciones:
- Verifica el resultado del paso 5, ejecuta
sudo service nginx restart
. - Copia las configuraciones del servidor
server{...}
que contienen<YOUR_DOMAIN>
arustdesk.conf
, y cambialocation{...}
al contenido siguiente.
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
Solución: Agrega otro nombre de dominio a DNS y cambia <YOUR_DOMAIN>
por él, ej. rustdesk2.example.com
. Luego repite los pasos 1, 4, 6.
Error getting validation data
Solución: puede ser causado por el firewall, por favor consulta https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/faq/#firewall
Aviso: Ejecuta sudo service nginx restart
si cambias rustdesk.conf
manualmente.
7. Iniciar sesión en la página web
- Abre
https://<YOUR_DOMAIN>
en el navegador, inicia sesión usando el nombre de usuario predeterminado "admin" y contraseña "test1234", luego cambia la contraseña a la tuya.
8. Agregar soporte WebSocket Secure (WSS) para el servidor de ID y el servidor relay para habilitar comunicación segura en todas las plataformas.
Agrega la siguiente configuración a la primera sección server
del archivo /etc/nginx/.../rustdesk.conf
, luego reinicia el servicio Nginx
.
El cliente web se puede acceder a través de https://<YOUR_DOMAIN>/web
. Los clientes personalizados pueden usar WebSocket estableciendo allow-websocket=Y
en las opciones avanzadas. Si se usa el cliente personalizado con WebSocket habilitado, no utilizará TCP/UDP y solo podrá conectarse a través de relay (excepto para conexiones IP directas). Si solo se usa este cliente con WebSocket habilitado, el servidor puede cerrar los puertos 21114 a 21119 y solo mantener abierto el puerto 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;
}
La configuración completa es
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
}
{{% notice note %}}
Si has implementado previamente para clientes web y quieres usarlo en todas las plataformas, necesitas agregar proxy_read_timeout
.
{{% /notice %}}
9. Evitar CORS si usas el cliente web público de RustDesk https://rustdesk.com/web
Necesitas agregar lo siguiente en la sección location /
del /etc/nginx/.../rustdesk.conf
para evitar la limitación CORS de los navegadores. Omite este paso si estás usando tu propio cliente 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;
}
SELinux
Si aparece Waiting for RustDesk Relay service to become active...
al instalar, puede ser causado por SELinux. Puedes intentar los siguientes comandos:
sudo semanage fcontext -a -t NetworkManager_dispatcher_exec_t 'hbbs'
sudo semanage fcontext -a -t NetworkManager_dispatcher_exec_t 'hbbr'
sudo restorecon -v '/usr/bin/hbbs'
sudo restorecon -v '/usr/bin/hbbr'
Firewall
Firewall de la nube
Si ejecutas en AWS/Azure/Google/DigitalOcean cloud, por favor abre los puertos entrantes UDP (21116) y TCP (21114-21119) en el dashboard del proveedor de la nube.
Firewall del servidor local
RustDesk configura firewall con ufw
. Puede no funcionar en algunas distribuciones como CentOS 9, puedes intentar con firewall-cmd
:
sudo firewall-cmd --permanent --add-port=21115/tcp
sudo firewall-cmd --permanent --add-port=21116/tcp
sudo firewall-cmd --permanent --add-port=21117/tcp
sudo firewall-cmd --permanent --add-port=21118/tcp
sudo firewall-cmd --permanent --add-port=21119/tcp
sudo firewall-cmd --permanent --add-port=21116/udp
Después de cambiar la contraseña de admin en la consola web no puedo iniciar sesión. ¿Hay una forma simple de restablecer la contraseña?
- Asegúrate de tener
rustdesk-utils
instalado. Si no lo tienes puedes obtenerlo aquí. - El comando es
rustdesk-utils set_password username password
. Si funciona dirá Done.
Agregar certificado CA raíz al contenedor Docker (para falla TLS con SMTP, OIDC etc.)
https://github.com/rustdesk/rustdesk-server-pro/issues/99#issuecomment-2235014703
Si usas IP:
sudo firewall-cmd --permanent --add-port=21114/tcp
Si usas DNS/Dominio:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
Después de lo anterior, ejecuta sudo firewall-cmd --reload
para recargar el firewall.
También necesitas ejecutar el comando desde la carpeta donde está la base de datos, es decir, /var/lib/rustdesk-server
.
También tienes los siguientes otros comandos genkeypair
, validatekeypair [public key] [secret key]
, doctor [rustdesk-server]
, reset_email_verification
y reset_2fa_verification
que se pueden usar con rustdesk-utils
.
https://github.com/rustdesk/rustdesk-server-pro/discussions/183