Help center support eXpress
We've collected answers to popular questions to make eXpress easy and convenient to use. Didn't find the answer to your question? Contact our support team.
- Welcome to eXpress
- eXpress Support
- Introducing eXpress & Glossary
- Installation & Updates & Requirements
- eXpress & ETS Apps
- Updates & Release Notes
- Network & Time Sync & Environment & Certificates
- Language & Spell Checking
- Android App
- iOS/iPadOS App
- Aurora App
- Windows Desktop App
- macOS Desktop App
- Linux Desktop App
- Web App
- Outlook Add-In for Conferences
- Server-Side Software
- Troubleshooting App Installation, Updates, and Operation
- Registering & Logging In
- User Profile
- Chats, Channels & Threads
- Contacts
- Tags & Tabs
- Files
- Calls & Conferences
- Push Notifications & Counters
- Fixing Background Work on Mobile
- Bots & SmartApps
- Diagnostics, Logs, and Cache
- Admin Panel
Network & Time Sync & Environment & Certificates
- Network Configuration
- Where App Traffic Goes
- Proxy Server
- VPN
- Browser Restrictions in the Web App
- Time Synchronization Setup
- Remote Desktop & Virtual Desktop
- Calls and Conferences via VDI/RDP
- Certificate Management
Network Configuration
The app on client devices needs access to network resources:If your devices or network are managed by an organization, contact your organization's support or system administrator for help with access.
For Administrators: About Network Accesses for Clients & Servers, Traffic Inspection
- If traffic inspection or filtering systems (NGFW, DPI, proxy) are running in the infrastructure, allow WebSocket connections in them.
- You may need to configure VPN tunnels, WAF rules, or proxy servers.
- The list of required accesses may expand depending on the application architecture and the network infrastructure of the organization. Before deployment, consult the project documentation and check the connection in an isolated environment.
Common Issues with Traffic Inspection
| What is configured | How it manifests | What to do |
|---|---|---|
| NGFW or DPI drops long-lived connections | The app periodically shows Connecting, messages arrive with delay, the session drops | Allow WebSocket, increase the idle TCP session timeout for eXpress traffic |
| TLS inspection with certificate substitution (MITM), including on DLP systems | Connection errors and certificate errors, on Android — SSL error | Add eXpress addresses to inspection exclusions or install the corporate root certificate on devices — learn more. The Android app uses only built-in and system certificates |
| WAF in front of the corporate server | Some app requests are rejected with server errors | Configure WAF rules for the app API, allow WebSocket upgrade |
| Proxy server with authentication | The app doesn't connect | The app does not support proxies with username and password — learn more |
| Media traffic is routed through inspection | Calls fail to establish or drop | Exclude connections to the Media server from inspection. Media traffic is end-to-end encrypted and cannot be inspected. |
For Administrators: Network Requirements
Client-Server Channel Requirements
| Activity | Consumed Traffic |
|---|---|
| Messages | 2 kbit/s per user |
| Files | 100 kbit/s per user |
Call and Conference Requirements
Bandwidth calculation for calls and conferences:
| Traffic | Formula |
|---|---|
| Incoming traffic | 1.5 Mbps × number of participants |
| Outgoing traffic | Depends on the call type:
|
Minimum Requirements for SIP Voice Calls: 16 kbps per participant.
Recommended Network Ping
| Activity | Recommended Ping |
|---|---|
| Calls and conferences | No more than 100 ms |
| Messages and files | No more than 150 ms |
If ping significantly exceeds these values, the app might not be able to connect to the server — for example, when working over satellite internet.
Client Device Bandwidth Requirements
| Platform | Average Traffic |
|---|---|
| PC | Outgoing: 1.5 mbit/s Incoming: 2 mbit/s |
| Mobile Devices | Outgoing: 1.5 mbit/s Incoming: 1.6 mbit/s |
Does the App Work in Whitelist Mode on Russian Mobile Networks?
- For RTSandLite— yes, as these servers are included in the whitelists.
- For CTS,ETS/eCTS— check with your organization's support.
Where App Traffic Goes
The app uses several independent connections. Based on what exactly stopped working, you can determine which access is blocked.
| What doesn't work | Which connection is responsible | What to check |
|---|---|---|
| The app doesn't connect, endless Connecting, chats and contacts don't update | Client → corporate server CTS /eCTS via HTTPS and WebSocket |
Whether the traffic inspection system blocks WebSocket; in the browser — access to the local network |
| Chats and files work, but calls and conferences don't: the call doesn't connect, there is no audio or video, participants get dropped | Client → Media server, separate ports, primarily via UDP | Whether the media server ports are open including UDP; whether UDP passes through the VPN tunnel — see VPN |
| The web app doesn't open | Client → web client server via HTTPS | Availability of the web app address (https://corp.express/ or your organization's address) |
| Files from external users don't arrive | Client → cloud file storage for public users | Access to the cloud — learn more |
| Captcha verification fails when requesting an SMS code | Client → Captcha services | Access to verification services, see the access list |
| Links to chats and calls don't open | Client → short link service | Access to the link service (or to your own link server) |
| The desktop app can't find updates | Client → update server | Access to the update server (for the ETS app — to your own) |
For Administrators: Web App and Front CTS / Back CTS Topology
CTS
ETS
eCTS
The web app exchanges messages and media data directly with the corporate server and the Media server. Therefore, the web application needs exactly the same network access as the desktop application, plus access to the web client address.
In a split deployment, the corporate server is published externally through Front CTS, and the media service is hosted next to it. Therefore, the client always goes to Front for media data; these requests do not go to the closed network segment.
Proxy Server
The app supports operation through an open proxy server configured in the network properties on a mobile device and a PC. The desktop app uses the system proxy settings of the operating system. Settings specified inside the browser and group proxy policies for browsers do not apply to the desktop app.
Can I Use Proxies That Require Login?
The app does not support proxy servers with authentication. If your network uses such a proxy, contact your network administrator. Possible solutions: use this proxy as a system proxy, set up an exception for eXpress traffic, or use an open proxy.
Open Proxy Server Configuration for Desktop App
- Close the desktop app.
- Launch the app via terminal or command line:
"app_path" "--proxy-server=IP:port" - Create a shortcut that launches the desktop app with a proxy.
For example, on Windows:"C:\Program Files\eXpress\eXpress.exe" "--proxy-server=192.168.1.1:8080"
How to Launch the Desktop App Bypassing the Proxy?
Launch the app with the --no-proxy-server parameter if the eXpress servers are on the internal network and no proxy is needed to access them. With it, the app does not use system proxy settings and connects to servers directly.
"C:\Program Files\eXpress\eXpress.exe" --no-proxy-server
This same method can be used to check whether the proxy is to blame. If with this parameter the app connects immediately, but without it remains in the Connecting... state, the cause is proxying — check the exception list.
To the Administrator: What Proxy Settings the Desktop App Uses and How to Set Exceptions on Windows
The desktop application takes proxy settings from Windows system parameters; it does not read browser settings. If exceptions for eXpress servers are specified only in the browser proxy group policy, the app will not see them and will continue to access the servers through the proxy. Set these exceptions in Windows system proxy settings: Internet Options > the Connections tab > LAN settings > Advanced, in the field Do not use proxy server for addresses beginning with.
What Windows Parameters Does the App Read?
The parameters are taken from the registry branch HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings.
Value ProxyEnable |
What the app uses |
|---|---|
| 1 — proxy is set manually | Proxy address from ProxyServer and exception list from ProxyOverride. The automatic configuration script AutoConfigURL is not applied in this case. |
| 0 — proxy is not set manually | Automatic configuration script (PAC file) from AutoConfigURL if it is specified. |
ProxyEnable.How to Write an Exception so That It Works.
The app compares the exception against the name of the node it accesses. It must either match this name exactly, or be a subdomain mask with an asterisk.
| Record in the exceptions list | What does it cover? | Will work for the node cts.example.ru |
|---|---|---|
cts.example.ru |
Only the node with this name | Yes |
*.example.ru |
All nodes in the domain example.ru |
Yes |
example.ru |
Only the node named example.ru is covered; subdomains are not. |
Not available |
cts |
Only the node named cts |
Not available |
cts does not cover the node cts.example.ru, and the record example.ru does not cover its subdomains. Specify full names of eXpress servers or a mask of the form *.example.ru.If the Exceptions Are Set Correctly, but the App Still Does Not Connect.
Check the following.
- Does the list of exceptions at the time of the failure match the one you see after the connection is restored? If multiple policies with proxy settings are applied to a computer, immediately after startup the policy that doesn't have the required exceptions may take effect. Later, the correct one will override it. Capture the proxy settings at the exact moment when the app cannot connect.
- Is the certificate being replaced by an antivirus or traffic inspection tool? When substitution occurs, the app does not trust the connection, even if the proxy exceptions are set correctly. See. “Manage certificates”.
- Isn't the list of addresses allowed on the proxy too narrow? If only CTS server addresses are open, the app will connect, but some features will not work — for example, link preview. The list of required accesses is in the network access list.
- Does the proxy require authentication? The app does not support a proxy with a login and password prompt: you cannot connect through such a proxy, see the question above.
To verify that the issue is indeed the proxy, launch the application with the parameter --no-proxy-server.
VPN
When you connect to the network through VPN services, messages may arrive with a delay, calls may drop, and the app may not connect to the server. Use the app without a VPN, or add eXpress to your VPN client's list of exceptions (split tunneling). For corporate VPN client settings, check with your organization's support.
For Administrators: What Are the Limitations When Routing All eXpress Traffic Through a VPN Tunnel?
eXpress has no technical restrictions on using VPN. However, the application's operation depends on the bandwidth of the VPN channel and the specifics of network protocols. If you route all traffic through VPN, including media data, call quality may drop. Try not to route traffic through the VPN.
What Must Reach the Servers Through the Tunnel
If traffic is still routed through the VPN, the tunnel must carry connections to both the corporate server over HTTPS and the Media server, including UDP. If only HTTPS is allowed through, messaging will work, but calls won't. For the list of ports, see the list of network accesses.
Common Reasons Why Media Traffic Does Not Pass Through VPN
| Reason | What to do |
|---|---|
| The tunnel works only over TCP (for example, a TLS tunnel on port 443), UDP is not transmitted | Either route media traffic outside the tunnel, or enable the Allow TCP ICE setting in the VoEx section of the admin panel — learn more. Media quality over TCP is lower than over UDP. |
| The UDP port range of the media server is not fully open | Open the entire range — it is used for SRTP streams |
| Direct peer-to-peer (p2p) connection between clients is blocked, and TURN is not used | Enable the Use relay ICE candidates only setting in the VoEx section — all media traffic will go through the TURN server |
| Reduced MTU in the tunnel, UDP packet fragmentation | Check MTU and MSS clamping settings on the VPN gateway. Symptom: the call connects, but audio and video break up or work only in one direction |
| Double NAT (corporate NAT over provider NAT, CGNAT) | Verify correct NAT IP-to-IP mapping for the Media server and external addresses in TURN/STUN settings |
Browser Restrictions in the Web App
The web app operates according to browser rules; operating system rules do not apply to it. Even if all network accesses are open, the browser may block some connections. The most common restriction is local network access.
What Is Local Network Access and Why Does It Interfere?
Modern browsers consider it dangerous when a website from the internet accesses devices inside your network and require separate permission for this. The rule is triggered by the destination address. If a site is opened at a public address but accesses a private address (10.x.x.x, 172.16–31.x.x, 192.168.x.x), localhost , or a domain in the .local zone, the browser shows a permission request. If permission is denied, the browser terminates the connection.
For eXpress, this looks like this: the web app is opened via a public address (for example, https://corp.express/), while the corporate server and Media server are located in your organization's network. This leads to the following typical symptoms:
- everything works in the office or from home, but not when the corporate VPN is enabled: over VPN, server addresses become private;
- chats work, but calls and conferences don't connect or have no audio or video;
- the web app doesn't connect at all and endlessly shows “Connecting”;
- the desktop app on the same computer and in the same network works fine.
How to Grant Local Network Access Permission
Wait for the browser prompt when opening the web app and click Allow. If the prompt was already denied, grant the permission manually and reload the page:
| Browser | How to grant permission |
|---|---|
| Google Chrome, Chromium, Microsoft Edge, Yandex Browser, Vivaldi, Opera | Click the site settings icon to the left of the address bar > Site settings (in Microsoft Edge — Permissions for this site) > allow Local network (in Yandex Browser — Access to local network) > reload the page |
| Mozilla Firefox | Click the padlock icon to the left of the address bar > Permissions > allow Local network devices. All granted permissions are listed under Settings > Privacy & Security > Permissions |
| Apple Safari | There is no separate site prompt. On macOS, check the system permission: System Settings > Privacy & Security > Local Network |
Other Browser Settings That Affect Operation
- Check other browser permissions — microphone, camera, notifications, clipboard, autoplay in Safari — and ad-blocking extensions: they are listed in the system requirements for the web app.
- Do not use incognito mode or private windows for regular work: some permissions and session data are not preserved in them.
For Administrators: Centralized Local Network Access Deployment (Policies)
If the user declines the browser prompt, the refusal is remembered, and no error message will appear. To avoid depending on each user's response, distribute the permission via group policies.
Chromium-Based Browsers
The policy is called LocalNetworkAccessAllowedForUrls, type — list of strings. It contains the source addresses, that is, the eXpress web app address. You don’t need to add server addresses.
| Browser | Windows: registry key | Linux: policies directory |
|---|---|---|
| Google Chrome | HKLM\SOFTWARE\Policies\Google\Chrome\LocalNetworkAccessAllowedForUrls |
/etc/opt/chrome/policies/managed/ |
| Chromium | HKLM\SOFTWARE\Policies\Chromium\LocalNetworkAccessAllowedForUrls |
DEB or RPM package (Astra Linux, RED OS, and others): /etc/chromium/policies/managed/⚠️ Snap package (how Chromium is installed by default in Ubuntu): /var/snap/chromium/current/policies/managed/. Files in /etc are ignored in this case |
| Microsoft Edge | HKLM\SOFTWARE\Policies\Microsoft\Edge\LocalNetworkAccessAllowedForUrls |
/etc/opt/edge/policies/managed/ |
| Yandex Browser | HKLM\SOFTWARE\Policies\YandexBrowser\LocalNetworkAccessAllowedForUrls |
/etc/opt/yandex/browser/policies/managed/ |
| Vivaldi | HKLM\SOFTWARE\Policies\Vivaldi\LocalNetworkAccessAllowedForUrls |
/etc/vivaldi/policies/managed/ |
| Opera | Not supported: policies are not applied on Windows. The permission is granted manually by the user | /etc/opt/opera/policies/managed/ |
Each address in the Windows registry is a separate string value (REG_SZ) with a numeric name. Example:
reg add "HKLM\SOFTWARE\Policies\Google\Chrome\LocalNetworkAccessAllowedForUrls" /v 1 /t REG_SZ /d "https://corp.express" /f
Example for Linux — file /etc/opt/chrome/policies/managed/express.json:
{
"LocalNetworkAccessAllowedForUrls": ["https://corp.express"]
}
On macOS, the same policy is distributed via a configuration profile for the preference domains com.google.Chrome, com.microsoft.Edge, and similar.
chrome://policy, edge://policy, browser://policy, vivaldi://policy. The policy should be displayed with the status OK and indicate the source — the directory or registry key from which it was read.Mozilla Firefox
The policy LocalNetworkAccess is used with an array of exceptions SkipDomains. The policies.json file:
{
"policies": {
"LocalNetworkAccess": {
"SkipDomains": ["corp.express"],
"Locked": true
}
}
}
The same via Windows group policies:
Software\Policies\Mozilla\Firefox\LocalNetworkAccess\SkipDomains\1 = "corp.express"
*.corp.express includes both the domain itself and all subdomains. An entry without *. applies only to an exact match.Apple Safari
There is no per-site local network access policy. Access can only be managed at the macOS level — with a permission in the Local Network section of privacy settings. Safari receives this permission automatically.
Temporarily Disabling Checks
While the infrastructure is not ready and the permission has not been distributed, checks can be disabled entirely: centrally for all browsers in the organization or manually on a single computer for diagnostics. This is an emergency measure: do not leave the checks disabled permanently.
| Browser | Centrally (for administrators) | Manually on a single instance |
|---|---|---|
| Chrome, Edge, Yandex Browser, Vivaldi | The same registry key or policies directory as for LocalNetworkAccessAllowedForUrls above — add the LocalNetworkAccessRestrictionsTemporaryOptOut parameter (REG_DWORD on Windows, boolean on macOS and Linux) with the value 1 / true |
chrome://flags/#local-network-access-check > select Disabled and restart the browser.In Edge — edge://flags/..., in Yandex Browser — browser://flags/..., in Vivaldi — vivaldi://flags/... |
| Opera | On Windows, it cannot be distributed centrally; on Linux — the same policies directory as above. | opera://flags/#local-network-access-check > Disabled |
| Mozilla Firefox | The same policies.json file as above — the LocalNetworkAccess policy with the parameter "Enabled": false disables all checks completely |
about:config > parameter network.lna.enabled > false |
| Apple Safari | Not applicable — WebKit has not yet implemented local network access restrictions, so there is nothing to disable | |
The value 1 / true for LocalNetworkAccessRestrictionsTemporaryOptOut disables the actual blocking of requests to the local network. If a potential violation occurs, the browser only displays a warning in the developer console.
LocalNetworkAccessAllowedForUrls.What to Consider for the Future
- The restriction is gradually being extended to more connection types. Initially it affected regular requests to the server, then WebSocket connections, and application to WebRTC is in development. When that happens, media connections will also stop working directly without the granted permission.
- The restriction does not apply if the web app itself is opened via an address within your network. If the organization deploys its own instance of the web app in a closed network segment, the problem does not arise.
- The restriction is triggered by the destination IP address; the domain name does not affect it. The same web app address may require permission in one network and not in another — this is expected behavior.
Time Synchronization Setup
The time must be synchronized both on user devices and on servers. If the time is out of sync, sign-in errors, incorrect message timestamps, and a user status displayed with a future time are possible.
How Do I Customize the Time on My Device?
Turn on automatic date, time, and time zone: steps for each platform are in the table below. After that, you don’t need to log out or reinstall the app.
- If the app did not let you log in, try logging in again. If that doesn’t work, restart the app and try again.
- If you are already logged in, restart the app: on your phone, swipe it from the list of open apps; in the web and desktop apps, press Ctrl (Cmd) + R.
| Platform | Steps |
|---|---|
| Windows | Open Settings > Time & Language > Date & Time. Turn on Set time automatically and Set time zone automatically, then click Sync now. |
| macOS | Open System Preferences > General > Date & Time. Turn on Set date and time automatically and Set time zone automatically. |
| Linux | Turn on automatic time synchronization in your desktop settings (date and time section). If there is no such setting, run sudo timedatectl set-ntp true in the terminal and check the result with the command timedatectl status: in the System clock synchronized line, there should be yes. |
| Android | Turn on automatic date, time, and time zone in system settings. |
| iOS/iPadOS | Turn on automatic time setting in the system settings. If it is already enabled, turn it off and turn it on again. |
| Aurora | Turn on automatic date and time in system settings. |
If after that the time on the device still differs from the actual time, contact your organization's Support: on the corporate network, the source of accurate time may be set by policies.
For Administrators: Time Synchronization on Servers
CTS
eCTS
On platform servers, time is synchronized by the NTP client chrony.
If your company has its own exact time sources, specify them in the chrony configuration instead of the pool line and restart the service. You can check which sources the server is connected to with the chronyc sources -v command.
Remote Desktop & Virtual Desktop
If you work via VDI (such as VMware Horizon or Citrix) or connect via the RDP protocol, preliminary configuration is required.
Why Do I Have to Sign In to the App Again After Ending a VDI Session?
The sign-in screen appears again if VDI provides the user with a new empty browser profile or a new user folder the next time the user connects. The solution is to configure folder persistence between VDI sessions.
For Administrators: Configure Folder Persistence in VDI Sessions
Configure persistence of browser and application profile folders between VDI sessions. Without this, users will have to sign in to the app again each time they connect through VDI.
| OS | Folders |
|---|---|
| Windows |
|
| macOS |
|
| Linux |
|
Default is the default browser profile folder. If a user works in a different profile, specify that folder instead: it is named Profile 1, Profile 2 , and so on (for Firefox — (<random_code>).default(-release)). The exact path is visible in the browser itself on the chrome://version page (in Yandex Browser — browser://version) in the Profile Path field. A profile named Default might not exist at all. Copy and restore data when the browser is closed .
If persisting the entire profile folder is not possible (for example, the size of the roaming profile is limited), the minimum required set within it is:
IndexedDB—required: this is where the eXpress web app stores the session. It is not stored in cookies; the server does not set them at all.Local Storage—requiredalong withIndexedDB: without it, the saved session will be considered outdated.Network(Windows only) — cookies for other sites.Local Statein the root of the browser folder (Windows only) — the key used to encrypt cookies.
Cache, Code Cache, and Service Worker folders do not need to be persisted: they will be repopulated, but they account for the bulk of the profile size — several gigabytes.
The
Network subfolder within the profile exists only for Chromium-based browsers on Windows. On macOS and Linux, the same browsers store the cookies file directly in the profile folder.
The cookie encryption key is stored separately from the profile: on Windows — in the
Local State file, on macOS — in the Keychain, on Linux — in GNOME Keyring or KWallet. If the profile folder is persisted without them, cookies cannot be decrypted.
You can verify the result in the browser: F12 > Application > IndexedDB > there should be an
authState database with non-empty storage.Calls and Conferences via VDI/RDP
Why Do Calls via VDI Work Worse Than on a Physical Computer?
⚠️ We do not guarantee that audio and video calls work correctly over VDI. The recommendations below do not help in all cases. Developers are continuing to optimize app performance in VDI environments.For Administrators: Blocking Calls in VDI for the Desktop App
If your VDI environment does not support calls, you can forcibly disable them in the application. The application does not always correctly detect a VDI environment, so this mode must be set separately:| Desktop Platform | Steps |
|---|---|
| Windows |
|
| macOS |
|
| Linux |
|
For Administrators: Configure Sound in VMware Remote Console
You can use VMware Remote Console to add and remove sound cards on Windows and Linux Horizon virtual machines. To add a sound card:
- Go to the required virtual machine in VMware Remote Console and open its settings:
- In Windows, select VMRC > Manage > Virtual Machine Settings.
- In Linux, select Virtual Machine > Virtual Machine Settings.
- Open the Hardware tab and click Add.
- Select Sound Card and click the Finish button.
Configure Sound in the VMware Horizon Client
In the Horizon client settings, select specific audio and video input and output devices. Without this, some devices in the desktop app may not work.
How to select devices:
- In the VMware Horizon client, select Settings.
- In the Real-Time Audio-Video section, in the fields, select communication devices instead of All.
Select devices in the settings of the desktop application installed on the virtual machine:
- Microphone: Microphone array (VMware Virtual Microphone). If the indicator hasn’t “come to life,” select another device and then this one again.
- Output device: Specify the default device used in the system.
- Camera: There might be several options, but only one will work.
For Administrators: Configure Sound on the RDP Server (Windows)
In the Group Policy Editor under Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Device and Resource Redirection, enable the following policies:
- Allow audio and video playback redirection
- Allow audio recording redirection
Configure Sound in the RDP Client
For sound to work in conferences when connecting via RDP, allow access to your computer's audio devices in the connection settings:
| OS and Client | Steps |
|---|---|
| Windows (Remote Desktop Connection) |
|
| macOS (Microsoft Remote Desktop) |
|
| Linux (Remmina) |
|
Certificate Management
For Administrators: About SSL Certificates & Diagnostics
CTS
ETS
eCTS
Client Certificates
Most corporate servers use standard certificates. They are already in popular client operating systems, so you don't need to install them manually. If your organization uses its own certificates, install the certificate in the device OS.
Server Certificates
Installation instructions: administrator documentation.
Certificate Verification
Refer to SSL Certificates Diagnostics.
Ministry of Digital Development National Certification Authority Certificates
If your organization's server has switched to a TLS certificate from the Ministry of Digital Development National Certification Authority (Russian Trusted Root CA and Russian Trusted Sub CA), some devices will require manual installation of this authority's certificates. Without them, the app will not be able to connect to the server.
Whether any action is needed depends on the operating system:
| Platform | What to do |
|---|---|
| Russian operating systems: Astra Linux, RED OS Russian browsers: Yandex Browser, Chromium GOST, Atom |
No action needed. The Ministry of Digital Development certificates are included in the operating system or browser, and the app uses them. |
| Android | No action needed. Starting from version 3.24, the app uses developer-built-in certificates — the Ministry of Digital Development certificates are among them. ETS
The exception is branded ETS applications and builds with SSL Pinning: their set of built-in certificates may differ. After the server switches to Ministry of Digital Development certificates, such an app stops connecting for all employees immediately. This is resolved on the build side — contact your organization's support. ⚠️ If your organization's server uses a certificate from a different certification authority whose root is not built into the app, the connection on Android will not work. Installing the certificate into the system does not work on versions 3.24 and later (except for branded ETS app builds with SSL Pinning). In this case, contact your organization's support — the issue is resolved on the app build side. |
| Windows | Install both certificates manually following the instructions. |
| macOS | Install both certificates manually and be sure to enable trust for them following the instructions. |
| iOS / iPadOS | Install both certificates manually and enable trust for them following the instructions. |
| Other Linux: Debian, Ubuntu, Linux Mint, and derivatives |
Install both certificates manually. ⚠️ On these systems, installing the certificate in the system-wide store is not enough for the desktop app — see the instructions. |
| Aurora | The Aurora app has no Russian Ministry of Digital Development certificates. If your organization's server has switched to them, contact eXpress support, and the certificates will be added to the app. See Certificates on Aurora for details. |
After installing the certificates, fully quit the app and start it again. On Windows, macOS, and Linux, the app keeps running in the background after the window is closed — close it using the icon in the notification area (system tray).
Where to Get Ministry of Digital Development Certificates
The root and intermediate certificates are published on the Gosuslugi portal: . Both are needed.
If the organization's server uses a regular (non-GOST) certificate, take the non-GOST option. GOST certificates require a separate cryptographic provider on each device and are not suitable here.
For Administrators: How to Verify the Result and Mass Deployment
How to Check That the Server Has Switched to Ministry of Digital Development Certificates
Open a link like https://your_server_address/system/settings/version in the browser and check the certificate details using the padlock icon in the address bar. The issuer field will show Russian Trusted Sub CA.
If the browser reports that the certificate is untrusted, the Ministry of Digital Development certificates have not yet been installed on this device.
Mass Deployment
On Windows, certificates are distributed via group policies to the local computer store. On macOS and iOS — only through a mobile device management (MDM) system or a configuration profile: only the user at the computer can manually set trust for a certificate — this cannot be done by script or remotely.