Ṣiṣayẹwo aabo (sonu) ti aṣoju Docker ati awọn fifi sori ẹrọ Kubernetes

Ṣiṣayẹwo aabo (sonu) ti aṣoju Docker ati awọn fifi sori ẹrọ Kubernetes
Mo ti n ṣiṣẹ ni IT fun diẹ sii ju ọdun 20, ṣugbọn bakan Emi ko wa ni ayika si awọn apoti. Ni imọran, Mo loye bi wọn ṣe ṣeto ati bii wọn ṣe ṣiṣẹ. Ṣugbọn niwọn bi Emi ko ti pade wọn ni iṣe, Emi ko ni idaniloju bi awọn jia ti o wa labẹ ibori wọn ṣe yipada ati yipada.

Yato si, Emi ko ni imọran bi aabo wọn ṣe jẹ. Ṣugbọn lẹẹkansi, ilana naa dun dara, ati orin atijọ “bi aabo ṣe pọ si, lilo dinku” di ni ori mi. Nitorinaa Mo ro pe niwọn igba ti ohun gbogbo rọrun pupọ lati ṣe pẹlu awọn apoti, lẹhinna aabo wa ni isalẹ par. Bi o ti wa ni jade, Mo ti tọ.

Lati bẹrẹ ni iyara, Mo forukọsilẹ fun awọn iṣẹ ikẹkọ Black Hat 2020 ẹtọ ni "Lati awọn rags si awọn ọrọ: ilaluja ati aabo ti Docker Swarm ati awọn agbegbe Kubernetes».

Ẹkọ naa, ti Sheila A. Berta ati Sol Ozzan kọ, lẹsẹkẹsẹ bẹrẹ pẹlu apejuwe bi awọn apoti Docker ṣe n ṣiṣẹ ati irin-ajo ti wọn gba nigba ti wọn gbe lọ si Kubernetes. Eyi jẹ kilasi-ọwọ patapata - awọn ọmọ ile-iwe ni lati fi sori ẹrọ Docker ati microk8s lori awọn ẹrọ wọn ṣaaju kilaasi - ọna nla lati rii bii awọn irinṣẹ ṣe n ṣepọ pẹlu ara wọn, wa awọn aaye alailagbara ati, pataki julọ, gbiyanju lati dènà wọn.

Laanu, botilẹjẹpe awọn ikẹkọ ṣe ileri lati di “alade” lẹhin ọjọ meji, Mo ro pe ohun gbogbo ti ṣẹṣẹ bẹrẹ, ati pe Mo tun ni ọpọlọpọ lati kọ ẹkọ.

Ṣiṣayẹwo aabo (sonu) ti aṣoju Docker ati awọn fifi sori ẹrọ Kubernetes

Ṣaaju ki o to omiwẹ sinu awọn akiyesi giga mi, o ṣe pataki lati ṣalaye kini apoti kan jẹ. Ni agbaye idagbasoke, o jẹ deede fun koodu ti a kọ sori ẹrọ ti ara ẹni lati ṣiṣẹ ni pipe, ṣugbọn nigbati o ba gbiyanju lati ṣiṣẹ lori olupin ni ibikan, o rọrun ko ṣiṣẹ. Awọn apoti gbiyanju lati bori iṣoro yii nipa ipese awọn ẹrọ ti o ni ara ẹni ti o le ni rọọrun gbe lati ọdọ olupin kan si ekeji, mọ pe wọn yoo ṣiṣẹ nigbagbogbo. Gẹgẹbi orukọ ṣe daba, wọn ni koodu, awọn ile-ikawe, ati sọfitiwia miiran ti o nilo lati gba iṣẹ naa. Kubernetes, ni ida keji, jẹ Syeed orchestration fun awọn apoti. Ni opo, o le ṣee lo lati ṣakoso laisiyonu awọn ọgọọgọrun tabi ẹgbẹẹgbẹrun awọn apoti oriṣiriṣi.

Ni isalẹ wa diẹ ninu awọn awari mi lati irisi ẹgbẹ pupa ati buluu.

Egbe pupa

Pupọ akoonu eiyan nṣiṣẹ bi gbongbo: Eleyi tumo si wipe ti o ba ti awọn eiyan ti wa ni gbogun, o yoo ni kikun wiwọle si awọn eiyan. Eyi jẹ ki awọn igbesẹ ti o tẹle jẹ rọrun pupọ.

Iṣagbesori docker.sock inu apo kan jẹ ewu: Ti o ba ni gbongbo inu apo eiyan kan ati pe o tun fi Docker sinu apoti ti o ni iho Docker (/var/run/docker.sock), o ni agbara lati ṣawari gbogbo iṣupọ, pẹlu wiwọle si eyikeyi eiyan miiran. Iru wiwọle bẹẹ ko le ṣe idaabobo nipasẹ ipinya nẹtiwọki tabi awọn ọna miiran.

Awọn oniyipada ayika nigbagbogbo ni data asiri ninu: Ni ọpọlọpọ igba, awọn eniyan fi awọn ọrọigbaniwọle ranṣẹ si apo eiyan nipa lilo awọn oniyipada ayika deede. Nitorinaa ti o ba ni iwọle si akọọlẹ naa, o le ṣe amí lori awọn oniyipada ayika wọnyi lati le faagun awọn agbara rẹ nigbamii.

Docker API le funni ni alaye pupọ: API Docker, nigbati o ba tunto nipasẹ aiyipada, nṣiṣẹ laisi aṣẹ ati pe o le gbejade pupọ ti alaye. Lilo Shodan, o le ni rọọrun wa atokọ ti awọn ebute oko oju omi ṣiṣi, lẹhinna gba alaye alaye nipa iṣupọ - ki o tẹsiwaju si gbigba ni kikun. TrendMicro kowe nipa eyi julọ ​​awon article.

Blue Egbe

Ma ṣe ṣiṣe awọn akoonu inu eiyan bi gbongbo: Bi o tilẹ jẹ pe o rọrun lati ṣiṣe bi root, o yẹ ki o ko ṣe. Dipo, ṣiṣe awọn ohun elo pẹlu awọn igbanilaaye atunto nipa fifi uid han, boya lilo aṣayan olumulo --olumulo nigbati o nṣiṣẹ lati CLI, tabi nipa sisọ USER ni Dockerfile.

Ma ṣe jẹ ki sọfitiwia sori ẹrọ ni awọn apoti: Fere gbogbo kolu bẹrẹ pẹlu dida nkan. Lati nmap si ifconfig si Docker funrararẹ (ninu apo eiyan kan), fifi sori ohunkohun ninu apo eiyan ti jẹ aaye ti o wọpọ. Fun idi kanna, o yẹ ki o dènà gbogbo awọn ebute oko oju omi nigbagbogbo. Eyi tun ṣe iranlọwọ lati yago fun awọn aṣẹ iṣakoso lati tan kaakiri nigbati ẹrọ rẹ ba ni akoran. Ni afikun si idilọwọ fifi sori ẹrọ ti awọn eto, o tọ lati rii daju pe nọmba ti o kere julọ ti awọn ohun elo ti o nilo lati pari iṣẹ-ṣiṣe ti fi sori ẹrọ ni eiyan funrararẹ.

Dabobo docker.sock: O gbọdọ ni aabo nitori ibaraẹnisọrọ laarin apoti ati iṣupọ ti ni ilọsiwaju nipasẹ iho yii. Niwọn igba ti Emi ko fẹ lati lọ sinu alaye ni nkan yii, ka akọsilẹ lati Docker, kini o le ṣẹlẹ, ati bi o ṣe le dènà gbogbo rẹ.

Lo awọn aṣiri Docker dipo awọn oniyipada ayika: Awọn asiri wa lati ọdun 2017. Botilẹjẹpe eyi ko ni aabo, o tun dara ju awọn oniyipada ayika fun gbigbe data aṣiri lọ si eiyan naa.

Ti nkan naa ba ti ru iwulo rẹ si awọn apoti, o le ni rọọrun fi Docker tabi microk8s (ẹya kekere kan ti Kubernetes). o ti wa ni awọn ilana wa fun fifi Docker sori Linux ati MacOS, ati nibi - awọn ilana fun fifi microk8s sori ẹrọ fun Windows, Lainos ati MacOS.

Lẹhin fifi sori o le lọ yi ni a ọna ibere guide lati Docker, iru aṣayan ti a nṣe ati fun microk8s.

Ti o ba fẹ tabi nilo lati ṣe ikẹkọ okeerẹ lori Docker, ninu eyiti awọn agbohunsoke to wulo ṣe ayẹwo gbogbo awọn irinṣẹ rẹ: lati awọn abstractions ipilẹ si awọn aye nẹtiwọọki, awọn nuances ti ṣiṣẹ pẹlu ọpọlọpọ awọn ọna ṣiṣe ati awọn ede siseto, lẹhinna gbiyanju “Docker fidio dajudaju" Iwọ yoo di faramọ pẹlu imọ-ẹrọ ati loye ibiti ati bii o ṣe dara julọ lati lo Docker. Ati ni akoko kanna, gba awọn ọran adaṣe ti o dara julọ - o dara lati kọ ẹkọ ni ailewu ati pẹlu atilẹyin ti awọn oṣiṣẹ lati awọn itan nipa awọn rake ju tikalararẹ lati awọn rake funrararẹ pẹlu awọn ọwọ wiwọ.

orisun: www.habr.com

Fi ọrọìwòye kun