Prasības: Privātā mājas albuma sistēma tika izveidota, izmantojot Docker konteinerus, kas ir ierobežoti piekļuvei un skatīšanai mājas LAN, jo Docker attēlu izstrādā trešās puses izstrādātājs, un es nezinu, vai tā būs drošības situācijaKonfidencialitātes pārkāpumu ģenerēšanaLai labāk atrisinātu šo problēmu, mēs vēlamies pievienot privātuma garantiju, aizliedzot Docker konteineriem piekļūt internetam (ārējam tīklam).
Šajā rakstā tiek izmantota CentOS7 sistēma, Docker versija: 20.10.20, un testu nodrošināšanai tiek izmantoti nginx attēli.
Piekļuve internetam (ārtīkls) ir atļauta pēc noklusējuma
Izveidojiet jaunu nginx konteineru, kas nodrošina tīmekļa pakalpojumus, kuriem var piekļūt18080 Piekļuve ostai, konteiners pēc noklusējuma var piekļūt internetam (ārējam tīklam), komanda ir šāda:
Ievadiet konteineru un pieprasiet šīs vietnes resursus, izmantojot komandu curl, ko var iegūt parasti, kā parādīts zemāk redzamajā attēlā:
Docker konteineru atspējošana no piekļuves internetam (ārtīkls)
Pirmkārt, mums ir jāizveido pielāgots tīkls, izmantojot docker, un jāizveido virtuālā tīkla karte ar šādu komandu:
Iestatiet noteikumu virtuālajā NIC, izmantojot iptables, lai aizliegtu piekļuvi internetam ar šādu komandu:
Neatkarīgi no tā, vai iptables pakalpojums ir pieejams vai nē, neatkarīgi no tā, vai ugunsmūris ir ieslēgts vai nē,Iptables kārtulas, kas pievienotas ar komandu, stājas spēkā nekavējoties!!!
Piezīme: Šis plāns ir piemērotsJa vienam tīklam pievienojas dažādi konteineri, konteineri nevarēs sazināties savā starpā!!!!
Apskatiet DOCKER-USER kārtulu, kā parādīts tālāk:
Vēlreiz izveidojiet jaunu nginx konteineru, konteiners nodrošina tīmekļa pakalpojumu, un18081 Osta sniedz pakalpojumus ārpasaulei, un konteineram ir aizliegts piekļūt internetam (publiskajam tīklam), komanda ir šāda:
Mēs esam sasnieguši savu mērķi, betPēc servera restartēšanas iptables izveidotie noteikumi pazudīsKā mēs varam automātiski ielādēt savus pielāgotos noteikumus pēc servera restartēšanas?
Komanda iptables-save tiek izmantota, lai eksportētu iptables tabulu Linux kodolā uz standarta izvades piegādātāju, parasti izmantojot I/O novirzīšanas funkciju čaulā, lai saglabātu tās izvadi norādītajā failā. Saglabājiet esošo iptables kārtulu
Pievienojiet atjaunošanas iptables noteikumu sāknēšanai, sāknēšanas sāknēšanas fails ir /etc/rc.d/rc.local, rediģējiet failu un beigās pievienojiet šādu komandu:
Visbeidzot, pievienojiet izpildes atļauju ar šādu komandu:
Pēc iestatījumu pabeigšanas iptables noteikumi joprojām stāsies spēkā pat tad, ja serveris tiek restartēts.
Visiem Docker konteineriem ir aizliegts piekļūt internetam (ārtīklam),Nav pārbaudīts, komanda ir šāda:
(Beigas)
|