Fórum Root.cz

Hlavní témata => Sítě => Téma založeno: Kamui 27. 12. 2018, 14:13:20

Název: Systematické řešení zvdáleného přístupu
Přispěvatel: Kamui 27. 12. 2018, 14:13:20
Situace je taková - rodině a známým spravuji počítače, obvykle s linuxem. Co řeším je, jak systémově zařídit vzdálený přístup pro správu (SSH). Mám k dispozici doma malý server, který je trvale online, takže může sloužit jako hub. Napadají mně dvě možnosti - buď ssh reverzní tunely z daného stroje na server (co stroj to port) pomocí autossh, nebo VPN. Řešení s SSH tunely mi přijde poněkud buranské, i když to funguje, a o VPN toho zase moc nevím. Poradíte mi jak situaci řešit (klidně i jiným způsobem)?
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: Vilith 27. 12. 2018, 14:24:32
VPN klienti k tobe a mas je vsechny dostupne, kdyz maji zapnute pocitace...
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: Kamui 27. 12. 2018, 14:40:09
VPN klienti k tobe a mas je vsechny dostupne, kdyz maji zapnute pocitace...

Není náhodou u VPN problém, pokud více klientů má IP adresu ze stejného rozsahu (typicky 192.168.x.x za natem)? Nebo si to s něčím pletu?
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: Miroslav Šilhavý 27. 12. 2018, 14:54:50
Jsou dvě jediná elegantní řešení:
1) mít dostatek IPv4 adres a stroje rozlišit adresou (dnes trochu problematické, ale ne nemožné), nebo,
2) mít IPv6 adresy, kterých je s jistotou dostatek.

Jak NAT (SSH port forwarding), tak VPN, jsou jen z nouze ctnosti.
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: Mirek Prýmek 27. 12. 2018, 15:31:50
Situace je taková - rodině a známým spravuji počítače, obvykle s linuxem. Co řeším je, jak systémově zařídit vzdálený přístup pro správu (SSH). Mám k dispozici doma malý server, který je trvale online, takže může sloužit jako hub. Napadají mně dvě možnosti - buď ssh reverzní tunely z daného stroje na server (co stroj to port) pomocí autossh, nebo VPN. Řešení s SSH tunely mi přijde poněkud buranské, i když to funguje, a o VPN toho zase moc nevím. Poradíte mi jak situaci řešit (klidně i jiným způsobem)?
Otázka hlavně je, co si představuješ pod slovy "systémově" a "buranské" :)

Pokud potřebuješ spravovat několik počítačů v různých sítích, tak ti stačí mít možnost sshčknout se na jeden stroj v každé síti. Na ostatní se už dostaneš ad hoc ssh tunelem. "Buranské" na tom není nic. Pokud to řeší tvoje potřeby, proč to nepoužít?

Samozřejmě si můžeš z každé sítě udělat i VPN k sobě, ale konfigurace není úplně triviální, pokud OpenVPN neznáš. A trochu tam hrozí, že když to uděláš blbě, dosáhneš nechtěných efektů (např. celá tvoje síť bude dostupná - a tímpádem napadnutelná ze všech těch zpřístupněných sítí :) nebo ti budou chodit pakety, které nechceš aby ti chodily, a budou ti žrát internetové připojení). Pokud bys v některé z těch sítí chtěl spravovat víc strojů a nechtěl si dělat tunel zvlášť z každého z nich, potom je to ještě komplikovanější, protože ty sítě pak potřebuješ proroutovat a VPN klient ti typicky neběží na bráně té sítě, takže to nejspíš bude chtít statické routy na všech strojích, no není to prostě tak triviální, jak to zní.

Další možnost je samozřejmě IPv6 nebo třeba TOR. Ale to je ještě větší overkill a ještě větší náchylnost k chybě vlivem špatné konfigurace.

Poslední, co bys ještě mohl využít, je instalace Salt minionů na těch spravovaných strojích a salt masteru u tebe. Pak můžeš nejenom automatizovat jejich konfiguraci, ale i spouštět na nich libovolné příkazy, třeba si udělat v případě potřeby ten ad hoc ssh tunel. Tohle řešení je ale taky overkill, pokud Salt dobře neznáš, a navíc když se něco pokazí, tak jsi bez spojení do té sítě a neopravíš to.

Takže suma sumárum, spíš napiš, jaké máš vlastně konkrétní požadavky a co ti přijde buranskýho na tom řešení s ssh. Neřeš domnělou pseudoeleganci, která povede k nespolehlivosti, řeš co opravdu potřebuješ řešit ;)
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: sfddkdds 27. 12. 2018, 16:05:17
Btw, slyšel jsi o VPN over SSH (http://"https://wiki.archlinux.org/index.php/VPN_over_SSH")?
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: samalama 27. 12. 2018, 16:46:02
... spravuji počítače...

VPN klienti k tobe a mas je vsechny dostupne, kdyz maji zapnute pocitace...

Není náhodou u VPN problém, pokud více klientů má IP adresu ze stejného rozsahu (typicky 192.168.x.x za natem)? Nebo si to s něčím pletu?

tak tu "spravu" by som chcel vidiet...
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: xhamsterr 29. 12. 2018, 16:22:47
... spravuji počítače...

VPN klienti k tobe a mas je vsechny dostupne, kdyz maji zapnute pocitace...

Není náhodou u VPN problém, pokud více klientů má IP adresu ze stejného rozsahu (typicky 192.168.x.x za natem)? Nebo si to s něčím pletu?

tak tu "spravu" by som chcel vidiet...
Taky me napadlo covtam vlastne prez to ssh spravuje ... .
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: Wily 29. 12. 2018, 17:52:11
Nainstaluj těm klientům salt-miniony a na svůj server si dej salt-master a můžeš to kompletně spravovat jak potřebuješ. Salt použivá zeroMQ, výhoda je taková, že klienti se připojí k salt-masteru a ne obráceně jak je to u SSH. A je to defaultně šifrovaný.
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: Cabrón 02. 01. 2019, 15:39:10
Nezatracoval bych úplně ty ssh tunely, je to nejjednodušší pro malá množství spravovaných strojů. Na každém stačí mít uživatele s unikátním klíčem (bez hesla) a tuhle systemd unit, pak to automaticky řeší obnovení tunelu při změnách připojení a podobně. Mám několik takových v autech a funguje to roky bez dozoru.

Uživatel tunnel na muj-server.cz může mít shell /bin/false nebo ekvivalent. Hodnota RestartSec je tak vysoká kvůli 60s prodlevě, po které jádro uklidí tcp spojení, když to sletí.

Kód: [Vybrat]
[Unit]
Description=a puppeteer's tunnel
After=network.target

[Service]
User=tunnel
ExecStart=/usr/bin/ssh -o "ServerAliveInterval 45" -o "ServerAliveCountMax 2" -o "ExitOnForwardFailure yes" -NR 10022:localhost:22 muj-server.cz
Restart=always
RestartSec=90

[Install]
WantedBy=multi-user.target
Název: Re:Systematické řešení zvdáleného přístupu
Přispěvatel: k3dAR 02. 01. 2019, 20:47:24
na ssh tunelu neni nic buranskeho ;-) pouzivam roky... klient bez verejne ip i icializuje ssh tunel na server s forwardem ssh a vnc portu a ze serveru se pak na jeho ssh a vnc kdykoliv pripojim...

edit: klient se samozrejme pripojuje auto s klicem a nema povolen shell, jen "nabidne" sve porty, omezeni primo v authorized_keys na serveru