Merge pull request #274 from Mr-Update/patch-1

Small corrections
This commit is contained in:
RustDesk 2023-09-02 22:41:05 +08:00 committed by GitHub
commit 9cc621501b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 95 additions and 105 deletions

View File

@ -19,8 +19,8 @@ We can help with lots of problems, installations and configurations. Fully manag
You get Priority #1 fast responses and service.
# SSH Access
To provide SSH access to your server for troubleshooting, please add the following key to ~/username/.ssh/authorized_keys and ensure the file has 600 permissions.
## SSH Access
To provide SSH access to your server for troubleshooting, please add the following key to ~/username/.ssh/authorized_keys and ensure the file has permissions `600`.
You may refer to this [tutorial](https://www.digitalocean.com/community/tutorials/how-to-configure-ssh-key-based-authentication-on-a-linux-server) for reference.

View File

@ -5,18 +5,18 @@ pre: "<b>1. </b>"
---
### Introduction
The RustDesk client is used on devices to connect via our RustDesk Server either open source or Pro, it is available to download from [GitHub](https://github.com/rustdesk/rustdesk/releases/latest)
The RustDesk client is used on devices to connect via our RustDesk Server either open source or Pro, it is available to download from [GitHub](https://github.com/rustdesk/rustdesk/releases/latest).
### Supported Platforms
- Microsoft Windows
- macOS
- Debian Derivatives (Ubuntu, Mint etc)
- Redhat Derivatives (Centos, Rocky etc)
- Debian Derivatives (Ubuntu, Mint, etc.)
- Redhat Derivatives (Centos, Rocky, etc.)
- Arch/Manjaro
- openSUSE
- AppImage / Flatpak
- Android
- iOS (Not support being controlled)
- iOS (not support being controlled)
- Web (1.1.9 Beta)
### Installation
@ -43,7 +43,7 @@ Please see below instructions to install for the various "flavours" of Linux, al
#### Debian Derivatives (>= 16)
```bash
```sh
# please ignore the wrong disk usage report
sudo apt install -fy ./rustdesk-<version>.deb
```
@ -69,7 +69,7 @@ sudo zypper install --allow-unsigned-rpm ./rustdesk-<version>-suse.rpm
Install apk from our GitHub more info can be found on the Android page.
### Usage
Once installed (or run as a temporary executable) RustDesk will connect to the Public servers. You will see a message at the bottom saying (1) "Ready, For faster connection, please setup your own server.". In the Top left you will see your (2) ID, (3) One Time Password and on the (4) Right a box for you to connect to another computer if you know their ID.
Once installed (or run as a temporary executable) RustDesk will connect to the Public servers. You will see a message at the bottom saying (1) "Ready, For faster connection, please set up your own server". In the Top left you will see your (2) ID, (3) One Time Password and on the Right a (4) box for you to connect to another computer if you know their ID.
![image](/docs/en/client/images/client.png)
@ -79,7 +79,7 @@ Under Settings you will find:
- General - Service Control, Theme, Hardware Codec, Audio, Recording and Language
- Security - Permissions for someone taking control, Password options, ability to change your ID and Advanced Security Settings
- Network - Set your own server settings here and proxy
- Display - Control the display settings for remote sessions and other default options, sync clipboard etc
- Display - Control the display settings for remote sessions and other default options, sync clipboard, etc.
- Account - This can be used in conjunction with the Pro Server to sign into the API
- About - Shows information about the software.
@ -106,6 +106,6 @@ If you manually setup a client, you can retrieve the `RustDesk2.toml` (in the us
- `--set-id` can be used to set an ID, please note IDs should start with a letter.
- `--silent-install` can be used to install RustDesk silently on Windows.
Additional Advanced parameters can be found [here](https://github.com/rustdesk/rustdesk/blob/bdc5cded221af9697eb29aa30babce75e987fcc9/src/core_main.rs#L242)
Additional Advanced parameters can be found [here](https://github.com/rustdesk/rustdesk/blob/bdc5cded221af9697eb29aa30babce75e987fcc9/src/core_main.rs#L242).
{{% children depth="1" showhidden="true" %}}

View File

@ -16,7 +16,7 @@ Make sure you have quit all running RustDesk. Also make sure you quit the RustDe
### Allow RustDesk run
| Unlock to change | Click on "App Store and identified developers" |
| ---- | ---- |
| --- | --- |
| ![](/docs/en/client/mac/images/allow2.png) | ![](/docs/en/client/mac/images/allow.png) |
### Enable permissions
@ -30,16 +30,16 @@ Please follow this
It seems no quick fix, we need to fix together with our Flutter version.
{{% /notice %}}
To capture screen, you need to grant `RustDesk` **Accessibility** permission and **Screen Recording** permission. RustDesk will guide you to the settings window.
To capture screen, you need to grant RustDesk **Accessibility** permission and **Screen Recording** permission. RustDesk will guide you to the settings window.
| RustDesk window | Settings window |
| ---- | ---- |
| --- | --- |
| ![](/docs/en/client/mac/images/acc.png) | ![](/docs/en/client/mac/images/acc3.png?v2) |
If you have enabled it in the settings window, but RustDesk still warns. Please remove RustDesk from the settings windows by the `-` button, and click on `+` button, select RustDesk in `/Applications`.
| `-` and `+` button | Select RustDesk |
| ---- | ---- |
| --- | --- |
| ![](/docs/en/client/mac/images/acc2.png) | ![](/docs/en/client/mac/images/add.png?v2) |
Please copy above steps for **Screen Recording** permission.

View File

@ -12,7 +12,7 @@ Or you can go further but at your own risk.
It is possible to build RustDesk Android on **Windows** and **macOS** but this instruction is still under active development.
{{% /notice %}}
# Introduction
## Introduction
Here you will learn how to prepare your environment to such an extent that you will be able to successfully build the application and enable yourself to work on the code through, for example, Android Studio.
@ -22,19 +22,19 @@ It is possible to build, run end edit Android version on Windows, but it require
By "patched" I mean directory in state like before running `flutter build` on Linux machine.
# Assumptions
## Assumptions
- You are using **Ubuntu 20.04** or later (due to fact that this tutorial is based on this version)
- You have working internet connection
- You already installed [**Flutter**](https://docs.flutter.dev/get-started/install/linux), [**vcpkg**](https://github.com/microsoft/vcpkg) and [**Rust**](https://www.rust-lang.org/tools/install)
- You cloned [RustDesk repository](https://github.com/rustdesk/rustdesk)
- You know what are you doing
# System
## System
This part of tutorial is based on clean **Ubuntu 20.04** instance with prerequisites like **Flutter**, **Rust** and **vcpkg** already installed and configured.
If you missing any of these prerequisites, obtain and configure them, then return back here.
# Instruction
## Instruction
This is step-to-step instruction.
## Generating Bridge 🌉
@ -155,7 +155,7 @@ cargo install cargo-ndk
Now it's time to run `ndk_arm64.sh`, this script contains code that build's Rust for Flutter, it requires `NDK` in version `r23c`.
You could download it [here](https://dl.google.com/android/repository/android-ndk-r23c-linux.zip), you'll be required to install it manually or follow [this](https://developer.android.com/studio/projects/install-ndk) instruction. This file is quite heavy so this process might take a while, it mostly depends on your internet connection.
You could download it [here](https://dl.google.com/android/repository/android-ndk-r23c-linux.zip), you'll be required to install it manually or follow this [instruction](https://developer.android.com/studio/projects/install-ndk). This file is quite heavy so this process might take a while, it mostly depends on your internet connection.
Just remember to set **ANDROID_NDK_HOME** variable and check if it's valid.

View File

@ -17,10 +17,10 @@ Desktop versions use [Sciter](https://sciter.com/) for GUI, please download Scit
- Install [vcpkg](https://github.com/microsoft/vcpkg), and set `VCPKG_ROOT` env variable correctly
- Windows: vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static aom:x64-windows-static
- Linux/macOS: vcpkg install libvpx libyuv opus aom
- Windows: `vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static aom:x64-windows-static`
- Linux/macOS: `vcpkg install libvpx libyuv opus aom`
- run `cargo run`
- Run `cargo run`
## How to build on Linux
@ -82,4 +82,4 @@ VCPKG_ROOT=$HOME/vcpkg cargo run
### Change Wayland to X11 (Xorg)
RustDesk does not support Wayland. Check [this](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/) to configuring Xorg as the default GNOME session.
RustDesk does not support Wayland. Check this [guide](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/) to configuring Xorg as the default GNOME session.

View File

@ -32,19 +32,18 @@ hbbs.example.com:21116
1. Use the steps [above](/docs/en/self-host/client-configuration/#manual-config) to configure RustDesk Client on a Device
2. Using the above machine go to Settings then Network and unlock
3. Click on "Export Server Config" icon
4. Paste the copied string into notepad or similar
3. Click on `Export Server Config`
4. Paste the copied string into Notepad or similar
5. Go to new client, copy the above to clipboard
6. Go to Settings then Network in RustDesk Client, unlock and click "Import Server Config"
6. Go to Settings then Network in RustDesk Client, unlock and click `Import Server Config`
7. It will automatically paste the settings in
8. click Apply
8. Click `Apply`
### Automatic Config
The easiest way to setup automatically is using deployment scripts found [here](https://rustdesk.com/docs/en/self-host/client-deployment/)
The easiest way to setup automatically is using deployment scripts found [here](https://rustdesk.com/docs/en/self-host/client-deployment/).
You can fix the Password is required and use a reverse base64 string in the format `{"host":"HOSTADDRESS","key":"HOSTKEY","api":"http://HOSTADDRESS:21114"` to automatically configure the clients, this is available automatically with RustDesk Server Pro via the console.
You can fix the Password is required and use a reverse base64 string in the format `{"host":"HOSTADDRESS","key":"HOSTKEY","api":"http://HOSTADDRESS:21114"}` to automatically configure the clients, this is available automatically with RustDesk Server Pro via the console.
You can also use the steps from [above](/docs/en/self-host/client-configuration/#setup-using-import-or-export) to export the string then reverse it using [this site](https://string-functions.com/reverse.aspx).

View File

@ -6,9 +6,9 @@ pre: "<b>2.4. </b>"
You can deploy using a number of methods, some are covered in [Client Configuration](/docs/en/self-host/client-configuration/).
Alternatively you can use mass deployment scripts with your RMM, Intune etc., the ID and password is output by the script, you should collect this, or split this off into different scripts to collect the ID and password.
Alternatively you can use mass deployment scripts with your RMM, Intune, etc. The ID and password are output by the script. You should collect this or split it into different scripts to collect the ID and password.
The permanent password can be changed from random to one you prefer using by changing the content inside `()` after `rustdesk_pw` to your preferred password for powershell and the corresponding line for any other platform.
The permanent password can be changed from random to one you prefer using by changing the content inside `()` after `rustdesk_pw` to your preferred password for PowerShell and the corresponding line for any other platform.
### PowerShell
@ -16,10 +16,10 @@ The permanent password can be changed from random to one you prefer using by cha
$ErrorActionPreference= 'silentlycontinue'
# Assign the value random password to the password variable
$rustdesk_pw=(-join ((65..90) + (97..122) | Get-Random -Count 12 | % {[char]$_}))
$rustdesk_pw=(-join ((65..90) + (97..122) | Get-Random -Count 12 | % {[char]$_}))
# Get your config string from your Web portal and Fill Below
rustdesk_cfg="configstring"
rustdesk_cfg="configstring"
################################### Please Do Not Edit Below This Line #########################################
@ -33,18 +33,18 @@ if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdenti
$rdver = ((Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RustDesk\").Version)
if($rdver -eq "1.2.2")
if($rdver -eq "1.2.2")
{
write-output "RustDesk $rdver is the newest version"
exit
}
If (!(Test-Path c:\Temp)) {
New-Item -ItemType Directory -Force -Path c:\Temp > null
If (!(Test-Path C:\Temp)) {
New-Item -ItemType Directory -Force -Path C:\Temp > null
}
cd c:\Temp
cd C:\Temp
powershell Invoke-WebRequest "https://github.com/rustdesk/rustdesk/releases/download/1.2.2/rustdesk-1.2.2-x86_64.exe" -Outfile "rustdesk.exe"
Start-Process .\rustdesk.exe --silent-install -wait
@ -94,27 +94,26 @@ REM Assign the value random password to the password variable
set rustdesk_pw=
REM Get your config string from your Web portal and Fill Below
set rustdesk_cfg="configstring"
set rustdesk_cfg="configstring"
REM ############################### Please Do Not Edit Below This Line #########################################
if not exist C:\TEMP\ md C:\TEMP\
cd c:\temp\
if not exist C:\Temp\ md C:\Temp\
cd C:\Temp\
curl -L "https://github.com/rustdesk/rustdesk/releases/download/1.2.2/rustdesk-1.2.2-x86_64.exe" -o rustdesk.exe
rustdesk.exe --silent-install
$ServiceName = 'Rustdesk'
$ServiceName = 'RustDesk'
$arrService = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
cd "c:\Program Files\RustDesk\"
cd "C:\Program Files\RustDesk\"
for /f "delims=" %i IN ('rustdesk.exe --get-id ^| more') DO set rustdesk_id=%i
net stop rustdesk > null
RustDesk.exe --config %rustdesk_cfg%
net start rustdesk > null
RustDesk.exe --password %rustdesk_pw%
@ -137,7 +136,7 @@ echo "..............................................."
rustdesk_pw=$(openssl rand -hex 4)
# Get your config string from your Web portal and Fill Below
rustdesk_cfg="configstring"
rustdesk_cfg="configstring"
################################### Please Do Not Edit Below This Line #########################################
@ -216,7 +215,7 @@ open -n /Applications/RustDesk.app
rustdesk_pw=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 8 | head -n 1)
# Get your config string from your Web portal and Fill Below
rustdesk_cfg="configstring"
rustdesk_cfg="configstring"
################################### Please Do Not Edit Below This Line #########################################

View File

@ -3,23 +3,23 @@ title: Tactical RMM
weight: 100
---
## To Use Tactical RMM with RustDesk you need to the the following.
## To Use Tactical RMM with RustDesk, you must do the following
1. Install your own Tactical RMM Server, following their [official docs](https://docs.tacticalrmm.com/) and open ports.
2. Create the following scripts (all are powershell).
2. Create the following scripts (all are PowerShell).
3. Create a [URL Action](https://docs.tacticalrmm.com/functions/url_actions/).
4. Create [custom fields](https://docs.tacticalrmm.com/functions/custom_fields/) for the RustDesk ID and password.
5. Create [collector tasks](https://docs.tacticalrmm.com/functions/automated_tasks/#collector-tasks).
## Install Script Replace IPADDRESS and KEY
```
```ps
$ErrorActionPreference= 'silentlycontinue'
If (!(Test-Path c:\Temp)) {
New-Item -ItemType Directory -Force -Path c:\Temp > null
If (!(Test-Path C:\Temp)) {
New-Item -ItemType Directory -Force -Path C:\Temp > null
}
cd c:\Temp
cd C:\Temp
powershell Invoke-WebRequest "https://github.com/rustdesk/rustdesk/releases/download/1.2.2/rustdesk-1.2.2-x86_64.exe" -Outfile "rustdesk.exe"
Start-Process .\rustdesk.exe --silent-install -wait
@ -53,7 +53,7 @@ net start rustdesk
## RustDesk Get ID (Collector Script needs Custom Agent Field)
```
```ps
$ErrorActionPreference= 'silentlycontinue'
cd $env:ProgramFiles\RustDesk\
@ -61,10 +61,10 @@ cd $env:ProgramFiles\RustDesk\
```
## RustDesk Set and Get Password (Collector Script needs Custom Agent Field)
```
```ps
$ErrorActionPreference= 'silentlycontinue'
$confirmation_file = "C:\program files\RustDesk\runonce.txt"
$confirmation_file = "C:\Program Files\RustDesk\runonce.txt"
if ([System.IO.File]::Exists($confirmation_file)) {
echo "Confirmation file exists"
@ -81,21 +81,21 @@ if($ProcessActive -ne $null)
stop-process -ProcessName rustdesk -Force
}
$rustdesk_pw = (-join ((65..90) + (97..122) | Get-Random -Count 12 | % {[char]$_}))
$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
New-Item $confirmation_file > null
}
```
## RustDesk URL Action
```
rustdesk://connection/new/{{agent.rustdeskid}}?password={{agent.rustdeskpwd}}
```
```
## Add Custom Agent Fields
`rustdeskid Type = Text` </br>
`rustdeskpwd Type = Text`

View File

@ -9,7 +9,7 @@ This tutorial is based on latest DSM v6 and v7.
### Install Docker
| Open package manager | Install Docker |
| Open Package Center | Install Docker |
| --- | --- |
| ![](/docs/en/self-host/rustdesk-server-oss/synology/images/package-manager.png) | ![](/docs/en/self-host/rustdesk-server-oss/synology/images/docker.png) |
@ -29,7 +29,7 @@ Click on above "Advanced Settings".
- Enable auto-restart
![](/docs/en/self-host/rustdesk-server-oss/synology/images/auto-restart.png)
- Enable "Use the same network as Docker host", for more about host net, please [check](/docs/en/self-host/rustdesk-server-oss/docker/#net-host)
- Enable "Use the same network as Docker Host", for more about host net, please [check](/docs/en/self-host/rustdesk-server-oss/docker/#net-host)
![](/docs/en/self-host/rustdesk-server-oss/synology/images/host-net.png)
- Mount a host directory (e.g. `/home/rustdesk/`) to `/root`, hbbs will generate some files (database and `key` files) in this directory which need to be persistent over reboots.

View File

@ -3,7 +3,7 @@ title: Windows & PM2 or NSSM
weight: 20
---
## A cross roads
## A crossroads
You now either have two choices, you can either use PM2 (easier) or NSSM (a bit harder) to start the RustDesk server
There are some benefits to using NSSM:
- Backwards compatibility with older Windows (Windows Server 2008 R2/Windows 7 and earlier although untested).
@ -14,7 +14,7 @@ There are some benefits to using NSSM:
While the benefits of PM2 include:
- Good idea if you run the server on the same computer as your main work computer
- You logon regularly to the user that created the rustdesk startup entry
- You logon regularly to the user that created the RustDesk startup entry
- More user friendly
## Installing using NSSM
@ -27,7 +27,6 @@ contents of win64 folder). It is also best practice to move the binary of NSSM i
thus it is best to tuck it away in Program files) directory of your Installation drive (Usually the C drive).
It is also advisable to add the path (such as `C:\Program Files\NSSM`) to the path variable.
### Checking if NSSM is installed properly
If you've done everything correctly the folder `C:\Program Files\NSSM` (in this example I use the C:
drive but you can use whatever drive you installed Windows to or whatever path you desire) should

View File

@ -3,16 +3,16 @@ title: RustDesk Server Layered Security Model
weight: 100
---
Kindly written up by [@I-Am-Skoot](https://github.com/I-Am-Skoot/RustDeskNPMDocker/commits?author=I-Am-Skoot)
Kindly written up by [@I-Am-Skoot](https://github.com/I-Am-Skoot/RustDeskNPMDocker/commits?author=I-Am-Skoot).
## Layers
- [RustDesk](https://github.com/rustdesk/rustdesk) Remote Support Tool
- [NPM](https://nginxproxymanager.com/) Proxy Manager Tool
- [Docker](https://www.docker.com) Containerization Tool
- Firewall Tool
- Firewall Tool
#### Assumptions
This example is an All in One for hosting just RustDesk services only. This can be expanded to a more flexible solution by splitting the NPM into it's own Docker-Compose.
This example is an All in One for hosting just RustDesk services only. This can be expanded to a more flexible solution by splitting the NPM into it's own Docker Compose.
- DMZ network 192.168.1.0/24
- NPM (External): 192.168.1.250
- LAN Network: 10.0.0.0/24
@ -25,20 +25,19 @@ This example is an All in One for hosting just RustDesk services only. This can
- Hostname: uniquehostname (Change This)
- DNS Name: rustdesk.example.com
Make modifications to the examples as needed
Make modifications to the examples as needed.
### Prepare Docker:
You must have docker already installed this guide does not go into the specifics of that.
### Prepare Docker
You must have Docker already installed this guide does not go into the specifics of that.
You will need to create a network for the RustServer Backend and the DMZ.
For each application you use with the NPM (NGINX Proxy manager) you should have a dedicated backend network to isolate it.
For each application you use with the NPM (Nginx Proxy Manager) you should have a dedicated backend network to isolate it.
```
docker network create \
--driver=bridge \
--subnet=192.168.254.0/29 RSBackend
docker network create \
--driver=ipvlan --subnet=192.168.1.0/24 \
--gateway=192.168.1.1 \
@ -55,13 +54,11 @@ Configure the following Port forwarding/NAT ports from your public IP to the NPM
- 21118 => 21118 TCP
- 21119 => 21119 TCP
- 443 => 443 TCP # If you want to use SSL
### Setup docker-copose
### Setup Docker Compose
This will start a container with NPM and the correct networks.
Docker-Compase.yaml
Docker-Compose.yaml
```
version: '3.5'
services:
@ -119,25 +116,23 @@ Configure Stream Hosts for the following Ports:
- 21119 => 192.168.254.3:21119 TCP
- 80 => 127.0.0.1:8080 TCP # catches local traffic
Configure Proxy Host
Configure Proxy Host:
- Domain Name: rustdesk.example.com
- Scheme: http
- Forward Hostname / IP: 192.168.254.2
- Forward Port: 21114
- Block Common Exploits: Checked
- Optional: Configure SSL **DO NOT REQUIRE - Client needs to be able to communicate without ssl.**
- Optional: Configure SSL **DO NOT REQUIRE - Client needs to be able to communicate without SSL.**
### Setup RustDesk Server
Connect to Server interface http://rustdesk.example.com or https:// if you have configured SSL for web interface.
Connect to Server interface http://rustdesk.example.com or https://rustdesk.example.com if you have configured SSL for web interface.
### Setup RustDesk Client
Configure the client
Configure the client:
- ID Server: rustdesk.example.com
- Relay Server: rustdesk.example.com
- API Server: http://rustdesk.example.com (use HTTPS if you have configured SSL)
- API Server: http://rustdesk.example.com (use HTTPS if you have configured SSL)
- Key: {Server Key Here}
##
## End Result
Your solution will be accessible externally through the Proxy manager. You will have isolation of your RustDesk Servers from other systems (Especially if you use a split configuration system and have other applications / sites behind a common NPM)
Your solution will be accessible externally through the Proxy manager. You will have isolation of your RustDesk Servers from other systems. Especially if you use a split configuration system and have other applications / sites behind a common NPM.

View File

@ -104,11 +104,11 @@ write-output "RustDesk $rdver is the newest version"
exit
}
If (!(Test-Path c:\Temp)) {
New-Item -ItemType Directory -Force -Path c:\Temp > null
If (!(Test-Path C:\Temp)) {
New-Item -ItemType Directory -Force -Path C:\Temp > null
}
cd c:\Temp
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
@ -227,30 +227,28 @@ If the script installed Nginx then remove using:
sudo apt remove nginx
```
## How can I remove devices from the device list in the web console?
## How can I remove devices from the device list in the web console?
Disable and then delete will now be available.
## How Can I update RustDesk Wth Powershell?
## How can I update RustDesk with PowerShell?
```ps
$ErrorActionPreference= 'silentlycontinue'
$rdver = ((Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RustDesk\").Version)
if($rdver -eq "1.2.2")
if($rdver -eq "1.2.2")
{
write-output "RustDesk $rdver is the newest version"
write-output "RustDesk $rdver is the newest version."
exit
}
If (!(Test-Path c:\Temp)) {
New-Item -ItemType Directory -Force -Path c:\Temp > null
If (!(Test-Path C:\Temp)) {
New-Item -ItemType Directory -Force -Path C:\Temp > null
}
cd c:\Temp
cd C:\Temp
powershell Invoke-WebRequest "https://github.com/rustdesk/rustdesk/releases/download/1.2.2/rustdesk-1.2.2-x86_64.exe" -Outfile "rustdesk.exe"
Start-Process .\rustdesk.exe --silent-install -wait
```

View File

@ -9,7 +9,7 @@ RustDesk Server Pro has more features compared to the open source version.
- OIDC, LDAP, 2FA (email verification)
- Address book
- Rename
- Log management (Connection, file transfer, alarm etc)
- Log management (Connection, file transfer, alarm, etc.)
- Device management
- Settings sync
- Access control

View File

@ -62,15 +62,15 @@ chmod +x backup.sh
```
You now have options.
Run the backup script to create a one time backup `./backup.sh`
Or /
Run the backup script `--schedule` (full command would be `./backup.sh --schedule` this will schedule the backup script to run nightly and autorotate.
Run the backup script `./backup.sh` to create a one time backup.
Or run the backup script `./backup.sh --schedule`. This will schedule the backup script to run nightly and autorotate.
To Restore do the following:
```
wget https://raw.githubusercontent.com/rustdesk/rustdesk-server-pro/main/restore.sh
chmod +x
```
Copy the backup file into the same folder as the restore.sh file and then run
`./restore.sh`
Copy the backup file into the same folder as the restore.sh file and then run `./restore.sh`.
This will restore your server to how it was prior, you will need to revoke your [license](/docs/en/self-host/rustdesk-server-pro/license) to move it to the restored server.

View File

@ -11,15 +11,15 @@ Strategy is a tool for RustDesk administrators to update the security options of
You can create a new strategy by clicking the `+` button and perform various actions on the strategy by hovering over it and clicking the menu.
In the pop-up menu, you can choose to `Enable` or `Disable` the strategy, `Rename`, `Duplicate`, or `Delete` it. Additionally, you can click `Edit Devices` to modify the devices applied to that strategy or click `Edit Users` to modify the users applied to that strategy.
In the pop-up menu, you can choose to `Enable` or `Disable` the strategy, `Rename`, `Duplicate` or `Delete` it. Additionally, you can click `Edit Devices` to modify the devices applied to that strategy or click `Edit Users` to modify the users applied to that strategy.
On the right side of the strategy menu, you can see the number of devices actually applied to the strategy, taking into account the priority of the strategy.
![](/docs/en/self-host/rustdesk-server-pro/strategy/images/strategy_menu.png)
### Device Strategy and User Strategy
Each device can only be managed by one strategy, and device strategies take priority over user strategies. User strategies are responsible for managing all devices under the user that are not assigned a specific strategy.
Each device can only be managed by one strategy, and device strategies take priority over user strategies. User strategies are responsible for managing all devices under the user that are not assigned a specific strategy.
### Edit Devices