Временные метки файлов в Linux
Этот, вроде-бы простой на первый взгляд вопрос часто вызывает достаточно много сложностей, особенно у начинающих.
Согласно стандарту POSIX у файлов в Linux имеются три временных метки:
▫️ atime – время последнего доступа к файлу
▫️ mtime – время последней модификации содержимого файла
▫️ ctime – время последнего изменения содержимого файла или его метаданных
С первой меткой вроде бы все просто, atime обновляется при любом доступе к файлу, например, при открытии. Но если файловая система смонтирована с опцией noatime данная метка обновляться не будет.
Метка mtime меняется при изменении содержимого файла, но ее не меняют изменения метаданных, такие как изменение владельца или прав доступа или переименование.
И, наконец, ctime, которая фиксирует любое изменение файла, будь то изменение содержимого или метаданных. Хотя во многих материалах метка ctime ошибочно описывается как время последнего изменения метаданных.
Особенностью метки ctime является то, что данная метка управляется системой, в то время как atime и mtime может произвольно изменять владелец файла. Таким образом данная метка однозначно покажет нам время последнего изменения файла, в то время как mtime может содержать неверную информацию.
При этом в нормальных условиях изменение mtime всегда влечет изменение ctime, а вот изменение ctime может происходить отдельно от других временных меток.
Так переименование файла изменит atime и ctime, но не затронет mtime, а изменение прав или владельца файла отразится только на ctime.
Позвольте, скажет иной читатель, а как быть с временем создания файла? А никак, такой временной метки POSIX не предусматривает. Однако позже была добавлена еще одна временная метка – crtime – которая как раз отражает время создания файла, но она имеет некоторые особенности.
Не являясь POSIX-совместимой, данная метка была реализована на уровне файловой системы и, следовательно, хранится только в ее пределах, между системами данный атрибут не переносится.
Таким образом данная метка отражает время создания файла в текущей файловой системе и при переносе файла между файловыми системами данная метка у него изменится, в то время как остальные временные метки будут сохранены.
Это может приводить к ситуации, показанной на рисунке ниже, когда время создания файла больше, чем время его модификации.
Каким образом можно посмотреть временные метки? Используйте команду stat, например:
Строки Доступ, Модифицирован и Изменен будут соответствовать atime, mtime и ctime. Однако если мы посмотрим на свойства файла в графическом окружении, то сможем увидеть, что Изменен в этом случае соответствует mtime, что в целом верно логически, но способно внести путаницу.
Поэтому, если вы хотите получить точное значение параметра, то используйте форматирование вывода команды stat:
Как видим, вроде бы простая тема оказалась не такой уж и простой. Но, если не пытаться переносить на Linux опыт других систем, а внимательно изучить теорию, то все станет на свои места и вы будете прекрасно понимать, что значит та или иная временная метка.
Этот, вроде-бы простой на первый взгляд вопрос часто вызывает достаточно много сложностей, особенно у начинающих.
Согласно стандарту POSIX у файлов в Linux имеются три временных метки:
▫️ atime – время последнего доступа к файлу
▫️ mtime – время последней модификации содержимого файла
▫️ ctime – время последнего изменения содержимого файла или его метаданных
С первой меткой вроде бы все просто, atime обновляется при любом доступе к файлу, например, при открытии. Но если файловая система смонтирована с опцией noatime данная метка обновляться не будет.
Метка mtime меняется при изменении содержимого файла, но ее не меняют изменения метаданных, такие как изменение владельца или прав доступа или переименование.
И, наконец, ctime, которая фиксирует любое изменение файла, будь то изменение содержимого или метаданных. Хотя во многих материалах метка ctime ошибочно описывается как время последнего изменения метаданных.
Особенностью метки ctime является то, что данная метка управляется системой, в то время как atime и mtime может произвольно изменять владелец файла. Таким образом данная метка однозначно покажет нам время последнего изменения файла, в то время как mtime может содержать неверную информацию.
При этом в нормальных условиях изменение mtime всегда влечет изменение ctime, а вот изменение ctime может происходить отдельно от других временных меток.
Так переименование файла изменит atime и ctime, но не затронет mtime, а изменение прав или владельца файла отразится только на ctime.
Позвольте, скажет иной читатель, а как быть с временем создания файла? А никак, такой временной метки POSIX не предусматривает. Однако позже была добавлена еще одна временная метка – crtime – которая как раз отражает время создания файла, но она имеет некоторые особенности.
Не являясь POSIX-совместимой, данная метка была реализована на уровне файловой системы и, следовательно, хранится только в ее пределах, между системами данный атрибут не переносится.
Таким образом данная метка отражает время создания файла в текущей файловой системе и при переносе файла между файловыми системами данная метка у него изменится, в то время как остальные временные метки будут сохранены.
Это может приводить к ситуации, показанной на рисунке ниже, когда время создания файла больше, чем время его модификации.
Каким образом можно посмотреть временные метки? Используйте команду stat, например:
stat file.txt
Строки Доступ, Модифицирован и Изменен будут соответствовать atime, mtime и ctime. Однако если мы посмотрим на свойства файла в графическом окружении, то сможем увидеть, что Изменен в этом случае соответствует mtime, что в целом верно логически, но способно внести путаницу.
Поэтому, если вы хотите получить точное значение параметра, то используйте форматирование вывода команды stat:
stat -c ‘%x’ file.txt - atime
stat -c ‘%y’ file.txt - mtime
stat -c ‘%z’ file.txt - ctime
Как видим, вроде бы простая тема оказалась не такой уж и простой. Но, если не пытаться переносить на Linux опыт других систем, а внимательно изучить теорию, то все станет на свои места и вы будете прекрасно понимать, что значит та или иная временная метка.
👍32👌1
zaninpz1.pdf
1.1 MB
Я просто оставлю это здесь и даже не буду подробно комментировать, так как далек от нынешнего высшего образования.
Но в наши времена сей опус с трудом потянул бы на курсовую, а тут как-никак выпускная работа (читай диплом).
И если теперь для дипломной работы достаточно просто поднять OpenVPN на двух узлах, то становится печально от такого уровня "образования".
Но в наши времена сей опус с трудом потянул бы на курсовую, а тут как-никак выпускная работа (читай диплом).
И если теперь для дипломной работы достаточно просто поднять OpenVPN на двух узлах, то становится печально от такого уровня "образования".
😱25👍8🤔6👀3
erid: LjN8KQY2w
Практический семинар для системных администраторов
Расширьте свои знания на открытом уроке «LVM: снапшоты, перенос данных, надежное хранение» от OTUS
📅 Занятие состоится 27 ноября в 20:00 мск и будет приурочено к старту курса «Administrator Linux. Professional»
🔥 Преподаватель Андрей Буранов — системный администратор в VK, работает с операционной системой Linux более 7 лет
Открытый урок — это отличная возможность бесплатно протестировать формат обучения и задать преподавателю любые вопросы в режиме реального времени. После урока вы сможете стать студентом курса в рассрочку
Регистрируйтесь на мероприятие прямо сейчас: https://otus.pw/cYrV/
На сайте вы также можете пройти короткое тестирование и узнать насколько вы соответствуете требованиям рынка
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
Практический семинар для системных администраторов
Расширьте свои знания на открытом уроке «LVM: снапшоты, перенос данных, надежное хранение» от OTUS
📅 Занятие состоится 27 ноября в 20:00 мск и будет приурочено к старту курса «Administrator Linux. Professional»
🔥 Преподаватель Андрей Буранов — системный администратор в VK, работает с операционной системой Linux более 7 лет
Открытый урок — это отличная возможность бесплатно протестировать формат обучения и задать преподавателю любые вопросы в режиме реального времени. После урока вы сможете стать студентом курса в рассрочку
Регистрируйтесь на мероприятие прямо сейчас: https://otus.pw/cYrV/
На сайте вы также можете пройти короткое тестирование и узнать насколько вы соответствуете требованиям рынка
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
👎3👍2
Использование команды ip в Linux
Многие системные администраторы знали и использовали команду ifconfig, но теперь она объявлена устаревшей и вместо нее предлагаются иные инструменты. Один из них – команда ip, работу с которой мы сегодня рассмотрим.
Думаю, многим знакома команда просмотра IP адресов узла:
Но это сокращенная запись от:
Также можно использовать более короткую:
Используя полный вид записи, вы можете уточнить вывод команды, например, посмотреть адрес только у интересующего интерфейса:
Чтобы посмотреть только IPv4 или IPv6 адреса используйте дополнительные ключи -4 или -6
При помощи ip можно не только смотреть IP-адреса, но и управлять ими, так чтобы добавить адрес на интерфейс используйте:
Для удаления:
Также вы можете управлять состоянием самого интерфейса:
или
Кроме этого, команда ip позволяет работать с маршрутами, для просмотра таблицы маршрутизации достаточно выполнить:
или
Для ограничения вывода протоколами IPv4 или IPv6 также можете использовать ключи -4 или -6
При необходимости мы можем легко добавить или удалить маршрут командами:
и
При этом следует помнить, что добавленные таким образом маршруты не сохраняются при перезагрузке системы.
Многие системные администраторы знали и использовали команду ifconfig, но теперь она объявлена устаревшей и вместо нее предлагаются иные инструменты. Один из них – команда ip, работу с которой мы сегодня рассмотрим.
Думаю, многим знакома команда просмотра IP адресов узла:
ip a
Но это сокращенная запись от:
ip address show
Также можно использовать более короткую:
ip addr show
Используя полный вид записи, вы можете уточнить вывод команды, например, посмотреть адрес только у интересующего интерфейса:
ip addr show ens33
Чтобы посмотреть только IPv4 или IPv6 адреса используйте дополнительные ключи -4 или -6
ip -4 addr show ens33
При помощи ip можно не только смотреть IP-адреса, но и управлять ими, так чтобы добавить адрес на интерфейс используйте:
ip addr add 192.168.233.144/24 dev ens33
Для удаления:
ip addr del 192.168.233.144/24 dev ens33
Также вы можете управлять состоянием самого интерфейса:
ip link set ens33 up
или
ip link set ens33 down
Кроме этого, команда ip позволяет работать с маршрутами, для просмотра таблицы маршрутизации достаточно выполнить:
ip r
или
ip route
Для ограничения вывода протоколами IPv4 или IPv6 также можете использовать ключи -4 или -6
При необходимости мы можем легко добавить или удалить маршрут командами:
ip route add 192.168.233.0/24 dev ens33 metric 100
и
ip route delete 192.168.233.0/24 dev ens33
При этом следует помнить, что добавленные таким образом маршруты не сохраняются при перезагрузке системы.
👍48👀2
Демилитаризованная зона (DMZ) в современных сетях
Концепция DMZ известна давно, предполагалось, что это будет отдельный сегмент сети, отделенный брандмауэрами как от внешней, так и от внутренних сетей, и в нем будут размещены потенциально небезопасные сервисы.
Т.е. мы собирали в таком сегменте все сервисы, имеющие доступ из внешнего мира, и ограничивали их собственной подсетью, серьезно ограничив или вообще запретив возможность доступа к внутренней сети.
Для узлов локальной сети все узлы DMZ также рассматривались как внешние, со всеми вытекающими выводами в сфере безопасности.
Данный подход позволял в случае взлома или компрометации внешнего сервиса ограничить злоумышленника рамками DMZ и избежать их проникновения за периметр основной сети предприятия.
В целом такой подход работает и сегодня для классических служб, таких как веб-сервер или электронная почта. Помещая такие сервера в отдельный сегмент и закрыв их брандмауэром как от внешней, так и внутренней сети мы повышаем как безопасность внутри периметра, так и безопасность самих вынесенных в DMZ сервисов.
Но современные реалии вносят новые угрозы. Например, понятие периметра сегодня оказалось серьезно размыто и далеко не каждая внутренняя сеть может считаться безопасной.
Причин тому несколько. Начиная с собственных устройств сотрудников, которые они используют в рабочем процессе (чаще всего телефоны) и которые имеют доступ к сети предприятия и заканчивая средствами удаленного доступа, которые используются не только сотрудниками, но и подрядчиками и партнерами.
Все это приводит к тому, что внутренняя сеть перестает быть безопасным и доверенным местом, поэтому политика нормально открытого брандмауэра внутри таких сетей перестает быть приемлемой.
Можно, конечно, настраивать брандмауэр на каждом сервере отдельно, но это утомительно и всегда есть возможность что-то упустить. Поэтому более интересной является мысль вынести внутренние сервера в отдельную DMZ и тем самым поместить их в доверенную среду, которую затем можно просто закрыть от внутренней сети межсетевым экраном.
Получается, как бы немного наоборот. Если классическая DMZ изолировала от доверенной локальной сети потенциально небезопасные узлы, то в нашем случае DMZ защищает сервера от потенциальных угроз из внутренней сети.
В принципе данный подход уже давно используется там, где работают с конфиденциальной и секретной информацией, когда содержащие такие данные узлы выносят в изолированные участки сети с ограниченным доступом.
Еще одна серьезная угроза – это удаленщики, явление в последние годы массовое и практически неконтролируемое. Потому как вы не можете сказать кто именно сейчас на том конце соединения: сам сотрудник или его малолетний ребенок, а может он вообще забыл ноутбук где-нибудь в кафе.
И все что защищает VPN – это только сам канал доступа, от некорректных действий со стороны пользователя это не спасет. Поэтому мы последние несколько лет практикуем дополнительные DMZ именно для VPN-пользователей.
В этом случае все удаленщики также помещаются в отдельный сегмент, который изолирован как от внешней, так и от внутренней сети, а доступ к необходимым сервисам осуществляется посредством проброса портов или обратным проксированием.
При этом никаких сервисов в этой зоне быть не должно, только удаленщики и только средства доступа к необходимым им сервисам внутри сети или в отдельных DMZ.
Таким образом сегодня понятие DMZ серьезно расширилось и теперь не просто предусматривает некую отдельную подсеть для потенциально ненадежных сервисов, а подразумевает разделение сети на сегменты с разным уровнем безопасности и доверия, совершенно безотносительного того, являются помещенные в DMZ сервисы внешними или внутренними.
А в ряде случаев и вовсе не предполагает размещение там каких-либо сервисов, используя DMZ для изоляции ненадежных пользователей.
Концепция DMZ известна давно, предполагалось, что это будет отдельный сегмент сети, отделенный брандмауэрами как от внешней, так и от внутренних сетей, и в нем будут размещены потенциально небезопасные сервисы.
Т.е. мы собирали в таком сегменте все сервисы, имеющие доступ из внешнего мира, и ограничивали их собственной подсетью, серьезно ограничив или вообще запретив возможность доступа к внутренней сети.
Для узлов локальной сети все узлы DMZ также рассматривались как внешние, со всеми вытекающими выводами в сфере безопасности.
Данный подход позволял в случае взлома или компрометации внешнего сервиса ограничить злоумышленника рамками DMZ и избежать их проникновения за периметр основной сети предприятия.
В целом такой подход работает и сегодня для классических служб, таких как веб-сервер или электронная почта. Помещая такие сервера в отдельный сегмент и закрыв их брандмауэром как от внешней, так и внутренней сети мы повышаем как безопасность внутри периметра, так и безопасность самих вынесенных в DMZ сервисов.
Но современные реалии вносят новые угрозы. Например, понятие периметра сегодня оказалось серьезно размыто и далеко не каждая внутренняя сеть может считаться безопасной.
Причин тому несколько. Начиная с собственных устройств сотрудников, которые они используют в рабочем процессе (чаще всего телефоны) и которые имеют доступ к сети предприятия и заканчивая средствами удаленного доступа, которые используются не только сотрудниками, но и подрядчиками и партнерами.
Все это приводит к тому, что внутренняя сеть перестает быть безопасным и доверенным местом, поэтому политика нормально открытого брандмауэра внутри таких сетей перестает быть приемлемой.
Можно, конечно, настраивать брандмауэр на каждом сервере отдельно, но это утомительно и всегда есть возможность что-то упустить. Поэтому более интересной является мысль вынести внутренние сервера в отдельную DMZ и тем самым поместить их в доверенную среду, которую затем можно просто закрыть от внутренней сети межсетевым экраном.
Получается, как бы немного наоборот. Если классическая DMZ изолировала от доверенной локальной сети потенциально небезопасные узлы, то в нашем случае DMZ защищает сервера от потенциальных угроз из внутренней сети.
В принципе данный подход уже давно используется там, где работают с конфиденциальной и секретной информацией, когда содержащие такие данные узлы выносят в изолированные участки сети с ограниченным доступом.
Еще одна серьезная угроза – это удаленщики, явление в последние годы массовое и практически неконтролируемое. Потому как вы не можете сказать кто именно сейчас на том конце соединения: сам сотрудник или его малолетний ребенок, а может он вообще забыл ноутбук где-нибудь в кафе.
И все что защищает VPN – это только сам канал доступа, от некорректных действий со стороны пользователя это не спасет. Поэтому мы последние несколько лет практикуем дополнительные DMZ именно для VPN-пользователей.
В этом случае все удаленщики также помещаются в отдельный сегмент, который изолирован как от внешней, так и от внутренней сети, а доступ к необходимым сервисам осуществляется посредством проброса портов или обратным проксированием.
При этом никаких сервисов в этой зоне быть не должно, только удаленщики и только средства доступа к необходимым им сервисам внутри сети или в отдельных DMZ.
Таким образом сегодня понятие DMZ серьезно расширилось и теперь не просто предусматривает некую отдельную подсеть для потенциально ненадежных сервисов, а подразумевает разделение сети на сегменты с разным уровнем безопасности и доверия, совершенно безотносительного того, являются помещенные в DMZ сервисы внешними или внутренними.
А в ряде случаев и вовсе не предполагает размещение там каких-либо сервисов, используя DMZ для изоляции ненадежных пользователей.
👍50🔥2👎1
Веселые картинки
Сегодня в обсуждения один из читателей притащил ссылку на «хороший материал по сегментации» со ссылкой на многим известный репозиторий на гитхабе: https://github.com/sergiomarotco/Network-segmentation-cheat-sheet
К сожалению, я не могу считать данный материал хорошим и тем более рекомендовать его, хотя автор и ссылается на некие «лучшие практики».
Почему? Начнем издалека, с принципов построения обучающих материалов. Хороший обучающий материал, тем более схема или диаграмма должна быть способна сразу донести до обучаемого основные принципы и ключевые моменты изучаемой темы.
Ничего лишнего, никаких ненужных подробностей на схеме быть не должно, они только размывают внимание на второстепенные вещи, путают и вызывают лишние вопросы.
Вместо этого нас встречает перегруженная значками и связями схема, которая ничего не поясняет, а только еще больше запутывает. Сразу возникает масса вопросов, причем абсолютно к теме сегментации не относящихся.
В целом, человек немного «теме» со схемами первых уровней за пять-десять минут вождения по ним пальцем разберется и здравое зерно там есть. Но для начинающего это будет просто темный лес: ничего не понятно, но очень интересно. Еще хуже если последуют попытки слепого копирования.
Но все можно было сделать гораздо проще, убрать все эти ненужные подробности и связи, оставив только самые широкие мазки: вот у нас продуктовые сервера, вот поддержка продуктовой части, вот пользовательская часть, вот поддержка пользовательской части, вот управление, вот сетевое оборудование, вот DMZ.
Ну и хорошую пояснительную записку, поясняющую что именно сделано, для чего и почему.
А текущие схемы сильно напоминают мне казуальные игрушки, где нужно копать-строить да отбиваться от толп монстров, где каждая следующая толпа сильнее предыдущей.
А все эти линии напоминают производственные цепочки, которые могут быть неоптимальны и запутаны, но так «исторически сложились». И вообще переделать пока никак нельзя, а то не отобьемся.
И автор схем только подливает масла в огонь, указывая в описании к первому уровню что вам понадобится больше средств защиты информации или потребуется переход на второй уровень.
Знакомо? Чтобы отбиваться от монстров вам нужно все больше и больше стреляющих башен, но башни стоят ресурсов, их надо где-то строить, и монстры начинают сносить их на ура. Хочешь - не хочешь, а уровень придется повышать.
Причем складывается такое впечатление, что автор схем отринул реальность и занялся сегментацией ради сегментации. Уже на третьем уровне он вводит системы обнаружения инцидентов и реагирования на них, вскользь упомянув «что вам понадобится штат 10-20 человек безопасников».
Серьезно? Организации такого уровня, где риски ИБ выходят на уровень операционных рисков явно не будут искать схемы по гитам и на этом можно бы было закончить. Но фантазия автора устремляется только вперед.
Хотя для простого пользователя все эти многочисленные возникшие объекты с непонятными аббревиатурами ничем не будут отличаться от генератора маны, школы магов и чего там еще надо построить для того, чтобы башни начали стрелять электричеством.
Ну и последняя схема – просто апофеоз:
Теперь злоумышленник не сможет атаковать производственную сеть, поскольку теперь потенциально скомпрометированная рабочая станция в корпоративной сети принципиально не имеет доступа к производственной сети. Связанные проблемы:
Отдельные рабочие станции для доступа к производственной сети – да, теперь у вас на рабочем столе будет 2 компьютера;
Да, именно к этому бизнес и стремился… И деньги на него, наверное, с неба падают.
Вопросы разумной достаточности здесь не поднимаются в принципе. Автор рассматривает сегментацию с позиции типичного гика в вакууме. Хотя для того, чтобы закрыть в садовом домике две лопаты и ржавые грабли достаточно замка за 100 рублей и ставить сейфовую дверь с укреплением коробки там явно излишне.
В общем материал забавный, красивый. Но практической пользы – близко к нулю.
Сегодня в обсуждения один из читателей притащил ссылку на «хороший материал по сегментации» со ссылкой на многим известный репозиторий на гитхабе: https://github.com/sergiomarotco/Network-segmentation-cheat-sheet
К сожалению, я не могу считать данный материал хорошим и тем более рекомендовать его, хотя автор и ссылается на некие «лучшие практики».
Почему? Начнем издалека, с принципов построения обучающих материалов. Хороший обучающий материал, тем более схема или диаграмма должна быть способна сразу донести до обучаемого основные принципы и ключевые моменты изучаемой темы.
Ничего лишнего, никаких ненужных подробностей на схеме быть не должно, они только размывают внимание на второстепенные вещи, путают и вызывают лишние вопросы.
Вместо этого нас встречает перегруженная значками и связями схема, которая ничего не поясняет, а только еще больше запутывает. Сразу возникает масса вопросов, причем абсолютно к теме сегментации не относящихся.
В целом, человек немного «теме» со схемами первых уровней за пять-десять минут вождения по ним пальцем разберется и здравое зерно там есть. Но для начинающего это будет просто темный лес: ничего не понятно, но очень интересно. Еще хуже если последуют попытки слепого копирования.
Но все можно было сделать гораздо проще, убрать все эти ненужные подробности и связи, оставив только самые широкие мазки: вот у нас продуктовые сервера, вот поддержка продуктовой части, вот пользовательская часть, вот поддержка пользовательской части, вот управление, вот сетевое оборудование, вот DMZ.
Ну и хорошую пояснительную записку, поясняющую что именно сделано, для чего и почему.
А текущие схемы сильно напоминают мне казуальные игрушки, где нужно копать-строить да отбиваться от толп монстров, где каждая следующая толпа сильнее предыдущей.
А все эти линии напоминают производственные цепочки, которые могут быть неоптимальны и запутаны, но так «исторически сложились». И вообще переделать пока никак нельзя, а то не отобьемся.
И автор схем только подливает масла в огонь, указывая в описании к первому уровню что вам понадобится больше средств защиты информации или потребуется переход на второй уровень.
Знакомо? Чтобы отбиваться от монстров вам нужно все больше и больше стреляющих башен, но башни стоят ресурсов, их надо где-то строить, и монстры начинают сносить их на ура. Хочешь - не хочешь, а уровень придется повышать.
Причем складывается такое впечатление, что автор схем отринул реальность и занялся сегментацией ради сегментации. Уже на третьем уровне он вводит системы обнаружения инцидентов и реагирования на них, вскользь упомянув «что вам понадобится штат 10-20 человек безопасников».
Серьезно? Организации такого уровня, где риски ИБ выходят на уровень операционных рисков явно не будут искать схемы по гитам и на этом можно бы было закончить. Но фантазия автора устремляется только вперед.
Хотя для простого пользователя все эти многочисленные возникшие объекты с непонятными аббревиатурами ничем не будут отличаться от генератора маны, школы магов и чего там еще надо построить для того, чтобы башни начали стрелять электричеством.
Ну и последняя схема – просто апофеоз:
Теперь злоумышленник не сможет атаковать производственную сеть, поскольку теперь потенциально скомпрометированная рабочая станция в корпоративной сети принципиально не имеет доступа к производственной сети. Связанные проблемы:
Отдельные рабочие станции для доступа к производственной сети – да, теперь у вас на рабочем столе будет 2 компьютера;
Да, именно к этому бизнес и стремился… И деньги на него, наверное, с неба падают.
Вопросы разумной достаточности здесь не поднимаются в принципе. Автор рассматривает сегментацию с позиции типичного гика в вакууме. Хотя для того, чтобы закрыть в садовом домике две лопаты и ржавые грабли достаточно замка за 100 рублей и ставить сейфовую дверь с укреплением коробки там явно излишне.
В общем материал забавный, красивый. Но практической пользы – близко к нулю.
👍9😁9🤔2🤝1
IP-калькулятор в консоли
Любой администратор рано или поздно сталкивается с необходимостью рассчитать ту или иную сеть по количеству хостов или маске. Обычно для этих целей используются IP-калькуляторы, чаше всего в виде онлайн сервисов.
Но для любителей работы в консоли и не только есть прекрасная альтернатива в виде консольного приложения, оно есть в стандартных репозиториях и для его установки просто введите:
Использовать его тоже очень просто, достаточно указать адрес и маску. Маску можно указывать всеми доступными вариантами:
Также вы можете сразу расширить или сузить сеть и сразу увидеть в какую сеть большего размера попадет ваша подсеть или, наоборот, на какие подсети она будет разделена:
Еще одна часто встречающаяся задача – нарезать некоторое адресное пространство на несколько подсетей с заданным количеством хостов. Все просто, указываем сеть или адрес нужной сети и перечисляем нужные пулы по количеству хостов:
Результат можно посмотреть на картинке ниже. Калькулятор поделил сеть на несколько подсетей с наиболее подходящим количеством хостов.
Кроме обычной информации калькулятор таже выводит все значения в двоичном виде, что довольно ценно для начинающих, так как позволяет собственными глазами увидеть, что такое маска и почему при указанном значении маски максимальные и минимальные адреса сети будут именно такими, а не другими.
Более редкая, но тоже нужная задача – деагрегация диапазона адресов. Это если нам нужно разложить некое адресное пространство на набор сетей. Задача не самая простая, но калькулятор успешно справляется и с ней, просто укажите диапазон адресов, остальное он все сделает сам.
Никакого заумного синтаксиса, никаких ключей. Все просто, понятно, наглядно. И не надо никаких онлайн сервисов, достаточно просто запустить терминал.
Любой администратор рано или поздно сталкивается с необходимостью рассчитать ту или иную сеть по количеству хостов или маске. Обычно для этих целей используются IP-калькуляторы, чаше всего в виде онлайн сервисов.
Но для любителей работы в консоли и не только есть прекрасная альтернатива в виде консольного приложения, оно есть в стандартных репозиториях и для его установки просто введите:
apt install ipcalc
Использовать его тоже очень просто, достаточно указать адрес и маску. Маску можно указывать всеми доступными вариантами:
ipcalc 192.168.2.52/24
ipcalc 192.168.2.52/255.255.255.0
ipcalc 192.168.2.52 255.255.255.0
Также вы можете сразу расширить или сузить сеть и сразу увидеть в какую сеть большего размера попадет ваша подсеть или, наоборот, на какие подсети она будет разделена:
ipcalc 192.168.2.52 /24 /22
ipcalc 192.168.2.52 /24 /25
Еще одна часто встречающаяся задача – нарезать некоторое адресное пространство на несколько подсетей с заданным количеством хостов. Все просто, указываем сеть или адрес нужной сети и перечисляем нужные пулы по количеству хостов:
ipcalc 10.8.8.1 -s 120 55 25
Результат можно посмотреть на картинке ниже. Калькулятор поделил сеть на несколько подсетей с наиболее подходящим количеством хостов.
Кроме обычной информации калькулятор таже выводит все значения в двоичном виде, что довольно ценно для начинающих, так как позволяет собственными глазами увидеть, что такое маска и почему при указанном значении маски максимальные и минимальные адреса сети будут именно такими, а не другими.
Более редкая, но тоже нужная задача – деагрегация диапазона адресов. Это если нам нужно разложить некое адресное пространство на набор сетей. Задача не самая простая, но калькулятор успешно справляется и с ней, просто укажите диапазон адресов, остальное он все сделает сам.
ipcalc 10.8.8.125 – 10.9.2.251
Никакого заумного синтаксиса, никаких ключей. Все просто, понятно, наглядно. И не надо никаких онлайн сервисов, достаточно просто запустить терминал.
👍62⚡1❤1
Про успешный успех
Есть в наши дни такое развлечение: рассказывать про успешный успех. При этом хватает и рассказчиков, и слушателей.
Одни самозабвенно рассказывают, как они прорывались сквозь тернии к звездам, преодолевали, превозмогали и теперь вот такие успешные купаются в лучах заслуженной славы.
Есть и иная разновидность жанра – рассказывать про то, как вопреки всему профукали все полимеры, но неоднократно подчеркивая при этом, что получили при этом большой опыт и готовы поделиться им со слушателями.
При этом и те и другие порываются учить и редко делают это бесплатно.
В общем, после очередной встречи с очередными учителями успешного успеха мы немного задумались по этому поводу и пришли к некоторым выводам, которые могут показаться интересными нашим читателям.
Итак, что такое успех проекта и на основании каких показателей можно сделать такие выводы?
Начнем с очевидного, если проект уткнулся лицом в асфальт еще не достигнув финиша, это говорит только об одном – вы полезли не в свое дело, туда, где вы ничего не знаете и не умеете и вам тупо не хватило ума понять куда вы лезете.
Никакого ценного опыта там нет, разве что только наглядный пример как делать не надо.
А вот следует ли считать проект, дошедший до финиша успешным – это большой вопрос.
С одной стороны, все формальные требования выполнены? Выполнены. Акты подписаны? Подписаны. Деньги получены? Получены. Ну так, наверное, все хорошо?
Наверное. И если рассматривать сугубо финансовую сторону вопроса. На самом деле для проекта все только начинается. Мы же не судим об успешности человека в момент его рождения? А почему для проекта должны быть исключения?
На наш взгляд существует единственная достоверная метрика успешности проекта – все реализованные в нем разработки или большая их часть используются в повседневной деятельности предприятия и отказ от них будет связан с реальным ухудшением производственных процессов.
Только в этом случае заказчик будет удовлетворен сотрудничеством и нацелен его продолжать.
Иначе он может даже ничего не сказать, но просто не будет использовать то, за что отданы деньги и больше не станет к вам обращаться.
Все это справедливо и для внутренних проектов. Если от того, что вы так усердно внедряли и на что тратили деньги предприятия нет реального выхлопа, то вам могут в целом ничего не сказать, но поставят там, где надо пометочку и именно эта пометочка может стать реальной помехой для дальнейшего карьерного роста.
Как показывает наша практика, практически все успешные проекты развивались постепенно, по мере возникновения реальных проблем и их решения. В этом случае все изменения вносились органично и быстро врастали в бизнес-процессы предприятия, формируя некоторые внутренние стандарты.
И, наоборот, попытка быстро внедрить сложную автоматизацию редко заканчивается успехом, а чаще всего даст возможность успешно закончить проект тем, кто придет вслед за вами. И сможет-таки, за дополнительные деньги подружить все что вы успели наворотить с реальными бизнес-процессами.
Поэтому, когда мне рассказывают истории успешного успеха как за несколько месяцев автоматизировали с нуля чего-то там, то я могу сказать только одно – не верю. Либо на самом деле все было совсем не так.
Нельзя быстро и не ломая бизнес-процессов сделать так, что там, где сегодня компьютер первый раз увидели через полгода будет многоуровневый учет и отчетность, обмены и интеграции, и полный контроль с автоматизацией.
Нет, иногда можно, но только через слом всего и вся и преодоление противодействия на самых разных уровнях. Работающий бизнес на такое может решиться либо сугубо сдуру, либо от безысходности.
Либо мы просто формально внедряем то, чем просто не будут пользоваться. Со всеми вытекающими в последствии.
Поэтому, слушая рассказы про успешный успех всегда помните, что это художественный жанр, а успешность любого проекта можно оценить только на достаточно большом временном отрезке. И основной критерий успеха – это практика. Если то, что вы сделали используют – значит проект успешен.
Есть в наши дни такое развлечение: рассказывать про успешный успех. При этом хватает и рассказчиков, и слушателей.
Одни самозабвенно рассказывают, как они прорывались сквозь тернии к звездам, преодолевали, превозмогали и теперь вот такие успешные купаются в лучах заслуженной славы.
Есть и иная разновидность жанра – рассказывать про то, как вопреки всему профукали все полимеры, но неоднократно подчеркивая при этом, что получили при этом большой опыт и готовы поделиться им со слушателями.
При этом и те и другие порываются учить и редко делают это бесплатно.
В общем, после очередной встречи с очередными учителями успешного успеха мы немного задумались по этому поводу и пришли к некоторым выводам, которые могут показаться интересными нашим читателям.
Итак, что такое успех проекта и на основании каких показателей можно сделать такие выводы?
Начнем с очевидного, если проект уткнулся лицом в асфальт еще не достигнув финиша, это говорит только об одном – вы полезли не в свое дело, туда, где вы ничего не знаете и не умеете и вам тупо не хватило ума понять куда вы лезете.
Никакого ценного опыта там нет, разве что только наглядный пример как делать не надо.
А вот следует ли считать проект, дошедший до финиша успешным – это большой вопрос.
С одной стороны, все формальные требования выполнены? Выполнены. Акты подписаны? Подписаны. Деньги получены? Получены. Ну так, наверное, все хорошо?
Наверное. И если рассматривать сугубо финансовую сторону вопроса. На самом деле для проекта все только начинается. Мы же не судим об успешности человека в момент его рождения? А почему для проекта должны быть исключения?
На наш взгляд существует единственная достоверная метрика успешности проекта – все реализованные в нем разработки или большая их часть используются в повседневной деятельности предприятия и отказ от них будет связан с реальным ухудшением производственных процессов.
Только в этом случае заказчик будет удовлетворен сотрудничеством и нацелен его продолжать.
Иначе он может даже ничего не сказать, но просто не будет использовать то, за что отданы деньги и больше не станет к вам обращаться.
Все это справедливо и для внутренних проектов. Если от того, что вы так усердно внедряли и на что тратили деньги предприятия нет реального выхлопа, то вам могут в целом ничего не сказать, но поставят там, где надо пометочку и именно эта пометочка может стать реальной помехой для дальнейшего карьерного роста.
Как показывает наша практика, практически все успешные проекты развивались постепенно, по мере возникновения реальных проблем и их решения. В этом случае все изменения вносились органично и быстро врастали в бизнес-процессы предприятия, формируя некоторые внутренние стандарты.
И, наоборот, попытка быстро внедрить сложную автоматизацию редко заканчивается успехом, а чаще всего даст возможность успешно закончить проект тем, кто придет вслед за вами. И сможет-таки, за дополнительные деньги подружить все что вы успели наворотить с реальными бизнес-процессами.
Поэтому, когда мне рассказывают истории успешного успеха как за несколько месяцев автоматизировали с нуля чего-то там, то я могу сказать только одно – не верю. Либо на самом деле все было совсем не так.
Нельзя быстро и не ломая бизнес-процессов сделать так, что там, где сегодня компьютер первый раз увидели через полгода будет многоуровневый учет и отчетность, обмены и интеграции, и полный контроль с автоматизацией.
Нет, иногда можно, но только через слом всего и вся и преодоление противодействия на самых разных уровнях. Работающий бизнес на такое может решиться либо сугубо сдуру, либо от безысходности.
Либо мы просто формально внедряем то, чем просто не будут пользоваться. Со всеми вытекающими в последствии.
Поэтому, слушая рассказы про успешный успех всегда помните, что это художественный жанр, а успешность любого проекта можно оценить только на достаточно большом временном отрезке. И основной критерий успеха – это практика. Если то, что вы сделали используют – значит проект успешен.
👍43🔥6👎3
Войти в айти
Был сегодня в гостях у знакомых и сразу, чуть ли не с порога первый вопрос – как сейчас лучше войти в айти. Ну да понятно, у них сын весной школу будет заканчивать и вопрос выбора будущей профессии стоит остро.
Посидел, попил чая, с будущим коллегой побеседовал и не увидел у него вообще ни желания, ни интереса, ни каких бы там ни было способностей к этому делу.
Спрашиваю, а зачем в айти то, не самая простая отрасль, как никак, да еще и постоянного самообразования требует.
На что услышал, мол ладно тебе, все равно у айтишников самые высокие зарплаты и работают в тепле и уюте, сидя за компьютером, а еще можно удаленно из дома работать.
В целом они в чем-то правы и даже у начинающего айтишника зарплата если не будет самой высокой по рынку, то все равно будет выше, чем у начинающих в других отраслях.
И если с нашей, отраслевой точки зрения, зарплаты отдельных юных падаванов невелики, то с точки зрения широких народных масс – они достаточно высоки, особенно за то, что эти самые айтишники сидят в тепле и ничего не делают.
Поэтому можно говорить, что в обществе давно сложилось понимание айти как некой синекуры, куда надо только попасть, а потом катайся как сыр в масле. На самом деле все конечно сложнее, но мнение уже сложилось.
Масла в огонь подбавляют и всевозможные курсы, и даже государственные программы по переквалификации самых широких народных масс населения в айтишников.
Государство понять можно, с нынешними темпами цифровизации и импортозамещения ему срочно нужны специалисты нижнего звена, в достаточном для их массового использования количестве.
Плюс айти всячески популяризуется у молодого поколения, о чем мы только что писали выше.
Нынешние высокие заработные платы в IT обусловлены двумя вещами: дефицитом специалистов и достаточно высокой добавочной стоимостью, таким специалистом производимой.
Но и трудятся такие специалисты преимущественно в коммерческой сфере, где никто терпеть лентяев и дураков не будет: или ты работаешь и получаешь нормальные деньги или идешь на улицу.
Войти в такое айти просто так сложно, какие бы дипломы и корочки у тебя не были. В коммерции на диплом смотрят в последнюю очередь. Ты или умеешь и делаешь, либо не умеешь и проходишь мимо и неважно кто-то по специальности: программист или ветеринар.
А вот в госсекторе все по-иному, там можно годами ничего не делать, просто имитируя рабочий процесс и красиво отчитываясь наверх, плюс присутствуют достаточно специфичные взаимоотношения, которые лучше всего характеризуются поговоркой: «я начальник – ты дурак, ты начальник – я дурак».
Нормальные специалисты в госсектор не спешат. Частично из-за невысоких по отраслевым меркам зарплат, а частично из-за специфики рабочих отношений (скажем так). А кто и прибивается – так ненадолго, ну или в случае, если больше никуда не берут.
Поэтому именно государству сегодня выгодно выбросить на рынок большое количество начинающих айтишников. Которые, прекрасно понимая сами, что айтишники они «ненастоящие» не будут страдать излишними амбициями и пойдут туда, где тепло, светло и деньги платят, т.е. преимущественно в госсектор.
Хотя кто-то, возможно, и откроет в себе новые способности, но это будут именно штучные случаи. Аналогичный эффект даст и массовый приток молодежи на айти специальности. Появится обширный рынок молодых специалистов, хотя и невысокой квалификации.
А что это значит? А это значит, что уровень зарплаты в этом сегменте резко пойдет вниз, по-другому никак, если по рынку труда бегают стада молодых (и не очень) айтишников, желающих просто найти работу по специальности.
Повлияет ли это на уровень зарплат в отрасли в целом? Нет. Опытные специалисты как были, так и останутся востребованы. А вот существующий сейчас перекос, когда даже молодой и зеленый айтишник получает выше среднего – выправит.
А вообще история повторяется. В начале нулевых модно было быть юристом. И где сейчас все эти стада молодых юристов? А хороших что тогда, что сейчас приходится поискать и получают они более чем достойно.
Был сегодня в гостях у знакомых и сразу, чуть ли не с порога первый вопрос – как сейчас лучше войти в айти. Ну да понятно, у них сын весной школу будет заканчивать и вопрос выбора будущей профессии стоит остро.
Посидел, попил чая, с будущим коллегой побеседовал и не увидел у него вообще ни желания, ни интереса, ни каких бы там ни было способностей к этому делу.
Спрашиваю, а зачем в айти то, не самая простая отрасль, как никак, да еще и постоянного самообразования требует.
На что услышал, мол ладно тебе, все равно у айтишников самые высокие зарплаты и работают в тепле и уюте, сидя за компьютером, а еще можно удаленно из дома работать.
В целом они в чем-то правы и даже у начинающего айтишника зарплата если не будет самой высокой по рынку, то все равно будет выше, чем у начинающих в других отраслях.
И если с нашей, отраслевой точки зрения, зарплаты отдельных юных падаванов невелики, то с точки зрения широких народных масс – они достаточно высоки, особенно за то, что эти самые айтишники сидят в тепле и ничего не делают.
Поэтому можно говорить, что в обществе давно сложилось понимание айти как некой синекуры, куда надо только попасть, а потом катайся как сыр в масле. На самом деле все конечно сложнее, но мнение уже сложилось.
Масла в огонь подбавляют и всевозможные курсы, и даже государственные программы по переквалификации самых широких народных масс населения в айтишников.
Государство понять можно, с нынешними темпами цифровизации и импортозамещения ему срочно нужны специалисты нижнего звена, в достаточном для их массового использования количестве.
Плюс айти всячески популяризуется у молодого поколения, о чем мы только что писали выше.
Нынешние высокие заработные платы в IT обусловлены двумя вещами: дефицитом специалистов и достаточно высокой добавочной стоимостью, таким специалистом производимой.
Но и трудятся такие специалисты преимущественно в коммерческой сфере, где никто терпеть лентяев и дураков не будет: или ты работаешь и получаешь нормальные деньги или идешь на улицу.
Войти в такое айти просто так сложно, какие бы дипломы и корочки у тебя не были. В коммерции на диплом смотрят в последнюю очередь. Ты или умеешь и делаешь, либо не умеешь и проходишь мимо и неважно кто-то по специальности: программист или ветеринар.
А вот в госсекторе все по-иному, там можно годами ничего не делать, просто имитируя рабочий процесс и красиво отчитываясь наверх, плюс присутствуют достаточно специфичные взаимоотношения, которые лучше всего характеризуются поговоркой: «я начальник – ты дурак, ты начальник – я дурак».
Нормальные специалисты в госсектор не спешат. Частично из-за невысоких по отраслевым меркам зарплат, а частично из-за специфики рабочих отношений (скажем так). А кто и прибивается – так ненадолго, ну или в случае, если больше никуда не берут.
Поэтому именно государству сегодня выгодно выбросить на рынок большое количество начинающих айтишников. Которые, прекрасно понимая сами, что айтишники они «ненастоящие» не будут страдать излишними амбициями и пойдут туда, где тепло, светло и деньги платят, т.е. преимущественно в госсектор.
Хотя кто-то, возможно, и откроет в себе новые способности, но это будут именно штучные случаи. Аналогичный эффект даст и массовый приток молодежи на айти специальности. Появится обширный рынок молодых специалистов, хотя и невысокой квалификации.
А что это значит? А это значит, что уровень зарплаты в этом сегменте резко пойдет вниз, по-другому никак, если по рынку труда бегают стада молодых (и не очень) айтишников, желающих просто найти работу по специальности.
Повлияет ли это на уровень зарплат в отрасли в целом? Нет. Опытные специалисты как были, так и останутся востребованы. А вот существующий сейчас перекос, когда даже молодой и зеленый айтишник получает выше среднего – выправит.
А вообще история повторяется. В начале нулевых модно было быть юристом. И где сейчас все эти стада молодых юристов? А хороших что тогда, что сейчас приходится поискать и получают они более чем достойно.
👍41💯11❤9👎4😁1
Современная тенденция "войти в айти" на ваш вгляд для отрасли:
Anonymous Poll
5%
Полезна, так как увеличит количество специалистов
8%
Полезна, позволит закрыть дефицит в низовом звене
7%
Наверное, скорее полезна
37%
Это очередная мода, скоро пройдет
6%
Наверное, скорее вредна
7%
Вредна, так как снизит уровень оплаты труда
20%
Вредна, так как снизит уровень квалификации
0%
Свое мнение в комментариях
1%
Я не из айти
8%
Ничего не понятно, но очень интересно
Управление сетевыми настройками в Linux
Последние годы Linux проделал большой путь унификации, во многом благодаря systemd. Теперь вам не нужно вспоминать приемы работы со службами и автозагрузкой в том или ином дистрибутиве. Все везде делается одинаково.
Чего не скажешь о сетевых настройках. Причем, если в графической среде стандартом де-факто давно используется NetworkManager, то в серверном варианте наблюдается полный разброд и шатание.
Debian использует службу networking, которая управляет сетевой конфигурацией через ifupdown, надо сказать – порядком устаревший.
RHEL и производные полагаются на службу network, использующую скрипты ifup и ifdown. В принципе то же самое, что и в Debian, только все по-другому.
Arch и основанное на нем семейство использует netctl собственной разработки, а если вы решите освоить ALT, то познакомитесь с еще одной системой – Etcnet.
Ну и Ubuntu тоже не остался в стороне со своим netplan.
От такого разнообразия разбегаются глаза и становится довольно тоскливо. Если вы редко работаете с тем или иным дистрибутивом, то для управления сетью вам придется заглядывать в справку.
Тем не менее есть инструмент, который позволяет унифицировать работу с сетью, но по какой-то причине до сих пор не пользуется широкой популярностью.
Это systemd-networkd, как и весь systemd он очень прост и также строится на основе юнитов соответствующего типа.
В простейшем случае нам достаточно создать юнит с типом network и внести в него следующее содержимое:
Однако, несмотря на простоту, systemd-networkd достаточно мощный сетевой менеджер и позволяет управлять как проводными, так и беспроводными соединениями, мостами, маршрутизацией и многим другим.
При этом его основной плюс – унификация, он будет работать везде, где есть systemd.
И в целом никто не мешает перейти на systemd-networkd уже сейчас, не дожидаясь пока его завезут из коробки в ваш любимый дистрибутив.
Почему? Потому что это наиболее универсально и перспективно. Вам не нужно учить разные сетевые менеджеры, достаточно просто знать systemd-networkd.
Также отдельно хотелось бы отметить netplan от Ubuntu. Это не самостоятельный сетевой менеджер, а фронтенд, поддерживающий systemd-networkd и NetworkManager.
Netplan позволяет абстрагироваться от конкретного сетевого менеджера и описывать сети декларативно в формате YAML, после чего уже сам netplan сформирует конфигурацию для используемого сетевого менеджера.
Это удобно, прежде всего переносимостью, а также возможностью расширения практически для любого дистрибутива и любого сетевого менеджера.
Кроме того, у netplan есть интересные возможности, например, проверить сетевые настройки перед их применением. Если что-то пошло не так, то вы не потеряете сетевой доступ к узлу, так как все изменения будут автоматически откачены обратно.
Поэтому, глядя на существующий зоопарк технологий мы бы обратили внимание прежде всего на systemd-networkd – он есть везде, где есть systemd, прост, понятен и отлично работает.
В перспективе, конечно, хотелось бы видеть единый унифицированный фронтенд по образу netplan, который бы позволял описывать сети в едином формате и применять их без оглядки на используемый менеджер.
Как и snap, netplan давно уже вышел за рамки мира Ubuntu и доступен практически в любом дистрибутиве, однако широкого распространения не имеет.
Последние годы Linux проделал большой путь унификации, во многом благодаря systemd. Теперь вам не нужно вспоминать приемы работы со службами и автозагрузкой в том или ином дистрибутиве. Все везде делается одинаково.
Чего не скажешь о сетевых настройках. Причем, если в графической среде стандартом де-факто давно используется NetworkManager, то в серверном варианте наблюдается полный разброд и шатание.
Debian использует службу networking, которая управляет сетевой конфигурацией через ifupdown, надо сказать – порядком устаревший.
RHEL и производные полагаются на службу network, использующую скрипты ifup и ifdown. В принципе то же самое, что и в Debian, только все по-другому.
Arch и основанное на нем семейство использует netctl собственной разработки, а если вы решите освоить ALT, то познакомитесь с еще одной системой – Etcnet.
Ну и Ubuntu тоже не остался в стороне со своим netplan.
От такого разнообразия разбегаются глаза и становится довольно тоскливо. Если вы редко работаете с тем или иным дистрибутивом, то для управления сетью вам придется заглядывать в справку.
Тем не менее есть инструмент, который позволяет унифицировать работу с сетью, но по какой-то причине до сих пор не пользуется широкой популярностью.
Это systemd-networkd, как и весь systemd он очень прост и также строится на основе юнитов соответствующего типа.
В простейшем случае нам достаточно создать юнит с типом network и внести в него следующее содержимое:
[Match]
Name=ens33
[Network]
Address=10.8.8.100/24
Gateway=10.8.8.1
DNS=10.8.8.1
Однако, несмотря на простоту, systemd-networkd достаточно мощный сетевой менеджер и позволяет управлять как проводными, так и беспроводными соединениями, мостами, маршрутизацией и многим другим.
При этом его основной плюс – унификация, он будет работать везде, где есть systemd.
И в целом никто не мешает перейти на systemd-networkd уже сейчас, не дожидаясь пока его завезут из коробки в ваш любимый дистрибутив.
Почему? Потому что это наиболее универсально и перспективно. Вам не нужно учить разные сетевые менеджеры, достаточно просто знать systemd-networkd.
Также отдельно хотелось бы отметить netplan от Ubuntu. Это не самостоятельный сетевой менеджер, а фронтенд, поддерживающий systemd-networkd и NetworkManager.
Netplan позволяет абстрагироваться от конкретного сетевого менеджера и описывать сети декларативно в формате YAML, после чего уже сам netplan сформирует конфигурацию для используемого сетевого менеджера.
Это удобно, прежде всего переносимостью, а также возможностью расширения практически для любого дистрибутива и любого сетевого менеджера.
Кроме того, у netplan есть интересные возможности, например, проверить сетевые настройки перед их применением. Если что-то пошло не так, то вы не потеряете сетевой доступ к узлу, так как все изменения будут автоматически откачены обратно.
Поэтому, глядя на существующий зоопарк технологий мы бы обратили внимание прежде всего на systemd-networkd – он есть везде, где есть systemd, прост, понятен и отлично работает.
В перспективе, конечно, хотелось бы видеть единый унифицированный фронтенд по образу netplan, который бы позволял описывать сети в едином формате и применять их без оглядки на используемый менеджер.
Как и snap, netplan давно уже вышел за рамки мира Ubuntu и доступен практически в любом дистрибутиве, однако широкого распространения не имеет.
👍48
Какой сетевой менеджер вы считаете наиболее перспективным?
Anonymous Poll
15%
Debian networking
3%
RHEL network
1%
netctl
1%
Etcnet
20%
NetworkManager
25%
systemd-networkd
18%
0%
netifrc
1%
Свой ответ в комментариях
34%
Ничего не понятно, но очень интересно
👍4
Проходной двор
Сегодня, в качестве спонсорской помощи одному престарелому родственнику делал апгрейд сильно тормозящего ноутбука.
Ситуация классическая, ноут еще не старый, на Intel N-серии, но с жестким диском в базовой комплектации, что означает – привет вечные тормоза. На плате обнаружился M.2 и я решил туда поставить 256 ГБ SSD, который раньше стоял в ноутбуке жены.
Ноутбук был примерно на такой-же аппаратной платформе и система завелась без переустановки. А после у меня со стуком упала на пол челюсть и задергался глаз: автоматически подключился корпоративный VPN и следом запустилось корпоративное приложение…
Ну и что тут такого? А то, что на этом месте работы жена уже более года не работает. И это не какой-то Торговый дом Рога и Копыта, а банк, не самый крупный, но и далеко не последней величины.
Но, как показывает практика, в большинстве организаций, вне зависимости от размеров и количества ИТ и ИБ персонала рано или поздно устанавливается режим проходного двора.
В отсутствие реальных инцидентов, связанных с безопасностью, вся система приходит в расслабленное состояние.
Начинается с малого – послабления в политике безопасности для привилегированных пользователей.
Ну тут оно понятно, VIPы очень не любят напрягаться и приходят в дурное расположение духа забыв пароль, поэтому им надо что-то попроще. А там пошло-поехало.
Ну и тревожить небожителей тоже лишний раз не хочется, поэтому политика смены паролей тоже не про них.
А дальше приехали партнеры, пошли в баню, там, естественно Wi-Fi и пароль на него вполне может совпадать с паролем от учетной записи в домене.
И вот у нас режим проходного двора во всей своей красе.
На некоторых объектах я сталкивался с ситуацией, когда в информационной системе годами присутствовала учетка типа test с простым паролем вроде 1q2w3e, которую мы использовали на стадии настройки и тестирования системы (и правами доменного администратора).
В других местах установленный нами тестовый пароль становился паролем по умолчанию. Местами доходило до смешного. Заказчик забыл пароль суперпользователя СУБД:
- Попробуйте что ли PaSSword-1
- Спасибо, подошло!!!
И, самое интересное, как-то живут годами, причем выставляя подобные сервисы за периметр.
Все что тут остается – это вспомнить про Неуловимого Джо, которого никто не ловит, потому что он никому не нужен.
Сегодня, в качестве спонсорской помощи одному престарелому родственнику делал апгрейд сильно тормозящего ноутбука.
Ситуация классическая, ноут еще не старый, на Intel N-серии, но с жестким диском в базовой комплектации, что означает – привет вечные тормоза. На плате обнаружился M.2 и я решил туда поставить 256 ГБ SSD, который раньше стоял в ноутбуке жены.
Ноутбук был примерно на такой-же аппаратной платформе и система завелась без переустановки. А после у меня со стуком упала на пол челюсть и задергался глаз: автоматически подключился корпоративный VPN и следом запустилось корпоративное приложение…
Ну и что тут такого? А то, что на этом месте работы жена уже более года не работает. И это не какой-то Торговый дом Рога и Копыта, а банк, не самый крупный, но и далеко не последней величины.
Но, как показывает практика, в большинстве организаций, вне зависимости от размеров и количества ИТ и ИБ персонала рано или поздно устанавливается режим проходного двора.
В отсутствие реальных инцидентов, связанных с безопасностью, вся система приходит в расслабленное состояние.
Начинается с малого – послабления в политике безопасности для привилегированных пользователей.
Ну тут оно понятно, VIPы очень не любят напрягаться и приходят в дурное расположение духа забыв пароль, поэтому им надо что-то попроще. А там пошло-поехало.
Ну и тревожить небожителей тоже лишний раз не хочется, поэтому политика смены паролей тоже не про них.
А дальше приехали партнеры, пошли в баню, там, естественно Wi-Fi и пароль на него вполне может совпадать с паролем от учетной записи в домене.
И вот у нас режим проходного двора во всей своей красе.
На некоторых объектах я сталкивался с ситуацией, когда в информационной системе годами присутствовала учетка типа test с простым паролем вроде 1q2w3e, которую мы использовали на стадии настройки и тестирования системы (и правами доменного администратора).
В других местах установленный нами тестовый пароль становился паролем по умолчанию. Местами доходило до смешного. Заказчик забыл пароль суперпользователя СУБД:
- Попробуйте что ли PaSSword-1
- Спасибо, подошло!!!
И, самое интересное, как-то живут годами, причем выставляя подобные сервисы за периметр.
Все что тут остается – это вспомнить про Неуловимого Джо, которого никто не ловит, потому что он никому не нужен.
👍35🔥11🫡3❤1
Сталкивались ли вы у себя с режимом "проходного двора"
Anonymous Poll
19%
Если и бывает, то это ЧП
31%
Бывает иногда
18%
Регулярно бывает
11%
Это нормальный режим работы
12%
Даже не заморачиваемся, все равно пароль на монитор приклеят
10%
Ничего не понятно, но очень интересно
👍6
Loginctl – управляем пользователями и сессиями
Сегодня мы расскажем еще об одной простой и удобной утилите из состава systemd – loginctl, которая предназначена для управления пользователями и сессиями.
Вообще-то утилита оперирует тремя типами объектов:
▫️session – сессия, каждая авторизация пользователя в системе, исключая sudo и su.
▫️user – пользователь системы, который может иметь одну или несколько сессий одновременно.
▫️seat – рабочее место, имеет актуальность только для терминальных сред.
Начнем с просмотра, чтобы увидеть все активные сессии введите:
или просто
Для вывода всех выполнивших вход пользователей:
Для вывода текущего состояния пользователя или сессии выполните:
или
Где вам потребуется указать имя пользователя или идентификатор сессии.
Вместе с информацией о сессии или пользователе вы также увидите дерево запущенных от его имени процессов.
Чтобы увидеть подробности конкретной сессии или пользователя следует использовать команды:
Для завершения сессии можно использовать:
При этом всем процессам сессии будет послан сигнал
В качестве альтернативы можно использовать:
В целом обе команды дают аналогичный результат, но terminate не позволяет явно указывать сигнал и для завершения процессов использует инструменты systemd, такие как
Если мы хотим завершить все сессии пользователя, то можно использовать:
или
В графическом интерфейсе мы можем блокировать или разблокировать экран командами:
Также можем переключаться на нужную сессию:
Еще один интересный момент, это управление службами пользователя. Обычно они запускаются при интерактивном входе пользователя в систему и останавливаются при его выходе.
Однако бывает необходимость, чтобы они стартовали без входа в систему, в таком случае используйте команду:
Чтобы отключить такое поведение:
Как видим, systemd – это не только службы, но и обширный набор простых инструментов для полноценного управления вашей Linux-системы.
Сегодня мы расскажем еще об одной простой и удобной утилите из состава systemd – loginctl, которая предназначена для управления пользователями и сессиями.
Вообще-то утилита оперирует тремя типами объектов:
▫️session – сессия, каждая авторизация пользователя в системе, исключая sudo и su.
▫️user – пользователь системы, который может иметь одну или несколько сессий одновременно.
▫️seat – рабочее место, имеет актуальность только для терминальных сред.
Начнем с просмотра, чтобы увидеть все активные сессии введите:
loginctl list-sessions
или просто
loginctl
Для вывода всех выполнивших вход пользователей:
loginctl list-users
Для вывода текущего состояния пользователя или сессии выполните:
loginctl user-status <username>
или
loginctl session-status <ID>
Где вам потребуется указать имя пользователя или идентификатор сессии.
Вместе с информацией о сессии или пользователе вы также увидите дерево запущенных от его имени процессов.
Чтобы увидеть подробности конкретной сессии или пользователя следует использовать команды:
loginctl show-session <ID>
loginctl show-user <username>
Для завершения сессии можно использовать:
loginctl kill-session <ID>
При этом всем процессам сессии будет послан сигнал
SIGTERM
, если мы хотим это изменить, то можем указать сигнал явно:loginctl kill-session <ID> --signal SIGKILL
В качестве альтернативы можно использовать:
loginctl terminate-session <ID>
В целом обе команды дают аналогичный результат, но terminate не позволяет явно указывать сигнал и для завершения процессов использует инструменты systemd, такие как
StopUnit()
.Если мы хотим завершить все сессии пользователя, то можно использовать:
loginctl kill-user <username>
или
loginctl terminate-user <username>
В графическом интерфейсе мы можем блокировать или разблокировать экран командами:
loginctl lock-session | unlock-session <id>
Также можем переключаться на нужную сессию:
loginctl activate <id>
Еще один интересный момент, это управление службами пользователя. Обычно они запускаются при интерактивном входе пользователя в систему и останавливаются при его выходе.
Однако бывает необходимость, чтобы они стартовали без входа в систему, в таком случае используйте команду:
loginctl enable-linger <username>
Чтобы отключить такое поведение:
loginctl disable-linger <username>
Как видим, systemd – это не только службы, но и обширный набор простых инструментов для полноценного управления вашей Linux-системы.
👍33🔥5
Используете ли вы инструменты systemd вместо классических утилит?
Anonymous Poll
12%
Да, всегда
27%
Да, частично
23%
Когда как
3%
Предпочитаю не использовать
9%
Не использую
2%
Я идейный противник systemd
23%
Ничего не понятно, но очень интересно
Используем спецсимвол ! в командной строке Linux
Сегодня один из читателей задал вопрос про восклицательный знак в составе команды запуска. Он ошибочно посчитал его признаком повышения прав и признался, что так и не смог найти подробного описания использования этого спецсимвола.
Поэтому попробуем заполнить этот пробел. Восклицательный знак используется для повторения команд и аргументов команд. В самом простейшем виде наберите:
И оболочка повторит последнюю набранную команду. Это удобно, если команда требует повышения прав, тогда вместо перепечатывания команды заново достаточно написать:
Немного сложнее, если команду надо было выполнить от другого пользователя, например, postgres:
Также с помощью восклицательного знака легко повторить команду из истории, выполните
Посмотрите номер нужной команды и введите:
Что заново выполнит команду из истории под номером 38.
Также мы можем повторить выполнение команды со всеми аргументами, допустим мы выполнили:
Для ее повторения достаточно выполнить:
или вообще
Достаточно ввести одну или несколько букв, которые однозначно могут определить команду в текущей сессии.
Мы можем не только повторить, но и добавить аргументы, например:
Что будет эквивалентно
Также можно использовать восклицательный знак для передачи аргументов предыдущей команды.
Для первого и последнего используйте
Так после выполнения последней команды мы можем указать:
Что приведет к выполнению:
Либо можем указать аргументы явно, для последней команды можем использовать
Будет аналогичен:
Обратите внимание, что к аргументам также относятся и ключи, поэтому если после запуска
Вы введете:
То будет выполнен:
без аргументов.
Сегодня один из читателей задал вопрос про восклицательный знак в составе команды запуска. Он ошибочно посчитал его признаком повышения прав и признался, что так и не смог найти подробного описания использования этого спецсимвола.
Поэтому попробуем заполнить этот пробел. Восклицательный знак используется для повторения команд и аргументов команд. В самом простейшем виде наберите:
!!
И оболочка повторит последнюю набранную команду. Это удобно, если команда требует повышения прав, тогда вместо перепечатывания команды заново достаточно написать:
sudo !!
Немного сложнее, если команду надо было выполнить от другого пользователя, например, postgres:
su -c “!!” postgres
Также с помощью восклицательного знака легко повторить команду из истории, выполните
history
Посмотрите номер нужной команды и введите:
!38
Что заново выполнит команду из истории под номером 38.
Также мы можем повторить выполнение команды со всеми аргументами, допустим мы выполнили:
cat /home/andrey/123.txt /home/ivan/321.txt
Для ее повторения достаточно выполнить:
!cat
или вообще
!с
Достаточно ввести одну или несколько букв, которые однозначно могут определить команду в текущей сессии.
Мы можем не только повторить, но и добавить аргументы, например:
!cat /home/andrey/456.txt
Что будет эквивалентно
cat /home/andrey/123.txt /home/ivan/321.txt /home/andrey/456.txt
Также можно использовать восклицательный знак для передачи аргументов предыдущей команды.
Для первого и последнего используйте
!^
и !$
Так после выполнения последней команды мы можем указать:
cat !^ !$
Что приведет к выполнению:
cat /home/andrey/123.txt /home/andrey/456.txt
Либо можем указать аргументы явно, для последней команды можем использовать
!:2
– второй аргумент, или указать команду явно, тогда будет использован указанный аргумент последнего запуска команды:cat !cat:2
Будет аналогичен:
cat /home/andrey/456.txt
Обратите внимание, что к аргументам также относятся и ключи, поэтому если после запуска
cat -n /home/andrey/456.txt
Вы введете:
cat -n !^
То будет выполнен:
cat -n -n
без аргументов.
👍75🔥4
Как отключить автоматические обновления Windows бесплатно и без SMS
Одним из любимых занятий администраторов Windows является отключение автоматического обновления.
Мы сейчас не будем касаться обоснованности и реальной необходимости такого шага, а остановимся на том, как это делается.
А делается это, в лучшем случае, при помощи всяких сомнительных твиков и оптимизаторов, которые могут попутно и еще чего-нибудь отключить или «оптимизировать», в худшем случае берется г-сборка, где все это (и не только) уже заботливо вырезано.
Но существует вполне легальный способ сделать это самостоятельно, тем более что инструкция опубликована на официальном сайте Microsoft.
Да, это не шутка, компания подробно рассказывает, как можно заблокировать доступ к ее сервисам автоматического обновления.
Доступны два пути: через групповые политики или реестр. Через политики проще, поэтому мы рассмотрим именно их.
Открываем редактор политик (
▫️
▫️
▫️
Теперь переходим в
И находим политику:
▫️
При активации данных политик будет не только отключено автоматическое обновление, но и перестанет работать Windows Store, так как он использует те же самые онлайн-службы, что и Windows Update.
Также все магазинные приложения не будут доступны и через WinGet (которые имеют источник msstore).
При этом, если какие-то обновления уже были скачаны на момент активации политик, то они будут установлены в обычном режиме.
Потому что мы по факту не выключили механизм обновлений, а просто запретили доступ к онлайн-ресурсам Windows Update перенаправив запросы на несуществующий сервер WSUS.
Источник: https://learn.microsoft.com/en-us/windows/privacy/manage-connections-from-windows-operating-system-components-to-microsoft-services#29-windows-update
Одним из любимых занятий администраторов Windows является отключение автоматического обновления.
Мы сейчас не будем касаться обоснованности и реальной необходимости такого шага, а остановимся на том, как это делается.
А делается это, в лучшем случае, при помощи всяких сомнительных твиков и оптимизаторов, которые могут попутно и еще чего-нибудь отключить или «оптимизировать», в худшем случае берется г-сборка, где все это (и не только) уже заботливо вырезано.
Но существует вполне легальный способ сделать это самостоятельно, тем более что инструкция опубликована на официальном сайте Microsoft.
Да, это не шутка, компания подробно рассказывает, как можно заблокировать доступ к ее сервисам автоматического обновления.
Доступны два пути: через групповые политики или реестр. Через политики проще, поэтому мы рассмотрим именно их.
Открываем редактор политик (
gpedit.msc
) и переходим в Конфигурация компьютера – Административные шаблоны – Компоненты Windows – Центр обновления Windows
и находим там следующие политики:▫️
Не подключаться к расположениям Центра обновления Windows в Интернете
– переводим в состояние Включено
.▫️
Запретить доступ для использования любых средств Центра обновления Windows
– переводим в состояние Включено
.▫️
Указать размещение службы обновлений Майкрософт в интрасети
– переводим в состояние Включено
, во все три поля с адресами служб обновления в интрасети вводим “ “
(пробел, обрамленный кавычками).Теперь переходим в
Конфигурация пользователя – Административные шаблоны – Компоненты Windows – Центр обновления Windows
И находим политику:
▫️
Запретить использование любых средств Центра обновления Windows
– которую переводим в состояние Включено
, а значение политики устанавливаем в 0 – не отображать никакие уведомления
.При активации данных политик будет не только отключено автоматическое обновление, но и перестанет работать Windows Store, так как он использует те же самые онлайн-службы, что и Windows Update.
Также все магазинные приложения не будут доступны и через WinGet (которые имеют источник msstore).
При этом, если какие-то обновления уже были скачаны на момент активации политик, то они будут установлены в обычном режиме.
Потому что мы по факту не выключили механизм обновлений, а просто запретили доступ к онлайн-ресурсам Windows Update перенаправив запросы на несуществующий сервер WSUS.
Источник: https://learn.microsoft.com/en-us/windows/privacy/manage-connections-from-windows-operating-system-components-to-microsoft-services#29-windows-update
👍38🤔4
Включены ли у вас автоматические обновления Windows
Anonymous Poll
36%
Да, режим скачивать автоматически и уведомлять об установке
23%
Да, режим уведомлять о возможности скачивания
16%
Да, скачивание и установка автоматически по расписанию
8%
Нет, отключено политиками (как в заметке выше)
7%
Нет, отключено твикерами/оптимизаторами
3%
Нет, использую г-сборку
6%
Ничего не понятно, но очень интересно
👍7