VPN үшін Compose файлын бөлісіп жатырсыз ба? Рендерленген көшірмеден құпияларды жойыңыз
Жеке кілт YAML ішінде, env мәнінде немесе ешкім қарамаған шешілген шығыста тұруы мүмкін. Шынымен тіркейтін көшірмені тексеріңіз.
Compose файлын бөліскен сайын екі артефакт болады: сіз жазған нұсқа және құрал айнымалыларды алмастырғаннан кейін рендерлейтін нұсқа. Екіншісі біріншіден жиі сезімталдау, және адамдар оқымай-ақ мәселе есебіне қоятыны дәл сол. Тек бастапқы файлды қарасаңыз, қате құжатты қарайсыз.
Нені жоюды шешпес бұрын әр көшірменің не ұстай алатынын салыстырыңыз.
Рендерленген модель — басқа құжат
Compose орта айнымалыларын шешеді, қайта анықтау файлдарын біріктіреді және оқырман қолмен жазылған мәндерден ажырата алмайтын тиімді конфигурация шығарады. Бастапқы көздегі айнымалы атауы сияқты сілтеме шығыста есептік жазба токенінің өзіне айналады. Файлды диагностика үшін пайдалы ететін құрылым сол түрленуден аман өтеді; онда ешқашан болмауы тиіс нәрсенің бәрі де аман өтеді.
Тіркемес бұрын файлды өзіңіз рендерлеңіз және сол шығысты тексерілетін артефакт ретінде қарастырыңыз. Оны рендерлей алмасаңыз, нені жариялағалы жатқаныңызды біле алмайсыз.
Құпиялар кілт өрісінен гөрі көбірек жерде тұрады
Айқын нәрседен бастаңыз: жеке кілттер, алдын ала бөлісілген кілттер, токендер, құпиясөздер және тіркелу деректерін қамтитын қосылым URL-дері. Содан кейін файл нұсқайтын барлық нәрсеге қараңыз, өйткені сілтеме жою емес. Қызметке монтаждалған env файлы, хосттан байланыстырылған конфигурация файлы, токен тасқан белгі және құпиясөзі бар команда аргументі YAML таза көрінсе де орналастырумен бірге жүреді. Сенімді атты айнымалыға жабыстырылған кілт әлі де кілт.
Хост жолдары мен қызмет аттары ақпараттың екінші түрін таратады. Үй каталогының аты, ішкі хост аты немесе желі ауқымы бір де бір тіркелу деректерінсіз адамды немесе ұйымды анықтай алады, және бұл контекст сол себептен жоюға тұрарлық.
Құпияның жариялануы құпияның өзі емес
Compose құпия объектілері жариялауды материалдан бөледі: қызмет жол немесе мақсат алады, ал мазмұн басқа жерде өмір сүреді. Материалды алмастырып, жариялауды сақтау әдетте дұрыс айырбас, өйткені тексеруші құпияның бар екенін және оның қалай монтаждалғанын көруі керек. Сақталмауы тиіс нәрсе — мазмұнның өзі.
Белгілер мен түсініктемелер де сол қатынасқа лайық. Қай қойма жолы өндірістік кілтті ұстайтынын айтатын түсініктеме шабуылдаушыға қайда қарауды айтады, тіпті онда кілт болмаса да.
Форманы сақтаңыз, файл әлі де диагностика жасай алсын
Желі режимін, имидждің нұсқасын немесе мүмкіндік параметрлерін алып тастайтын редакциялау ешкім жөндей алмайтын файл жасайды. Сезімтал мәндерді алмастырыңыз және байланыстарды сақтаңыз: қай қызмет нені монтаждайды, қай желіге қосылады, қандай құрылғы қажет. Бұл — оқырманның жоғалған маршрутты немесе қолжетімсіз құрылғыны түсіндіру үшін пайдаланатын бөлігі. Бұл да әріптесіңіз өзінің жұмыс істеп тұрған орналастыруымен салыстыра алатын нұсқа.
docker compose -f compose.yaml config > rendered.yaml
grep -nE 'PRIVATE_KEY|PASSWORD|TOKEN|PSK|PrivateKey|passphrase' rendered.yaml
wc -l rendered.yaml
Редакцияланған көшірмені жұмыс істеп тұрған түпнұсқадай етіп орналастырмаңыз. Бұл — сипаттама, ал қауіпсіз көріну үшін өңделген сипаттама конфигурация қателеріне ұқсас түрде сәтсіздікке ұшырайды.
Егер материал әшкереленсе, оны алмастырыңыз
Тіркемені жою басқалар жасап қойған көшірмелерді жоймайды, ал айналар мен кэштер өздерінің көшірмелерін ұстайды. Сынып кеткеннің бәрі үшін шығарушының кері қайтару және алмастыру процесін қолданыңыз, содан кейін орналастыруды жаңартыңыз. Тәртіп маңызды, өйткені алдымен алмастырып, кейін кері қайтару екі жарамды тіркелу деректері бар терезені қалдырады.
Қолдау ағындарында нақты қатеден, имидждің нұсқасынан, желі режимінен және маңызды бір құпия емес параметрден бастаңыз. Бұл комбинация жоғалған құрылғыны немесе сынған маршрутты кілттен әлдеқайда жиі түсіндіреді.