Før du erstatter IPsec med Shadowsocks, skriv ned oppgavene som mangler
Sammenlign videresending, privat tilgjengelighet, autorisasjon og drift før du ser Shadowsocks som en erstatning for IPsec i et lite team.
Tre tjenester, én tunnel: en webapp, en database og en fildeling. Noen foreslår å bytte IPsec mot Shadowsocks fordi det er enklere å drifte. Krypteringsdebatten som følger bommer på poenget, fordi tunnelen gjør flere oppgaver samtidig og bare én av dem handler om chiffre. Skriv ned disse oppgavene før du sammenligner produkter. Listen er kort, og ethvert enkeltpunkt kan gjøre byttet ugyldig.
Begynn med hvordan trafikk fanges
Protokollen har to halvdeler. En lokal komponent tar imot en tilkobling, krypterer en strøm som begynner med måladdressen og sender den til en ekstern komponent. Den eksterne halvdelen åpner en tilkobling til målet og videresender bytene. UDP følger samme form med datagrammer. Dette er videresending for strømmene den fanger, og det sier ingenting om strømmene den ikke fanger. Et program som snakker proxy eksplisitt er enkelt; alt annet trenger en adapter eller rutingsregler for å bli fanget i det hele tatt.
Dokumenter fangstmetoden per program før du sammenligner noe annet. Trafikk som ikke fanges, forlater nettet den vanlige veien, og ingen merker det før en tjeneste oppfører seg annerledes utenfor kontoret.
Navngi hvert mål og hver protokoll
Den eksterne halvdelen må kunne nå hver intern tjeneste. En fungerende kryptert sesjon til den verten legger ikke til en rute fra den til databasen, og den får ikke interne navn til å løses på klienten. List opp adresser, porter og protokoller i stedet for å skrive at LAN er inkludert.
Legg til tilfellene som ødelegger ryddige design: intern DNS, programmer som ignorerer proxyinnstillinger, og enhver strøm som må startes fra serveren mot klienten. Hver av dem krever en uttrykkelig avtale, ikke en antakelse.
Kryptering er ikke autorisasjon
De dokumenterte AEAD-metodene i Shadowsocks gir autentisert kryptering, så det er feil å avvise hele familien som usikker. Like feil er det å la det faktum besvare tilgangsspørsmålet. Noen må avgjøre hvem som når hvilken tjeneste, hvordan tilgang fjernes når en person slutter, hvor hemmeligheter oppbevares og hvilken komponent som håndhever grensen. Én felles hemmelighet gir enhver innehaver samme rekkevidde, og offboarding av én person blir en rotasjon for alle.
Hold det nåværende IPsec-oppsettet opp mot samme standard. Etiketten beviser ikke at reglene er riktige, og å sammenligne en polert versjon av det ene designet med en vag versjon av det andre avgjør ingenting.
List opp kontrollene som finnes i dag på begge sider, og vurder deretter hvilke hull du kan leve med.
Tell driftsarbeidet
Hver erstatning trenger en eier for klientpakker, serveroppdateringer, rotasjon av påloggingsinformasjon og håndtering av feil. Legg merke til hva hvert program gjør når tunnelen ikke er tilgjengelig: feiler, prøver på nytt via den lokale veien eller venter. Den oppførselen kommer fra utrullingen, ikke fra protokollnavnet.
For én webapp kan en smal proxy være nok. For tilgang til hele nettet med rettigheter per person koster de ekstra delene som regel mer enn tunnelen de erstattet.
Avgjørelsen er ikke hvilket produkt som høres sikrere ut. Den er hvilket design som fullfører de listede oppgavene med kontroller teamet faktisk vil vedlikeholde.