По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Переменные среды (или окружения) используются для хранения общесистемных значений, которые могут использоваться любым пользователем и процессом в операционной системе. Мы уже рассказывали про то как установить переменные окружения в Linux, а теперь расскажем, как это сделать в MacOS. Проверить текущие переменные среды Есть два способа проверить текущие переменные среды в MacOS: Показать список всех текущих переменных среды. Показать конкретную переменную среды. Список всех переменных среды Используйте команду printenv для отображения списка текущих установленных переменных среды: printenv Примечание. Если вы хотите отобразить полный список переменных оболочки, используйте команду set. Проверить конкретную переменную среды Если вы хотите отобразить значение какой-либо конкретной переменной среды, используйте команду echo: echo $[имя_переменной] Например, чтобы проверить значение переменной PATH, в которой хранится список каталогов с исполняемыми файлами, используйте команду echo: echo $PATH Примечание. Всегда используйте префикс $ при указании имени переменной. Установить временную переменную среды Значение, которое вы присваиваете временной переменной среды, сохраняется только до тех пор, пока вы не закроете сеанс терминала. Это полезно для так переменных, которые нужно использовать только для текущего сеанса. Назначить временную переменную среды с помощью команды export: export [имя_переменной]=[значение_переменной] Где: [имя_переменной]: имя новой временной переменной среды, которую вы хотите установить. [значение_переменной]: значение, которое вы хотите присвоить новой переменной. Команда export также позволяет добавлять новые значения к существующим переменным: export [имя_существующей_переменной]=[новое_значение_переменной]:$[имя_существующей_переменной] Где: [имя_существующей_переменной]: имя переменной среды, к которой вы хотите добавить новое значение. [новое_значение_переменной]: значение, которое вы хотите добавить к существующей переменной. Например, если вы хотите добавить собственный путь к папке в переменную PATH, используйте следующую команду: export PATH=/Users/test/test_folder:$PATH Установить постоянную переменную среды В файл .bash_profile добавляются постоянные переменные среды: Найдите путь к файлу .bash_profile, используя: ~/.bash-profile Откройте файл .bash_profile в любом текстовом редакторе. Прокрутите до конца файла Используйте команду export, чтобы добавить новые переменные: export [имя_переменной]=[значение_переменной] Сохраните все изменения, внесенные вами в файл Запустите новый .bash_profile, перезапустив окно терминала, либо используя команду: source ~/.bash-profile Удалить переменную среды Используйте команду unset, чтобы удалить переменную среды: unset [имя_переменной]
img
Маршрутизаторы от производителя Mikrotik приобретают все большую популярность благодаря привлекательной цене и богатому функционалу. Пожалуй, в SOHO сегмента Mikrotik является лидером. Сегодня хотим рассказать о полезных опциях настройки, которые помогут укрепить устойчивость к внешним атакам и обеспечить стабильную работу для вашего офисного Mikrotik. Защита Mikrotik 1. Смена логина и пароля администратора Начнем с первичной защиты нашего маршрутизатора – созданию стойкого к взломам логина и пароля администратора. По умолчанию, в Mikrotik используется логин admin и пустой пароль. Давайте исправим это: подключаемся через Winbox к нашему маршрутизатору и переходим в раздел настройки System → Users. Видим пользователя admin, который настроен по умолчанию: Добавим нового пользователя, который будет обладать более строгими к взлому реквизитами (логин/пароль). Для этого, нажмите на значок «+» в левом верхнем углу: Обратите внимание, в поле Group необходимо выбрать full, чтобы предоставить администраторские привилегии для пользователя. После произведенных настроек удаляем пользователя admin и отныне используем только нового пользователя для подключения к интерфейса администрирования. 2. Сервисные порты В маршрутизаторе Микротик «зашиты» некоторые службы, порты которых доступны для доступа из публичной сети интернет. Потенциально, это уязвимость для Вашего сетевого контура. Поэтому, мы предлагаем перейти в раздел настройки IP → Services: Если вы используете доступ к Mikrotik только по Winbox, то мы предлагаем Вам отключить все сервисы, за исключением winbox и ssh (на всякий случай оставить ssh), а именно: api api-ssl ftp www www-ssl Для отключения нажмите красный значок «х». Так как мы оставили SSH доступ к серверу, давайте «засекьюрим» его, сменив порт с 22 на 6022. Для этого, дважды нажмите на сервисный порт SSH и в открывшемся окне укажите настройку: Нажимаем Apply и ОК. 3. Защита от брут – форса (перебора) На официальном сайте Mikrotik существуют рекомендации о том, как защитить свой маршрутизатор от перебора паролей по FTP и SSH доступу. В предыдущем шаге мы закрыли FTP доступ, поэтому, если Вы строго следуете по данной инструкции, то используйте только код для защиты от SSH – атак. В противном случае, скопируйте оба. Итак, открываем терминал управления маршрутизатором. Для этого, в правом меню навигации нажмите New Terminal. Последовательно скопируйте указанный ниже код в консоль роутера: /ip firewall filter #Блокируем атаки по FTP add chain=input protocol=tcp dst-port=21 src-address-list=ftp_blacklist action=drop comment="drop ftp brute forcers" add chain=output action=accept protocol=tcp content="530 Login incorrect" dst-limit=1/1m,9,dst-address/1m add chain=output action=add-dst-to-address-list protocol=tcp content="530 Login incorrect" address-list=ftp_blacklist address-list-timeout=3h #Блокируем атаки по SSH add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop comment="drop ssh brute forcers" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=10d comment="" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m comment="" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m comment="" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m comment="" disabled=no Создание резервной копии конфигурации На случай выхода из строя или аварии роутера, необходимо иметь под рукой его конфиг для оперативного восстановления. Сделать его крайне просто: открываем терминал, нажав в меню навигации New Terminal и указываем следующую команду: export file=backup echo date("Y-m-d_H:i:s") Файл можно обнаружить нажав в меню навигации на раздел Files. Скачайте его себе на ПК, нажав правой кнопкой мыши и выбрав Download Блокировка доступа к сайта В рабочее время сотрудники должны работать. Поэтому, давайте заблокируем доступ к развлекательным ресурсам, таким как Youtube, Facebook и Вконтакте. Для этого, перейдите в раздел IP → Firewall. Нажимаем на вкладку Layer 7 Protocol и затем нажимаем на значок «+» в левом верхнем углу: Даем имя нашему правилу, которое будет оперировать на 7 уровне модели OSI, а в разделе Regexp добавляем: ^.+(youtube.com|facebook.com|vk.com).*$ Нажимаем OK и переходим к вкладке Filter Rules и нажимаем значок «+»: В разделе Chain выбираем Forward. Переходим в том же окне во вкладку Advanced и в поле Layer 7 Protocol выбираем созданное нами правило блокировки: Переходим во вкладку Action, и там выбираем Action = Drop: По окончанию настроек нажимаем Apply и OK.
img
Каждое семейство операционных систем производит загрузку по-своему. Это связанно с различной архитектурой ядра операционной системы, разными инструкциями по работе с подключенными устройствами. В данной статье попробую разобрать загрузку популярной операционной системы на ядре Linux Ubuntu. Схематично процесс загрузки можно отобразить следующим образом. Загружаемся Итак, Нажимаем кнопку включения компьютера, и центральный процессор переходит на адрес BIOS. BIOS или UEFI, в более современных компьютерах, проводит систему проверок и выбирает носитель информации с которого будет производится загрузка операционной системы. На носителе находится MBR (Master Boot Record) или GPT (Guid Partition table) на новых компьютерах в которых находится загрузчик. А дальше уже в зависимости от настройки. Загрузчик может самостоятельно загружать операционную систему, а может передавать управление следующему загрузчику. Например, если Windows и Linux установлены на одном компьютере и находятся на разных разделах жесткого диска. В любом случае, если идет речь о Linux у нас есть первая стадия с небольшой частью кода, которая загружает у нас загрузчик. Загрузчик знает где лежит ядро операционной системы, загружает ядро, загружает initial run disk, там находятся необходимые файлы и модули для загрузки ядра. Далее уже ядро берет процесс управления на себя. Происходит инициализация устройств, конфигурирование процессов памяти и так далее. После всех этих процессов ядро запускает процесс init. Вернемся к вопросу загрузчиков, для каждой операционной системы разработан свой загрузчик, а иногда и несколько. NTLDR - Загрузчик операционной системы Windows, LILO - один из стандартных загрузчиков для Linux и BSD системы. GRUB - загрузчик операционной системы от проекта GNU. Нас интересуют последние два. Данные загрузчики работают в два этапа. На первом этапе у них крошечный код на MBR или GPT, который запускает исполнение кода второго этапа. Перейдем непосредственно к самой загрузке. Данное меню мы можем получить при загрузке если зажать клавишу Shift. Как видно на картинке в данном примере загрузчик GRUB версии 2.04. У нас есть несколько вариантов. Загрузка Ubuntu по умолчанию и вариант загрузки с расширенными опциями. В нашем случае расширенные опции не дают многого, а всего лишь позволяют начать загрузку в режиме восстановления recovery mode. Данная опция не является целью стати, и мы ее опустим. Вернемся к первому пункту загрузки. Выбираем, нажимаем "e" получаем следующую картину загрузки. На данной картинке можно увидеть, что корневой раздел монтируется по uuid, он будет корневым root и непосредственно сам id. ID раздела можно посмотреть после загрузки операционной системы командой blkid. Можно часть параметров отредактировать или большинство. Более подробно можно поискать в интернете. По нажатию F10 осуществляется продолжение загрузки операционной системы. После загрузки операционной системы, мы можем с помощью команды dmesg посмотреть, сообщения ядра, все что происходило с ядром. Нужно различать сообщения ядра и лог ядра. Который можно посмотреть cat /var/log/dmesg. Данный файл содержи информацию только о загрузке операционной системы. В данном файле содержится информация с самого начала загрузки операционной системы и до конца. Если событие происходит позднее, то в данном файле этой информации вы не найдете. Система инициализации ОС Есть такое понятие Init - это первый или родительский процесс, который запускает все последующие процессы. Это может быть проверка и монтирование файловых систем запуск служб и.т.д. Существует 3 варианта работы этого родительского процесса. Init в стиле SysV - родительский процесс инициализации системы на одном из заданных уровней запуска (runlevel); Т.е. есть несколько уровней загрузки (runlevel) обычно их 7 штук. Один из них - это обычный многопользовательский режим. Другие это выключение компьютера, перезагрузка, режим восстановления и т.д. Init в стиле systemd - родительский процесс инициализации системы в ускоренном режиме, за счёт параллельного запуска задач; Ускоренный режим достигается за счет использования процессора в частности Intel, который позволяет запускать процессы инициализации параллельно. К этому режиму есть еще куча софта библиотек, которые расширяют функционал. Init в стиле Upstart - родительский процесс инициализации системы на основе отслеживания событий; Данный режим используется на Ubuntu уже давным - давно, тут не только запускаются скрипты инициализации, но и запускаются скрипты отслеживания событий и реагирования на них. Т.е. это более гибкий процесс инициализации, например, если какая-то служба не запустилась или упала в процессе загрузки то, upstart умеет это отследить и запустить это повторно В операционной систему Ubuntu можно посмотреть дерево процессов использую команду pstree. В результате ее вывода мы можем увидеть, что родительским процессом являлся процесс systemd. Который запускал уже свои, какие-то дочерние процессы. Перейдем в корневую директорию boot. Здесь мы можем увидеть директорию загрузчика grub. Ядра линуксовые vmlinuz (ссылка на ядро) и до обновления старое ядро vmlinux.old (ссылка на старое ядро). Соответственно пара initrd* - файлы диска, эти файлы содержат диск, который грузится в оперативную память, данный диск содержит файлы необходимые самому ядру Linux для нормальной загрузки. Перейдя в директорию grub, мы можем найти конфигурационный файл grub.cfg и несколько вспомогательных, но не менее важных фалов. Соответственно мы можем внести изменения в данный файл на постоянной основе и соответственно данный код будет выполнятся при каждой загрузке операционной системы.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59