Wróć do narzędzi

N3X Remote – zdalna pomoc

Autorska aplikacja na Windows i macOS do zdalnej pomocy i pulpitu zdalnego. Połącz się po ID i haśle przez szyfrowane WebRTC (P2P) albo zarządzaj własnymi komputerami unattended z self-hosted Control Center. Alternatywa dla TeamViewer, AnyDesk i RustDesk. Pobierz za darmo.

N3X Remote — zdalna pomoc nowej generacji

Lekka, natywna aplikacja na Windows i macOS do zdalnej pomocy i pulpitu zdalnego. Udostępnij ekran po 9-cyfrowym ID i haśle jednorazowym, przejmij kontrolę albo bezpiecznie przekaż plik. Obraz, sterowanie i zaakceptowane pliki płyną szyfrowanym połączeniem WebRTC bezpośrednio między urządzeniami (P2P) — bez zakładania kont i bez magazynu w chmurze.

Windows 11 (.exe) i macOS (.dmg) · szyfrowane P2P, własny serwer, bez chmury

Wersje i wydania

Cały stos N3X Remote w jednym miejscu

Aplikacja, serwer self-hosted i agent unattended mają niezależne cykle wydań. Tutaj zawsze znajdziesz aktualne numery opublikowanych składników.

Aplikacja desktopowa

v1.8.48

Pomoc jednorazowa, ekran i sterowanie na Windows.

Serwer self-hosted

v1.15.46

Control Center, sygnalizacja i API w obrazie Docker.

Agent unattended

v0.17.40

Stały agent N3XAgent dla zarządzanych komputerów Windows i Linux.

Interfejs aplikacji

Prawdziwy interfejs produktu — kliknij podgląd, aby zobaczyć go w pełnym rozmiarze.

1 / 2

Control Center

Stan infrastruktury, urządzenia online i zdarzenia administracyjne w jednym centrum dowodzenia.

Hosting zarządzany przez N3X

Chcesz korzystać, ale nie zajmować się serwerem?

N3X może przygotować i utrzymywać tę aplikację: od uruchomienia i SSL po aktualizacje, monitoring oraz kopie zapasowe.

Zapytaj o hosting N3X

Co potrafi N3X Remote

Połączenie po ID i haśle

Każdy komputer ma stałe 9-cyfrowe ID i losowe hasło sesji. Podaj je osobie pomagającej — model znany z TeamViewera i AnyDesk, tylko szybszy.

Pełne sterowanie

Zdalna mysz, klawiatura, przewijanie i skróty klawiszowe. Kontroler steruje pulpitem tak, jakby siedział przy komputerze.

Szyfrowane P2P (WebRTC)

Obraz i sterowanie idą bezpośrednio między urządzeniami, szyfrowane end-to-end (DTLS/SRTP). Serwer pośredniczy tylko przy nawiązaniu połączenia.

Bezpieczny transfer plików

Wysyłaj pliki w obie strony osobnym, szyfrowanym kanałem WebRTC. Host najpierw włącza tę funkcję, a każdy plik wymaga osobnej zgody, jest weryfikowany SHA-256 i trafia do Pobrane\N3XRemote.

Sprzętowe kodowanie wideo

Nowoczesne kodeki (H.264/VP9/AV1) z akceleracją sprzętową dają płynny obraz przy niskich opóźnieniach i małym zużyciu łącza.

Własny serwer, bez chmury

Wskazujesz własny serwer sygnalizacji (i opcjonalnie TURN). Żadne dane sesji nie trafiają do zewnętrznej chmury — pełna kontrola i prywatność.

Zgoda po stronie hosta

Host widzi wyraźny baner, że jest sterowany, i w każdej chwili może zakończyć sesję jednym kliknięciem.

Control Center, unattended i terminal

Na własnym serwerze dodajesz agentów Windows i Linux. Z panelu uruchomisz pulpit albo ograniczoną polityką sesję PowerShell, CMD, Bash lub SH z prawdziwym PTY, jawną tożsamością usługi i audytem metadanych bez zapisywania treści poleceń.

Jak zainstalować

  1. 1Wybierz instalator dla Windows (.exe) albo obraz dla macOS (.dmg).
  2. 2Uruchom instalator .exe albo otwórz plik .dmg i przenieś N3XRemote do folderu Aplikacje.
  3. 3Nie musisz konfigurować serwera — aplikacja automatycznie korzysta z remote.n3x.pl. Udostępnij ekran (podaj ID i hasło) albo połącz się z innym komputerem.

Własny serwer i Control Center — gotowy Docker Compose

Aplikacja domyślnie łączy się z naszym serwerem i działa od razu po pobraniu. Firmy mogą uruchomić u siebie stack signaling, TURN, bazy urządzeń, audytu i panelu zarządzania. Stack nie narzuca konkretnego rozwiązania — możesz użyć dowolnego reverse proxy obsługującego WebSockets. Sekrety są losowane lokalnie w przeglądarce, a dane nie opuszczają Twojego serwera.

TURN wymaga osobnej publikacji portów — reverse proxy HTTP(S) nie wystarczy

Przekieruj TCP 3478, UDP 3478 oraz UDP 49160–49200 bezpośrednio na host Dockera albo obsłuż je przez proxy lub load balancer warstwy 4 z obsługą TCP/UDP. Zezwól na ten ruch w zaporze hosta. Bez tego logowanie i wybór ekranu mogą działać, ale obraz i sterowanie zakończą się błędem P2P/TURN. Nie konfiguruj tych portów jako zwykłego hosta HTTP(S).

Subdomena wskazująca na serwer, np. remote.twojafirma.pl

Losowany w Twojej przeglądarce. Zostaje na serwerze — nie wpisujesz go w aplikacji.

127.0.0.1 dla proxy na hoście. Dla proxy w osobnym kontenerze lub na innym serwerze użyj adresu hosta albo 0.0.0.0 i ogranicz dostęp zaporą.

Compose utrzymuje to chronione konto właściciela. Kolejnych operatorów i role dodasz później w Control Center.

Zapisz je w menedżerze haseł. To konto służy także do awaryjnego odzyskania dostępu do Control Center.

Użyj od 16 do 64 liter, cyfr, myślników lub podkreśleń.

docker-compose.yml
# N3XRemote — complete self-hosted remote support stack
#
#   signaling  WebSocket relay, Control API and browser Control Center
#   postgres   private device inventory, policy and audit database
#   coturn     TURN relay for restrictive/symmetric NATs
#
# Before you start:
#   1. point remote.example.com at this server (DNS A/AAAA record)
#      keep it DNS-only when the same hostname is also used for TURN
#   2. configure any reverse proxy to forward https://remote.example.com to http://127.0.0.1:8788
#      with WebSocket upgrades enabled; TLS/proxy is not part of this stack
#   3. when binding to 0.0.0.0, restrict port 8788 to your proxy/firewall
#   4. REQUIRED: publish TURN on your router/firewall or through a TCP/UDP layer 4 proxy
#      (not as a regular HTTP(S) proxy host):
#      3478/tcp, 3478/udp and 49160-49200/udp -> this Docker host
#      without these rules signaling works, but remote video/control cannot connect
#      for a second stack on the same host, set N3X_TURN_PORT and a separate
#      N3X_TURN_MIN_PORT/N3X_TURN_MAX_PORT range in Portainer or .env
#
# IMPORTANT — keep this file for future stack updates.
# POSTGRES_PASSWORD initializes only an empty postgres_data volume. Replacing
# it later requires changing the n3xremote database role password first, or
# removing postgres_data (which permanently deletes the Control Center data).
#
# Then run: docker compose up -d
# Control Center: https://remote.example.com/control-GENERATING/

services:
  signaling:
    image: ghcr.io/nexitpl/n3xremote-signaling:latest
    restart: unless-stopped
    depends_on:
      postgres:
        condition: service_healthy
    environment:
      PORT: 8787
      TURN_SECRET: GENERATING_TURN_SECRET
      TURN_URL: turn:remote.example.com:${N3X_TURN_PORT:-3478}?transport=udp,turn:remote.example.com:${N3X_TURN_PORT:-3478}?transport=tcp
      DATABASE_URL: postgresql://n3xremote:GENERATING_DATABASE_PASSWORD@postgres:5432/n3xremote
      ADMIN_USERNAME: admin
      ADMIN_PASSWORD: GENERATING_ADMIN_PASSWORD
      ADMIN_PATH: /control-GENERATING
      SESSION_SECRET: GENERATING_SESSION_SECRET
    ports:
      - "127.0.0.1:8788:8787"
    networks:
      frontend:
      backend:

  postgres:
    image: postgres:17-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: n3xremote
      POSTGRES_USER: n3xremote
      POSTGRES_PASSWORD: GENERATING_DATABASE_PASSWORD
    volumes:
      - postgres_data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "PGPASSWORD=$$POSTGRES_PASSWORD psql -h 127.0.0.1 -U $$POSTGRES_USER -d $$POSTGRES_DB -c 'SELECT 1' >/dev/null"]
      interval: 5s
      timeout: 5s
      retries: 10
      start_period: 10s
    networks:
      - backend

  coturn:
    image: coturn/coturn:4-alpine
    restart: unless-stopped
    environment:
      # Set N3X_TURN_EXTERNAL_IP only when automatic DNS detection is blocked.
      REAL_EXTERNAL_IP: ${N3X_TURN_EXTERNAL_IP:-}
    ports:
      - "${N3X_TURN_PORT:-3478}:${N3X_TURN_PORT:-3478}/tcp"
      - "${N3X_TURN_PORT:-3478}:${N3X_TURN_PORT:-3478}/udp"
      - "${N3X_TURN_MIN_PORT:-49160}-${N3X_TURN_MAX_PORT:-49200}:${N3X_TURN_MIN_PORT:-49160}-${N3X_TURN_MAX_PORT:-49200}/udp"
    entrypoint: ["/bin/sh", "-ec"]
    command:
      - |
        candidate="$${REAL_EXTERNAL_IP:-}"
        if [ -z "$$candidate" ]; then
          candidate="$$(detect-external-ip 2>/dev/null || true)"
        fi
        external_ip="$$(printf '%s\n' "$$candidate" | awk 'match($$0, /([0-9]{1,3}\.){3}[0-9]{1,3}/) { print substr($$0, RSTART, RLENGTH); exit }')"
        if [ -z "$$external_ip" ]; then
          echo "N3XRemote coturn: no valid public IPv4 address was detected; set N3X_TURN_EXTERNAL_IP" >&2
          exit 1
        fi
        echo "N3XRemote coturn: using external IPv4 $$external_ip"
        exec turnserver \
          -n \
          --log-file=stdout \
          --external-ip="$$external_ip" \
          --realm=remote.example.com \
          --use-auth-secret \
          --static-auth-secret=GENERATING_TURN_SECRET \
          --listening-port=${N3X_TURN_PORT:-3478} \
          --min-port=${N3X_TURN_MIN_PORT:-49160} \
          --max-port=${N3X_TURN_MAX_PORT:-49200} \
          --no-tls \
          --fingerprint \
          --no-multicast-peers
    tmpfs:
      - /var/lib/coturn
    networks:
      - frontend

networks:
  frontend:
  backend:
    internal: true

volumes:
  postgres_data:
Uruchomienie na serwerze
mkdir -p n3xremote && cd n3xremote
nano docker-compose.yml   # paste the file above
docker compose up -d

# Verify N3XRemote before configuring the proxy:
curl http://127.0.0.1:8788/healthz

# Configure your own reverse proxy (WebSockets required):
http://127.0.0.1:8788 -> https://remote.example.com

# REQUIRED TURN rules (direct NAT/firewall or a TCP/UDP layer 4 proxy):
# TCP 3478          -> DOCKER_HOST:3478
# UDP 3478          -> DOCKER_HOST:3478
# UDP 49160-49200   -> DOCKER_HOST:49160-49200

# Verify that coturn is running and listens on the Docker host:
docker compose ps coturn
docker compose logs --tail=100 coturn
sudo ss -lntup | grep ':3478'

# Test TCP 3478 from a DIFFERENT internet connection, not this LAN:
nc -vz remote.example.com 3478

# Verify through the public proxy:
curl https://remote.example.com/healthz

# Open and bookmark the private Control Center address:
https://remote.example.com/control-GENERATING/

Co wpisać w ustawieniach aplikacji

Nasłuch backendu
127.0.0.1:8788
Cel reverse proxy
http://127.0.0.1:8788
Serwer sygnalizacji
wss://remote.example.com
Control Center
https://remote.example.com/control-GENERATING/
Właściciel awaryjny
admin
Hasło właściciela

Pobrana aplikacja ma już ustawiony remote.n3x.pl. Adres własnej instancji zmieniasz tylko w Ustawienia → Zaawansowane. Zachowaj prywatny adres Control Center i nie publikuj go. Agenty unattended rejestrujesz gotowym poleceniem wygenerowanym w panelu; danych TURN ani bazy nie wpisujesz w klientach.

N3X Remote nie instaluje ani nie konfiguruje reverse proxy. Skieruj wybraną domenę na pokazany cel HTTP, włącz WebSockets i certyfikat SSL. Domyślny adres 127.0.0.1 działa z proxy uruchomionym na hoście; dla proxy w osobnym kontenerze ustaw adres hosta lub 0.0.0.0 i ogranicz port zaporą. TURN wymaga publikacji portu 3478 (UDP i TCP) oraz zakresu 49160-49200 (UDP) na routerze i zaporze albo przez warstwę 4 — nie jako zwykły host HTTP(S). Jeśli ta sama domena obsługuje TURN, w Cloudflare pozostaw ją jako DNS only.

Historia zmian

    • UlepszenieUjednolicona ikona aplikacji i instalatora na macOS i Windows: wspólny ciemny kafelek, turkusowy symbol, przezroczyste otoczenie i spójna skala z pozostałymi aplikacjami N3X.
    • PoprawkaN3XAgent 0.17.39 naprawia zapis pobranej aktualizacji na Windows: plik jest synchronizowany z prawem zapisu, dzięki czemu aktualizator przechodzi do instalacji zamiast kończyć próbę odmową dostępu.
    • PoprawkaPo naprawie i poprawnym połączeniu z serwerem agent usuwa nieaktualny błąd poprzedniej wersji. Zachowuje blokadę ponownych prób dla nowszego wydania, jeżeli wcześniej musiał je wycofać.
    • UlepszeniePakiet Windows zawiera skrypt jednorazowej naprawy aktualizacji agentów 0.17.32–0.17.38. Skrypt sprawdza SHA-256 archiwum wydania i oczekiwaną wersję, a instalator zachowuje dotychczasową tożsamość urządzenia. Skrypt należy uruchomić przez lokalny PowerShell administratora lub niezależny kanał zarządzania.
    • PoprawkaNaprawiono kodowanie klawiszy Windows: bity Shift i AltGr nie trafiają już do kodu klawisza. Tekst zachowuje wielkość liter i lokalny układ klawiatury, a skróty oraz zwalnianie klawiszy działają spójnie w aplikacji i panelu przeglądarkowym.
    • UlepszenieN3XAgent 0.17.38 zastępuje wspólną pętlę z pauzą 150 ms niezależnymi wątkami wejścia i obrazu. Przechwytywanie dąży do 30 klatek/s, zwalnia na nieruchomym pulpicie, ponownie używa bufora GDI i szybciej odtwarza obraz po wznowieniu sesji.
    • UlepszeniePrzekaźnik nie blokuje odbioru klawiszy podczas wysyłania obrazu; kolejki zachowują najnowszą klatkę, a przesyłanie plików pozostawia miejsce dla obrazu. Zmiany przygotowano wraz z N3XRemote Server 1.15.46.
    • PoprawkaWeryfikacja modułu administratora na Windows porównuje obiekty procesów także wtedy, gdy uchwyt zwrócony po UAC nie pozwala odczytać PID. Ograniczone prawa uchwytu nie powodują już odrzucenia poprawnego modułu.
    • UlepszenieStatus sterowania rozróżnia błąd uruchomienia, weryfikacji procesu, potwierdzenia gotowości oraz utratę działającego modułu. Dodano natywne testy ograniczonych uchwytów i weryfikację aplikacji Windows w pull requestach.
    • PoprawkaOdinstalowanie agenta na Linuksie nie trafia już na ograniczenie bezpiecznego restartu Windows. N3XRemote Server 1.15.45 rozróżnia platformę, wymaganą wersję i brak uprawnień, a konkretny powód pokazuje także w oknie usuwania.
    • NowośćN3XAgent 0.17.37 dodaje ograniczony deinstalator systemd dla Linuksa. Wymaga aktualnego instalatora uruchomionego raz jako root; usuwa wyłącznie instalację agenta po potwierdzeniu serwera, bez naruszania innych usług. Audyt rejestruje rozpoczęcie, nie potwierdzenie zakończenia usuwania.
    • UlepszenieOkno usuwania ma spójnie wystylizowane pola i ostrzeżenia zależne od wybranego trybu. Samo cofnięcie dostępu pozostaje dostępne niezależnie od obsługi deinstalacji.

PORADNIK

Instrukcja obsługi N3XRemote

Instalacja, pierwsze kroki, ustawienia i rozwiązywanie problemów.

N3XRemote

N3XRemote służy do zdalnej pomocy. Zestaw obejmuje aplikację desktopową, opcjonalny własny serwer Docker i agenta do zarządzanych urządzeń.

Wymagania i instalacja

Windows 11 lub macOS (Intel albo Apple Silicon).

  1. Pobierz gotowy instalator przyciskiem pobierania na tej stronie.
  2. W Windows uruchom plik .exe i przejdź przez instalator. W macOS otwórz plik .dmg i przeciągnij aplikację do katalogu Aplikacje.
  3. Uruchom zainstalowaną aplikację.

Korzystaj z aktualnego wydania wskazanego na stronie produktu. Do instalacji nie potrzebujesz kodu źródłowego ani narzędzi programistycznych.

Połączenie z drugim komputerem

  1. Zainstaluj i uruchom aplikację na obu komputerach.
  2. Osoba otrzymująca pomoc przekazuje zaufanemu operatorowi 9-cyfrowy identyfikator i aktualne hasło sesji.
  3. Operator wpisuje te dane, aby nawiązać połączenie.
  4. Osoba udostępniająca komputer widzi aktywną sesję i może ją zakończyć. Transfer pliku wymaga włączenia funkcji oraz osobnej zgody na każdy plik.

Uprawnienia systemowe

W Windows ręczne uruchomienie może wyświetlić UAC dla modułu sterowania. Zgodę zatwierdza osoba przy komputerze. Odmowa pozwala nadal korzystać z aplikacji z ograniczonymi uprawnieniami. Autostart pomija UAC; aby ponowić prośbę, zakończ sesję, wybierz Zakończ z menu ikony i uruchom aplikację ręcznie.

Moduł pozwala sterować podniesionymi oknami na zwykłym pulpicie. Bezpieczny pulpit UAC nadal wymaga obsługi lokalnej.

Na macOS nadaj aplikacji wymagane uprawnienia do nagrywania ekranu i sterowania w ustawieniach prywatności systemu, a następnie uruchom ją ponownie.

Własny serwer i urządzenia zarządzane

Skorzystaj z konfiguratora serwera na tej stronie. Wymagany jest host Linux z Docker Compose, domena HTTPS i reverse proxy obsługujące WebSocket. Konfigurator przygotowuje gotowy plik Compose i polecenia startu. Dla sieci bez bezpośredniego połączenia skonfiguruj również TURN.

Przechowuj PostgreSQL w sieci wewnętrznej i wykonuj kopie bazy oraz trwałych sekretów. Agenta rejestruj tokenem z własnego zaufanego Control Center. Dostęp bez obecności użytkownika zależy od nadanych polityk i powinien być ograniczony do uprawnionych operatorów.

Rozwiązywanie problemów i prywatność

Sprawdź, czy oba urządzenia mają połączenie z serwerem i aktualne hasło sesji. Jeżeli sesja nie zestawia się między różnymi sieciami, sprawdź konfigurację TURN i firewall. Przy problemie z uprawnieniami podaj pełny komunikat oraz sposób uruchomienia aplikacji.

Sesje pomocy korzystają z szyfrowanego WebRTC. Serwer nie jest magazynem nagrań pulpitu ani przesyłanych plików. Identyfikator i hasło przekazuj wyłącznie osobie, której udzielasz dostępu.