Požiadavky: Súkromný domáci album systém bol postavený pomocou Docker kontajnerov, ktorý je obmedzený na prístup a prezeranie v domácej LAN, pretože Docker obraz vyvíja vývojár tretej strany, a neviem, či to bude bezpečnostná situáciaGenerujte porušenia súkromiaAby sme tento problém lepšie vyriešili, chceme pridať záruku súkromia zákazom prístupu Docker kontajnerov na internet (externá sieť).
Tento článok používa systém CentOS7, Docker verzia: 20.10.20, a používa nginx obrázky na poskytovanie testov.
Prístup na internet (extranet) je predvolene povolený
Vytvorte nový nginx kontajner, ktorý poskytuje webové služby prístupné18080 Prístup k portu, kontajner môže štandardne pristupovať na internet (externú sieť), príkaz je nasledovný:
Vstúpte do kontajnera a požiadajte o zdroje tohto miesta pomocou príkazu curl, ktorý je možné získať bežne, ako je znázornené na obrázku nižšie:
Vypnutie Docker kontajnerov v prístupe na internet (extranet)
Najprv potrebujeme vytvoriť vlastnú sieť cez docker a vytvoriť virtuálnu sieťovú kartu pomocou nasledujúceho príkazu:
Nastavte pravidlo na virtuálnej sieťovej karte cez iptables, ktoré zakáže prístup na internet nasledujúcim príkazom:
Bez ohľadu na to, či je služba iptables dostupná alebo nie, bez ohľadu na to, či je firewall zapnutý alebo nie,Pravidlá iptables pridané príkazom nadobúdajú účinnosť okamžite!!!
Poznámka: Tento plán je vhodnýAk sa do tej istej siete pripoja rôzne kontajnery, kontajnery nebudú schopné medzi sebou komunikovať!!!!
Pozrite sa na pravidlo DOCKER-USER, ako je uvedené nižšie:
Vytvorte nový nginx kontajner znova, kontajner poskytuje webovú službu a18081 Port poskytuje služby vonkajšiemu svetu a kontajner nemá prístup na internet (verejná sieť), príkaz je nasledovný:
Dosiahli sme svoj cieľ, ale,Po reštarte servera pravidlá, ktoré sme vytvorili v iptables, zmiznúAko môžeme automaticky načítať naše vlastné pravidlá po reštarte servera?
Príkaz iptables-save sa používa na export tabuľky iptables v jadre Linuxu štandardnému dodávateľovi výstupov, zvyčajne pomocou funkcie presmerovania I/O v shelle na uloženie výstupu do špecifikovaného súboru. Uložiť existujúce pravidlo iptables
Pridajte pravidlo restore iptables do bootovacieho systému, bootovací súbor je /etc/rc.d/rc.local, upravte súbor a na koniec pridajte nasledujúci príkaz:
Nakoniec pridajte povolenie na vykonávanie nasledujúcim príkazom:
Po dokončení nastavení pravidlá iptables stále nadobudnú účinnosť aj po reštarte servera.
Všetky kontajnery v Dockeri majú zakázaný prístup na internet (extranet),Netestované, príkaz je nasledovný:
(Koniec)
|