From 6bdbe0bd0bd90cb639a03b15f4bf8bbab9f89a2b Mon Sep 17 00:00:00 2001 From: 21pages Date: Sun, 7 Apr 2024 18:52:28 +0800 Subject: [PATCH 1/4] 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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 Date: Sun, 7 Apr 2024 22:17:40 +0800 Subject: [PATCH 2/4] Update _index.en.md --- content/self-host/rustdesk-server-pro/installscript/_index.en.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/self-host/rustdesk-server-pro/installscript/_index.en.md b/content/self-host/rustdesk-server-pro/installscript/_index.en.md index 73a4773..7e03da9 100644 --- a/content/self-host/rustdesk-server-pro/installscript/_index.en.md +++ b/content/self-host/rustdesk-server-pro/installscript/_index.en.md @@ -26,6 +26,7 @@ What it does: - If you choose Domain, it will install Nginx and Certbot, allowing the API to be available on port 443 (HTTPS) and get an SSL certificate over port 80, it is automatically renewed {{% notice note %}} +If you want to set up https for web console manually, please check this https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/faq/#setup-rustdesk-server-pro-with-dnsdomain-manually, {{% /notice %}} From 4473187e3d4e9f82a1498a04dea50f28a8c33fdb Mon Sep 17 00:00:00 2001 From: RustDesk <71636191+rustdesk@users.noreply.github.com> Date: Sun, 7 Apr 2024 22:19:50 +0800 Subject: [PATCH 3/4] Update _index.en.md --- content/self-host/rustdesk-server-pro/faq/_index.en.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) 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 6ce1722..58a9c98 100644 --- a/content/self-host/rustdesk-server-pro/faq/_index.en.md +++ b/content/self-host/rustdesk-server-pro/faq/_index.en.md @@ -154,9 +154,7 @@ If your `hbbr` does not run on the same machine of `hbbs`, or you have multiple 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. +### Setup https for web console manually 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. From 8edc07dff291445139ad4e3ed36411d4d10c9b97 Mon Sep 17 00:00:00 2001 From: RustDesk <71636191+rustdesk@users.noreply.github.com> Date: Sun, 7 Apr 2024 22:21:20 +0800 Subject: [PATCH 4/4] Update _index.en.md --- .../self-host/rustdesk-server-pro/installscript/_index.en.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/self-host/rustdesk-server-pro/installscript/_index.en.md b/content/self-host/rustdesk-server-pro/installscript/_index.en.md index 7e03da9..fef8300 100644 --- a/content/self-host/rustdesk-server-pro/installscript/_index.en.md +++ b/content/self-host/rustdesk-server-pro/installscript/_index.en.md @@ -27,7 +27,7 @@ What it does: {{% notice note %}} If you want to set up https for web console manually, please check this -https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/faq/#setup-rustdesk-server-pro-with-dnsdomain-manually, +https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/faq/#setup-https-for-web-console-manually {{% /notice %}}