From 6bdbe0bd0bd90cb639a03b15f4bf8bbab9f89a2b Mon Sep 17 00:00:00 2001 From: 21pages Date: Sun, 7 Apr 2024 18:52:28 +0800 Subject: [PATCH] FAQ: Setup RustDesk Server Pro with DNS/Domain manually Signed-off-by: 21pages --- .../rustdesk-server-pro/faq/_index.en.md | 138 ++++++++++++++++++ .../faq/images/namesilo-add-a-record.png | Bin 0 -> 6172 bytes .../faq/images/namesilo-dns-button.png | Bin 0 -> 7046 bytes .../faq/images/namesilo-dns-table.png | Bin 0 -> 7888 bytes .../installscript/_index.en.md | 5 + 5 files changed, 143 insertions(+) create mode 100644 content/self-host/rustdesk-server-pro/faq/images/namesilo-add-a-record.png create mode 100644 content/self-host/rustdesk-server-pro/faq/images/namesilo-dns-button.png create mode 100644 content/self-host/rustdesk-server-pro/faq/images/namesilo-dns-table.png diff --git a/content/self-host/rustdesk-server-pro/faq/_index.en.md b/content/self-host/rustdesk-server-pro/faq/_index.en.md index dd99035..6ce1722 100644 --- a/content/self-host/rustdesk-server-pro/faq/_index.en.md +++ b/content/self-host/rustdesk-server-pro/faq/_index.en.md @@ -153,3 +153,141 @@ If your `hbbr` does not run on the same machine of `hbbs`, or you have multiple ### Reset MFA for Admin account https://github.com/rustdesk/rustdesk/discussions/6576 + +### Setup RustDesk Server Pro with DNS/Domain manually + +If you install with [install.sh](https://github.com/rustdesk/rustdesk-server-pro/blob/main/install.sh) but the DNS/Domain step was failed, or you have installed successfully with IP but want to change to DNS/Domain, you can continue with the following steps. + +1. Buy a domain name and resolve it to your server's IP address. +* Buy a domain name from a domain registrar like GoDaddy, Namecheap, or Namesilo. +* Resolve the domain name to your server's IP address with one of the following: + - Your domain registrar's control panel (recommended) + - DNS providers, https://en.wikipedia.org/wiki/List_of_managed_DNS_providers + + For example, if you buy a domain name `rustdesk.example.com` from Namesilo and your server's IP address is 123.123.123.123, you need to open link https://www.namesilo.com/account_domains.php, click the button with tooltip `Manage dns for the domain`, add add a `A` record with the hostname name `rustdesk` and the IP address of your server. +![](/docs/en/self-host/rustdesk-server-pro/faq/images/namesilo-dns-button.png) +![](/docs/en/self-host/rustdesk-server-pro/faq/images/namesilo-add-a-record.png) +![](/docs/en/self-host/rustdesk-server-pro/faq/images/namesilo-dns-table.png) +* It takes some time for dns to take effect, go to https://www.whatsmydns.net and check whether the domain name has been resolved to your server's IP address, step 6 depends on the correct resolve result. + +2. Install nginx. +* Debian/Ubuntu: `sudo apt-get install nginx` +* Fedora/CentOS: `sudo dnf install nginx` or `sudo yum install nginx` +* Arch: `sudo pacman -S install nginx` +* openSUSE: `sudo zypper install nginx` +* Gentoo: `sudo emerge -av nginx` +* Appine: `apk add --no-cache nginx` + +Run `nginx -h` to check whether it has been installed successfully. + +3. Install Certbot +* Method 1 (Recommended): Install with snap. If snap not instaled, install snap first via following https://snapcraft.io/docs/search?q=installing+snap+on, then run `sudo snap install certbot --classic` +* Method 2: Using `python3-certbot-nginx` instead. eg: `sudo apt-get install python3-certbot-nginx` for ubuntu + +Run `certbot -h` to check successful installation. + +4. Config nginx + +There are two ways: +* If directory `/etc/nginx/sites-available` and `/etc/nginx/sites-enabled` exists, replace `` of the following command with your domain name and run it. +```bash +cat > /etc/nginx/sites-available/rustdesk.conf << EOF +server { +server_name ; + 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 +``` +Then run `sudo ln -s /etc/nginx/sites-available/rustdesk.conf /etc/nginx/sites-enabled/rustdesk.conf`. + +* If directory `/etc/nginx/sites-available` and `/etc/nginx/sites-enabled` don't exist and directory `/etc/nginx/conf.d` exists, replace `` of the following command with your domain name and run it. +```bash +cat > /etc/nginx/conf.d/rustdesk.conf << EOF +server { +server_name ; + 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 +``` + +After any of the above methods, run `cat /etc/nginx/conf.d/rustdesk.conf` to ensure the content of `rustdesk.conf` is correct. + +5. Enable firewall rules for the domain + +Run the following commands: +```bash +sudo ufw allow 80/tcp +sudo ufw allow 443/tcp +sudo ufw --force enable +sudo ufw --force reload +``` + +6. Generate SSL certificate + +Replace `` with your domain name, then run +`sudo certbot --nginx --cert-name --key-type ecdsa --renew-by-default --no-eff-email --agree-tos --server https://acme-v02.api.letsencrypt.org/directory -d ` + +If it prompts `Enter email address (used for urgent renewal and security notices)`, enter your email address. + +Finally, the content of `rustdesk.conf` should be like this: +``` +server { +server_name ; + 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//fullchain.pem; # managed by Certbot + ssl_certificate_key /etc/letsencrypt/live//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 = ) { + return 301 https://$host$request_uri; + } # managed by Certbot + + +server_name ; + listen 80; + return 404; # managed by Certbot + + +} +``` + +Here are some common errors: + +* The console prints `Successfully deployed certificate for to /etc/nginx/.../default` rather than `Successfully deployed certificate for to /etc/nginx/.../rustdesk.conf`. + +Solution: The reason may be certbot doesn't find the rustdesk.conf file, you can try one of the following solutions: + - Check the result of the step 5, run `sudo service nginx restart`. + - Copy the server configs `server{...}` which contain `` to `rustdesk.conf`, and change `location{...}` to the content below. +```bash +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` + +Solution: add another domain name to dns and change `` to it, eg: `rustdesk2.example.com`, then repeat step 1, 4, 6. + +Notice: Run `sudo service nginx restart` if you change the rustdesk.conf manually. + + diff --git a/content/self-host/rustdesk-server-pro/faq/images/namesilo-add-a-record.png b/content/self-host/rustdesk-server-pro/faq/images/namesilo-add-a-record.png new file mode 100644 index 0000000000000000000000000000000000000000..1ee4cdefb643a18f5fcd2e407778bc378309f73b GIT binary patch literal 6172 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 literal 0 HcmV?d00001 diff --git a/content/self-host/rustdesk-server-pro/faq/images/namesilo-dns-table.png b/content/self-host/rustdesk-server-pro/faq/images/namesilo-dns-table.png new file mode 100644 index 0000000000000000000000000000000000000000..3d53ffdd39cf82e81a71383315d36979697506df GIT binary patch literal 7888 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