Мда, статья по уровню, действительно, не совсем для хабра, но даже рука не поднимается ставить минус.
Нахлынули воспоминания как я 30 лет назад делал это на bat-файлах, на Паскале и на С++, для Windows 95.. Менял не только обои, но и загрузочные картинки - писал на них всякие напоминания типа ближайших праздников и дней рождения. Ох как я стар...
Да ну, перестаньте. Кто там у нас в Верховном суде сидит? Про иноагентов и призывников не чешутся вообще.
Всё будет проще - выйдет наш светлолицый, погрозит пальчиком, пожурит, скажет что ай-яй-яй, надо народу помочь. Часть блокировок снимут (в Москве), зато по всем телеканалам неделю показывать будут.
Да, согласен, root на хосте сможет всё. Поэтому на хосте я ставлю только докер. Однако, в контейнере можно, случайно, заиметь какой-нибудь стилер, который переменные окружения и все конфиги соберёт.
Я тот ещё параноик и тоже могу придумать ещё штук 5 сценариев, где советы из моей статьи не помогут, но всё же это лучше чем в открытом виде их держать.
До недавнего времени я был в компании один за всю IT часть и кубер мне показался слишком тяжёлым в обслуживании. Swarm довольно прост и я уже для его API написал пару инструментов для автоматизации.
Ну если скомпрометирован root на swarm leader ноде - то да, всё грустно, все секреты можно достать. Если же на воркере - то придётся подумать. Хотя, возможно, docker exec будет доступен.
Перехватить из памяти - возможно, но это ещё иди поищи где у этого постгреса он там хранится. Меня, в первую очередь, напрягало, что у сервиса, который работает неделями, просто доступен текстовый файлик с паролями. Хотелось его убрать когда он уже не нужен.
Я swarm использую вполне. Не очень он развивается, конечно, но для k8s у меня ресурсов нет.
Я работал с Виктором Петровичем в 2386 году в Нижнем Калининграде. Свой метеоприбор он к тому времени забросил - говорил что всё равно точности не хватает. Зато он считался одним из первых разработчиков машины времени - ну вы все знаете эту историю со сломанной рукой его жены, которая натолкнула на эту идею.
мне не удалось найти в открытом доступе скоро-нибудь подробных книг касающихся собственно газогенераторных котлов сходных тем, которые использовались в авто, за исключением только некоторой обрывочной информации
Да чего там долго искать - это не утерянное знание, до сих пор народ мастерит себе повозки на дровах.
Лет 5-7 назад на хабре были пара статей от какого-то человека из Луганска, кажется, где он вполне подробно описывал как сделал себе машину с газогенератором и вполне себе хорошо ездит. Пробега хватает и мощности вполне достаточные. Сейчас что-то не смог найти эти статьи, но вот есть в гугле белорус с таким же девайсом.
С одной стороны, я понимаю что вы имеете в виду. Однако, "я бы мог с вами согласиться, но тогда мы бы оба оказались неправы" (с)
Для меня это выглядит как легитимизация неправильного подхода. И после прочтения может остаться желание оставить всё как есть: "смотри, другие так же делают". Однако, когда я объясняю что-то коллегам, я часто говорю "я сделал это вот так, но это НЕПРАВИЛЬНО, должно быть вот так, мы это должны переделать когда сможем", заводится таск в Jira и мозолит глаза.
Я согласен, вы в начале статьи постарались об этом предупредить, но я бы даже статью писать не стал, на вашем месте, простите. Я поставил минус, кажется, с "не согласен", но не видел смысла сильно объяснять свою позицию до тех пор, пока прохожий сеньор программист не выразил недоумение.
У меня на продакшене 5 серверов и сетап у них примерно как у вас - тоже есть bash-скрипт с начальными шагами. Но мне это очень не нравится, и мы планируем серьёзно это всё переделать.
Повторюсь - я сам так делаю, но считаю что это неправильно и учить такому не стоит.
Если ключ скомпрометирован, то нужно сменить все защищённым им секреты.
В общем-то да. Но кроме этого есть более простые сценарии. Например у вас украли кошелёк с флэшкой, на которой был ключ. Пока до него доберутся и поймут что это - у вас есть как минимум несколько часов, чтобы его сменить. Менять все секреты - это уж перебор. Вдобавок, ключ желательно ротировать время от времени, чтобы случайно засвеченный бэкап трёхлетней давности его не слил..
Что касается хранения секретов - это боль. Мне не нравится ни один менеджер паролей и я уже год не спеша (времени нет) пишу свой (с картами и девушками). На продакшене секреты хранятся и используются в Docker Secrets (Swarm), а чтобы их удобнее менять - у меня самописный менеджер для Swarm их умеет подменять.
Для серверов, которые нужно пересоздавать раз в 2-3 года - можно использовать что угодно, даже просто текстовый файлик со списком софта.
Проблема со своими скриптами - и я на это уже много раз натыкался сам - в том, что через эти 2-3 года внезапно обнаруживаешь, что сами скрипты устарели. Wireguard ставится из другого репозитория.. Для установки докера в старой инструкции можно было сделать add-apt-repository , а теперь нужно в keyrings писать ещё.. ssh слушает порт через systemd вместо конфига.. И скрипты надо править каждый раз, причём обнаруживаются все эти проблемы в тот момент, когда уже надо бы срочно всё восстановить..
В нормальном плейбуке все эти обновления уже отражены и плейбук "установи докер" установит его самым правильным на текущий момент способом.
Опять же - я не критикую сам подход, но хочу указать, что рекламировать нужно не его.
а где Вы предлагаете хранить секреты для пары личных серверов?
Я храню в keepass. И на серверах пишу в конфиги руками если нужно.
Мне кажется очевидным, что хранить секрет в git репозитории, даже зашифрованным, очень небезопасно. Оно же всю историю коммитов хранит. Если ключ шифрования скомпрометирован, то даже если вы его смените и перешифруете секреты - предыдущие коммиты доступны со старым ключом. Разделения доступа нет - это только для одного человека с одним ключом. Если нужно временно дать доступ только на часть секретов для коллеги - это невозможно, и отозвать доступ тоже непросто. Если репозиторий не на своём сервере, а на Github - то это вообще чужое облако.. На серверах я никогда не делаю git clone чтобы не давать доступ (даже readonly). В общем, небезопасно это всё.
Мда, статья по уровню, действительно, не совсем для хабра, но даже рука не поднимается ставить минус.
Нахлынули воспоминания как я 30 лет назад делал это на bat-файлах, на Паскале и на С++, для Windows 95.. Менял не только обои, но и загрузочные картинки - писал на них всякие напоминания типа ближайших праздников и дней рождения. Ох как я стар...
Да ну, перестаньте. Кто там у нас в Верховном суде сидит? Про иноагентов и призывников не чешутся вообще.
Всё будет проще - выйдет наш светлолицый, погрозит пальчиком, пожурит, скажет что ай-яй-яй, надо народу помочь. Часть блокировок снимут (в Москве), зато по всем телеканалам неделю показывать будут.
Я, было, собирался усомниться в том, что это та самая Мила Йовович. Но немного погуглил и вижу что в запрещённой соцсети она об этом тоже пишет.
Да, согласен, root на хосте сможет всё. Поэтому на хосте я ставлю только докер. Однако, в контейнере можно, случайно, заиметь какой-нибудь стилер, который переменные окружения и все конфиги соберёт.
Я тот ещё параноик и тоже могу придумать ещё штук 5 сценариев, где советы из моей статьи не помогут, но всё же это лучше чем в открытом виде их держать.
До недавнего времени я был в компании один за всю IT часть и кубер мне показался слишком тяжёлым в обслуживании. Swarm довольно прост и я уже для его API написал пару инструментов для автоматизации.
Ну если скомпрометирован root на swarm leader ноде - то да, всё грустно, все секреты можно достать. Если же на воркере - то придётся подумать. Хотя, возможно, docker exec будет доступен.
Перехватить из памяти - возможно, но это ещё иди поищи где у этого постгреса он там хранится. Меня, в первую очередь, напрягало, что у сервиса, который работает неделями, просто доступен текстовый файлик с паролями. Хотелось его убрать когда он уже не нужен.
Я swarm использую вполне. Не очень он развивается, конечно, но для k8s у меня ресурсов нет.
У меня сегодня днём с проблемами открывался гитхаб, Reddit и некоторые сервера на AWS. Даже ошибки DNS пару раз встречал. Кипр.
Ну, вообще-то downdetector говорит что у всех сервисов
немногоповысилось количество отказов этим вечером.Есть ли хотя бы одна причина это делать? Я постулирую что нет.
Для верности я бы вам советовал этот вопрос задать 2 апреля.
Я тоже разгадал, и уже подтверждение приза получил.
Честно говоря, 1 апреля даже в такие новости верится с трудом. Ну вот, конечно, все работники с опытом с удовольствием поедут из Москвы в Омск?
Я работал с Виктором Петровичем в 2386 году в Нижнем Калининграде. Свой метеоприбор он к тому времени забросил - говорил что всё равно точности не хватает. Зато он считался одним из первых разработчиков машины времени - ну вы все знаете эту историю со сломанной рукой его жены, которая натолкнула на эту идею.
Он не показывается сотрудникам Роскомнадзора или аффилированным с ними лицам. Вот мы одного и вычислили!
Да ну, это ж 1 апреля! Шутка такая! Правда же?
В целом, мысль верная, но за такое и посадить могут.
Вдобавок ещё и все тесты проходят. (которые тот же Claude сам себе написал).
Вот пока что, действительно, так всё и выглядит.
Да чего там долго искать - это не утерянное знание, до сих пор народ мастерит себе повозки на дровах.
Лет 5-7 назад на хабре были пара статей от какого-то человека из Луганска, кажется, где он вполне подробно описывал как сделал себе машину с газогенератором и вполне себе хорошо ездит. Пробега хватает и мощности вполне достаточные. Сейчас что-то не смог найти эти статьи, но вот есть в гугле белорус с таким же девайсом.
С одной стороны, я понимаю что вы имеете в виду. Однако, "я бы мог с вами согласиться, но тогда мы бы оба оказались неправы" (с)
Для меня это выглядит как легитимизация неправильного подхода. И после прочтения может остаться желание оставить всё как есть: "смотри, другие так же делают". Однако, когда я объясняю что-то коллегам, я часто говорю "я сделал это вот так, но это НЕПРАВИЛЬНО, должно быть вот так, мы это должны переделать когда сможем", заводится таск в Jira и мозолит глаза.
Я согласен, вы в начале статьи постарались об этом предупредить, но я бы даже статью писать не стал, на вашем месте, простите. Я поставил минус, кажется, с "не согласен", но не видел смысла сильно объяснять свою позицию до тех пор, пока прохожий сеньор программист не выразил недоумение.
У меня на продакшене 5 серверов и сетап у них примерно как у вас - тоже есть bash-скрипт с начальными шагами. Но мне это очень не нравится, и мы планируем серьёзно это всё переделать.
Повторюсь - я сам так делаю, но считаю что это неправильно и учить такому не стоит.
В общем-то да. Но кроме этого есть более простые сценарии. Например у вас украли кошелёк с флэшкой, на которой был ключ. Пока до него доберутся и поймут что это - у вас есть как минимум несколько часов, чтобы его сменить. Менять все секреты - это уж перебор. Вдобавок, ключ желательно ротировать время от времени, чтобы случайно засвеченный бэкап трёхлетней давности его не слил..
Что касается хранения секретов - это боль. Мне не нравится ни один менеджер паролей и я уже год не спеша (времени нет) пишу свой (с картами и девушками). На продакшене секреты хранятся и используются в Docker Secrets (Swarm), а чтобы их удобнее менять - у меня самописный менеджер для Swarm их умеет подменять.
Для серверов, которые нужно пересоздавать раз в 2-3 года - можно использовать что угодно, даже просто текстовый файлик со списком софта.
Проблема со своими скриптами - и я на это уже много раз натыкался сам - в том, что через эти 2-3 года внезапно обнаруживаешь, что сами скрипты устарели. Wireguard ставится из другого репозитория.. Для установки докера в старой инструкции можно было сделать
add-apt-repository, а теперь нужно в keyrings писать ещё.. ssh слушает порт через systemd вместо конфига.. И скрипты надо править каждый раз, причём обнаруживаются все эти проблемы в тот момент, когда уже надо бы срочно всё восстановить..В нормальном плейбуке все эти обновления уже отражены и плейбук "установи докер" установит его самым правильным на текущий момент способом.
Опять же - я не критикую сам подход, но хочу указать, что рекламировать нужно не его.
Я храню в keepass. И на серверах пишу в конфиги руками если нужно.
Мне кажется очевидным, что хранить секрет в git репозитории, даже зашифрованным, очень небезопасно. Оно же всю историю коммитов хранит. Если ключ шифрования скомпрометирован, то даже если вы его смените и перешифруете секреты - предыдущие коммиты доступны со старым ключом. Разделения доступа нет - это только для одного человека с одним ключом. Если нужно временно дать доступ только на часть секретов для коллеги - это невозможно, и отозвать доступ тоже непросто. Если репозиторий не на своём сервере, а на Github - то это вообще чужое облако.. На серверах я никогда не делаю git clone чтобы не давать доступ (даже readonly). В общем, небезопасно это всё.