Portál AbcLinuxu, 30. dubna 2025 10:53
Môžeš skúsiť background režime ssh s parametrami spustenia -Nf
Asi to už používaš. Tak potom nič.
ssh -f -L 1234:127.0.0.1:1234 "$server" sleep 5Tento tunel se automaticky uzavře s posledním spojením, přičemž 5 sekund čeká na první spojení. Díky -f se ssh pošle do pozadí, jakmile je spojení navázáno a tunel je připraven.
To mě pak po odeslání napadlo. Ale pokud si zpřístupňuji/tuneluji služby, nemusí to nutně znamenat, že kontroluji i zbylou komunikaci a rozhoduji kdy se spojení naváže (dělám něco na vyšší úrovni). Nikdy jsem to tak nezkoušel a nemíním začínat, protože je snazší se zeptat Pokud se to takto tuneluje třeba samba nebo nfs, tak to vydrží až do umountu a pak to chcípne?
Jinak to má mouchu, že se takto málokam připojím, u těch věcí co jsou automatické, bo ty „servisních“ účty nemají povoleno provedení příkazu a nemají ani shell (/sbin/nologin a PermitOpen jen na konkrétní port či mašina:port).
U popisovaného/objeveného způsobu se mi líbí, že je to pod přímou kontrolou.
Odpověď je ke „všemu a k čemukoliv“ je to pokaždé něco jiného.
Ale případ, kdy jsem toto objevil bylo (plně v mé režii) právě prostor pro „hrubé“ šifrované zálohy celých VM mašin (bez dat) pro rychlou obnovu a zálohy jsou lifrovány na zálohovací stroj s NFS (ale jen localhost - přes tunel).
VPN je často zbytečná, starost navíc a pokud to není tvoje, tak jim tam stejně nenastavíš. Právě filesystémy (samba/nfs4) odkudkoliv kamkoliv řeším přes ssh tunel, je to nejflexibilnější, mám na to takový dlouhý, dnes ho označím za zmatený script, který si osahá kde je (ip/MAC brány) a ustaví potřebný tunel (případně i přes více hop-ů, nebo v místě namontuje bez tunelu).
NFS4 přes TCP.
Už jsem to nechtěl rozepisovat, ale nevyhovuje mi (je to i často/někdy pomalé) - následně šifrovaný přírustkový per-měsíc tar mi sedí víc (rsync na některá data normálně používám). Tedy nejvíc mi sedí obraz, kde je nepoužité místo nulováno, je to pak rozumně malé a obnova je pak velmi snadná, ale zas blbě se to řeší přírustkově, pokud se chce nechat více stavů a taky to trochu nabourává šifrování, ale to jen tak na okraj - a taky je to pomalejší, ale to z vnějšku zas tak nevadí.
Možností jak to dělat je roj.
Vrtá mi to hlavou, bo někdy mám drobné „sociálně-komunikační“ Cooper-ovské problémy .
Jak Josef Kufner tak ty jste chtěli nabídnout řešení, což je bezva a já jsem je odmítl. Není to tím, že bych si nevážil rady, ale tím, že se nemám problém a že mi stav daného zálohování vyhovuje, což sice neznamená, že to mám dobře a nepotřeboval bych radu, jen se mi nechce vysvětlovat všechny souvislosti a procházet znovu všechny varianty (navíc jsem přesvědčen, že stav je to dočasný)…
Obě nabídnuté a i další možnosti zálohová používám (rsync docela aktivně, rdiff-backup v jednom případě, už spíš neaktivně…)
Takže: „Oběma díky, třeba to jindy a jinde rozebereme…“
Shell script je to nejlepší pro spojení spousty různých systémových „příkazů“. Nedokážu si představovat provádět základní správu jinak než skripty přímo upravitelnými, krátkými a jen přímo spojující jednotlivé příkazy.
Třeba na NTB si lze velmi flexibilně řídit jednotný přístup odkudkoliv kamkoliv a čehokoliv na cokoliv (třeba připojení samba sdílení či třeba účetnictví z místa, z kterého projde ven jen 22 na místo kde je vstup povolen jen na 22 a v síti za bránou je nějaký fileserver nebo db server třeba VNC a to vše může být i na několik hoop-ů).
Navíc dnešní doba (i díky BYOD apod.) nahrává tomu mít i interní věci vše zabezpečené jakoby byly veřejné a tomu lze napomoci přístupem ke službám jen přes tunel (případně VPN) a tedy mít rozumnou autorizaci a bezpečného spojení pro cokoliv (jak na co a jak kde).
Přiznám se, že nevím co chceš slyšet ani jaký skriptovací jazyk máš na mysli, natož jaký způsob práce/správy a ani nevím co je kostrbaté. Mně to naopak přijde uhlazené, jsou to tři příkazy ustavení/konrola/uzavření.
Budeš muset dát víc - nemám na co reagovat.
Neznám, tak jsem si jen pročetl README, bo man jsem nenašel, možná se pletu, protože to není moc dokumentované, ale dělá to jen…
…něco jako:
ssh -L 50000:internal_host:2049 -N user@gateway
Nebo
Ne plně bezpečné:
ssh -L 50000:localhost:50000 user@gateway ssh -L 50000:localhost:2049 user@internal_servera bezpečnější varianta:
ssh -L 50001:internal_server:22 user@gateway ssh -L 50000:localhost:2049 -p 50001 localhost?
(parametry jako -NT
a -fn
jsem vynechal)
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.