По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
На самом деле поиск DNS это не то, что требует частого внимания. Но иногда приходится заботиться об этом. Например, если у вашего провайдера слабые сервера или же в вашей сети часто происходят DNS обращения, то нужно настроить локальный кэширующий DNS сервер. Как кэширующий DNS-сервер может пригодиться? Кэширующий DNS-сервер занимается обработкой DNS запросов, которые выполняет ваша система, затем сохраняет результаты в памяти или кэширует их. В следующий раз, когда система посылает DNS запрос для того же адреса, то локальный сервер почти мгновенно выдает результат. Эта идея может показаться бесполезной. Подумаешь, какие-то там секунды. Но если DNS сервера провайдера тратят много времени на разрешение имени, то в результате падает скорость Интернет серфинга. Например, домашняя страница новостного канала MSNBC для корректной работы обращается более чем к 100 уникальным доменам. Даже если на запрос тратится одна десятая секунды, в итоге получается 10 секунд ожидания, что по нынешним меркам слишком много. Локальный кэширующий DNS увеличивает скорость не только дома или в офисе, он также помогает работе серверов. Например, у вас есть почтовый сервер с анти-спам фильтром, который выполняет очень много DNS запросов. Локальный кэш намного увеличить скорость его работы. И наконец, system-resolved поддерживает новейшие стандарты вроде DNSSEC и DNSoverTLS или DoT. Эти технологии увеличивают безопасность при работе в Интренет. Какой локальный кэширующий сервер выбрать? В этом руководстве будет использован сервер systemd-resolved. Эта утилита является частью набора управления системой systemd. Если в вашей системе используется systemd, а большинство дистрибутивов Linux используют это, то в системе уже установлен systemd-resolved, но не запущен. Большинство систем не используют эту утилиту. systemd-resolved запускает небольшой локальный кэширующий DNS-сервер, который мы настроим на запуск при загрузке системы. Затем мы изменим конфигурацию всей системы так, чтобы DNS запросы шли на локальный сервер. Как проверить используется ли systemd-resolved? В некоторых дистрибутивах, например Ubuntu 19.04, по умолчанию используется systemd-resolved. Если у вас уже запущен systemd-resolved, тогда не нужно что-то настраивать в системе. Но нужно проверить на корректность утилит управления сетевыми настройками, такие как NetworkManager, так как они могут игнорировать системные настройки сети. Перед тем как перейти к следующему разделу проверьте запущен ли в вашей системе systemd-resolved: $ resolvectl status Если в ответ получите сообщение ниже, значит в системе не настроен systemd-resolved: $ resolvectl status Failed to get global data: Unit dbus-org.freedesktop.resolve1.service not found. И наоборот, если на выходе видите что-то подобное, то systemd-resolved уже работает: Global LLMNR setting: yes MulticastDNS setting: yes DNSOverTLS setting: opportunistic DNSSEC setting: allow-downgrade DNSSEC supported: no Current DNS Server: 1.1.1.1 DNS Servers: 1.1.1.1 1.0.0.1 Включение и настройка systemd-resolved Отдельно устанавливать systemd-resolved не нужно, так как этот сервис является частью systemd. Всё что нужно сделать это запустить его и добавить в автозагрузку. Для включения данной службы введите команду ниже: $ sudo systemctl start systemd-resolved.service Далее нужно ввести следующую команду, чтобы добавить службу в автозапуск. $ sudo systemctl enable systemd-resolved.service И наконец нужно прописать DNS сервера, куда будет обращаться локальный сервер для разрешения имен. Есть много разных сервисов, но приведённые ниже самые быстрые, бесплатные и оба поддерживают DNSSEC и DoT: Google Public DNS 8.8.8.8 8.8.4.4 Cloudflare Public DNS 1.1.1.1 1.0.0.1 Для этого откройте конфигурационный файл systemd-resolved любым текстовым редактором: $ sudo nano /etc/systemd/resolved.conf Отредактируйте строку, которая начинается на: #DNS= И пропишите одну из вышеуказанных пар. Мы используем Cloudflare Public DNS: DNS=1.1.1.1 1.0.0.1 Сохраните изменения и перезапустите службу systemd-resolved: $ sudo systemctl restart systemd-resolved.service Итак, systemd-resolved уже запущен и готов для выполнения быстрых и безопасных DNS запросов, как только мы настроим систему соответствующим образом. Настройка системы для использования systemd-resolved Есть несколько путей настройки системы на использование локального DNS сервера. Мы рассмотрим два наиболее используемых метода. Первый – рекомендуемый метод, второй конфигурация в режиме совместимости. Разница в том, как будет обрабатываться файл /etc/resolv.conf. В файле /etc/resolv.conf содержатся IP адреса серверов разрешения имен, которые используются программами. Программы при необходимости разрешения доменного имени обращаются к этому файлу в поисках адресов серверов разрешения имен. Итак, первый метод конфигурации заключается в создании символьной ссылки на /run/systemd/resolve/stub-resolv.conf. В этом случае файл /etc/resolv.conf управляется службой systemd-resolved. Это может вызвать проблемы в том случае, если другие программы пытаются управлять файлом /etc/resolv.conf. Режим совместимости оставляет /etc/resolv.conf не тронутым, позволяя программам управлять им. В этом режиме, в настройках программ, управляющих файлом /etc/resolv.conf в качестве системного сервера разрешения имен должен быть указан IP 127.0.0.53. Конфигурация в рекомендуемом режиме При этом режиме конфигурация проводится вручную. Сначала нужно удалить или переименоваться оригинальный файл /etc/resolv.conf. Лучше переименовать, чтобы при необходимости можно было использовать информацию в нем. $ sudo mv /etc/resolv.conf /etc/resolv.conf.original Затем создаем символьную ссылку: $ sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf И наконец перезапускаем службу systemd-resolved: $ sudo systemctl restart systemd-resolved.service Настройка в режиме совместимости В режиме совместимости, нужно убедиться, что локальный сервер разрешения имен system-resolved запущен и используется системными службами. Откройте файл /etc/resolv.conf любым редактором: $ sudo nano /etc/resolv.conf Удалите все строки, которые содержать ключевое слово nameserver и добавьте одну единственную строку: nameserver 127.0.0.53 Этот файл мажет быть изменён любой программой. Чтобы предотвратить это нужно настроить программы так, чтобы в качестве DNS они использовали адрес 127.0.0.53. Отладка systemd-resolved Посмотреть, как система выполняет DNS запросы после внесённых изменений сложно. Самый эффективный метод – это включить режим отладки для службы systemd-resolved, а затем просмотреть файл логов. systemd-resolved можно перевести в режим отладки созданием специального служебного файла, в котором содержатся настройки отладки. Делается это следующей командой: $ sudo systemctl edit systemd-resolved.service Вставьте в файл следующие строки: [Service] Environment=SYSTEMD_LOG_LEVEL=debug После этого служба systemd-resolved автоматический перезапуститься. Откройте второй терминал и просмотрите логи в journald: $ sudo journalctl -f -u systemd-resolved Строка, которая содержит слова “Using DNS server” показывает, какой DNS сервер используется для разрешения имён. В нашем случае это DNS сервера Cloudflare Using DNS server 1.1.1.1 for transaction 19995. Слова “Cache miss” в начале строки означает, что для данного домена нет закэшированной информации: Cache miss for example.com IN SOA И наконец слова “Positive cache” в начале строки означает, что systemd-resolved уже запрашивал информацию об этом домене и теперь ответы возвращает из кэша: Positive cache hit for example.com IN A Не забудьте отключить режим отладки, так как в это время создается большой файл логов. Сделать это можно командой: $ sudo systemctl edit systemd-resolved.service а затем удалить добавленные выше две строки. Использование защищенных DNS запросов systemd-resolved один из немногих DNS серверов, которые поддерживает DNSSEC и DNSoverTLS. Эта два механизма позволяют убедиться, что полученная DNS информация подлинная (DNSSEC) и он не был изменён по пути (DoT). Эти функции легко включаются редактированием основного конфигурационного файла system-resolved: $ sudo nano /etc/systemd/resolved.conf Измените файл следующим образом: DNSSEC=allow-downgrade DNSOverTLS=opportunistic Сохраните изменения и перезапустите службу systemd-resolved. $ sudo systemctl restart systemd-resolved.service Пока прописанные DNS сервера поддерживают эти две функции все DNS запросы будут защищены. DNS сервера Google и CloudFlare поддерживают эти механизмы защиты. Заключение Теперь ваша система будет выполнять DNS запросы быстро и эффективно даже если провайдер не работает достаточно быстро. Кроме этого, ваша цифровая жизнь лучше защищена новейшими механизмами защиты DNS запросов.
img
Команды Linux могут показаться пугающими на первый взгляд, если вы не привыкли использовать терминал. Для выполнения операций и процессов в вашей системе Linux существует огромное количество команд. Независимо от того, являетесь ли вы новичком в Linux или опытным пользователем, полезно иметь список общих команд под рукой. В этом руководстве вы найдете часто используемые команды Linux, а также загружаемую шпаргалку (так называемый cheatsheet) с синтаксисом и примерами. Скачать PDF Список команд Linux Важное замечание: В зависимости от настроек вашей системы для выполнения некоторых из приведенных ниже команд может потребоваться запуск sudo. Информация об оборудовании Показать сообщения, которые выводило ядро во время загрузки: dmesg Показать информацию о процессоре: cat /proc/cpuinfo Показать свободную и использованную память с: free -h Список информации о конфигурации оборудования: lshw Показать информацию о блочных устройствах: lsblk Показать устройства PCI в древовидной схеме: lspci -tv Отображение USB-устройств в виде древовидной диаграммы: lsusb -tv Показать информацию об оборудовании из BIOS: dmidecode Показать информацию о диске: hdparm -i /dev/disk Провести тест скорости чтения на устройстве/диске: hdparm -tT /dev/[device] Проверка на нечитаемые блоки на устройстве/диске: badblocks -s /dev/[device] Поиск Поиск определенного паттерна в файле: grep [pattern] [file_name] Рекурсивно искать паттерн в каталоге: grep -r [pattern] [directory_name] Найти все файлы и каталоги, связанные с конкретным именем: locate [name] Вывести список имен, начинающиеся с указанного символа a в указанном месте /folder/location, с помощью команды find: find [/folder/location] -name [a] Просмотр файлов, размер которых превышает указанный размер + 100M в папке: find [/folder/location] -size [+100M] Файлы Список файлов в каталоге: ls Список всех файлов (включая скрытые): ls -a Показать каталог, в котором вы сейчас работаете: pwd Создать новый каталог: mkdir [directory] Удалить файл: rm [file_name] Удалить каталог рекурсивно: rm -r [directory_name] Рекурсивно удалить каталог без подтверждения: rm -rf [directory_name] Скопировать содержимое одного файла в другой файл: cp [file_name1] [file_name2] Рекурсивно скопировать содержимое одного файла во второй файл: cp -r [directory_name1] [directory_name2] Переименовать имя_файла1 в имя_файла2: mv [file_name1] [file_name2] Создать символическую ссылку на файл: ln -s /path/to/[file_name] [link_name] Создать новый файл: touch [file_name] Показать содержимое файла: more [file_name] Показать первые 10 строк файла: head [file_name] Показать последние 10 строк файла: tail [file_name] Зашифровать файл: gpg -c [file_name] Расшифровать файл: gpg [file_name.gpg] Показать количество слов, строк и байтов в файле: wc Навигация Подняться на один уровень вверх в структуре дерева каталогов: cd .. Перейти в каталог $ HOME: cd Изменить местоположение на указанный каталог: cd /chosen/directory Сжатие файлов Заархивировать существующий файл: tar cf [compressed_file.tar] [file_name] Извлечь заархивированный файл: tar xf [compressed_file.tar] Создайте сжатый gzip tar-файл: tar czf [compressed_file.tar.gz] Сжать файл с расширением .gz: gzip [file_name] Передача файлов Скопировать файл в каталог сервера через ssh: scp [file_name.txt] [server/tmp] Синхронизировать содержимое каталога с резервным каталогом: rsync -a [/your/directory] [/backup/] Пользователи Показать подробности об активных пользователях: id Показать последние системные логины: last Показать, кто в данный момент вошел в систему: who Показать, какие пользователи вошли в систему и их активность: w Добавить новую группу: groupadd [group_name] Добавить нового пользователя: adduser [user_name] Добавить пользователя в группу: usermod -aG [group_name] [user_name] Удалить пользователя: userdel [user_name] Изменить информацию о пользователе: usermod Установка пакета Список всех установленных пакетов с yum: yum list installed Найти пакет по связанному ключевому слову: yum search [keyword] Показать информацию и краткую сводку о пакете: yum info [package_name] Установить пакет с помощью менеджера пакетов >YUM: yum install [package_name.rpm] Установить пакет с помощью менеджера пакетов >DNF: dnf install [package_name.rpm] Установить пакет с помощью менеджера пакетов >APT: apt-get install [package_name] Установить пакет .rpm из локального файла: rpm -i [package_name.rpm] Удалить пакет .rpm: rpm -e [package_name.rpm] Установить программное обеспечение из исходного кода: tar zxvf [source_code.tar.gz] cd [source_code] ./configure make make install Процессы Показать снимок активных процессов: ps Показать процессы в древовидной диаграмме: pstree Показать карту использования памяти процессами: pmap Показать все запущенные процессы: top Завершить процесс Linux с заданным идентификатором: kill [process_id] Завершить процесс с определенным именем: pkill [proc_name] Завершите все процессы, помеченные как proc: killall [proc_name] Список и сводка остановленных заданий в фоновом режиме: bg Перевод последней фоновой задачи в активный режим: fg Перевод конкретной задачи в активный режим: fg [job] Список файлов, открытых запущенными процессами: lsof Системная информация Показать информацию о системе: uname -r Показать информацию о релизе ядра: uname -a Показать, как долго работает система, включая среднюю нагрузку: uptime Показать имя хоста системы: hostname Показать IP-адрес системы: hostname -i История перезагрузки системы: last reboot Показать текущее время и дату: date Запрос и изменение системных часов: timedatectl Показать текущий календарь (месяц и день): cal Список залогиненых пользователей: w Показать текущего пользователя: whoami Показать информацию о конкретном пользователе: finger [username] Использование диска Показать свободное и использованное пространство на смонтированных системах: df -h Показать свободные иноды (inode) на смонтированных файловых системах: df -i Показать разделы диска, размеры и типы: fdisk -l Показать использование диска для всех файлов и каталогов: du -ah Показать использование диска в каталоге, в котором вы находитесь: du -sh Показать целевую точку монтирования для всей файловой системы: findmnt Смонтировать устройство: mount [device_path] [mount_point] SSH Подключиться к хосту как пользователь: ssh user@host Подключиться к хосту через SSH порт по умолчанию 22: ssh host Подключиться к хосту, используя определенный порт: ssh -p [port] user@host Подключиться к хосту через telnet порт по умолчанию 23: telnet host Разрешение файлов Назначить права на чтение, запись и выполнение всем: chmod 777 [file_name] Дать владельцу право на чтение, запись и выполнение, а также разрешение на чтение и выполнение для группы и других пользователей: chmod 755 [file_name] Назначить полное разрешение владельцу, а также разрешение на чтение и запись для группы и других пользователей: chmod 766 [file_name] Изменить владельца файла: chown [user] [file_name] Изменить владельца и групповое владение файлом: chown [user]:[group] [file_name] Сеть Список IP-адресов и сетевых интерфейсов: ip addr show Назначить IP-адрес интерфейсу eth0: ip address add [IP_address] Отображение IP-адресов всех сетевых интерфейсов: ifconfig Показать активные (прослушиваемые) порты: netstat -pnltu Показать порты tcp и udp и их программы: netstat -nutlp Показать больше информации о домене: whois [domain] Показать DNS информацию о домене: dig [domain] Обратный поиск по домену: dig -x host Обратный поиск IP-адреса: dig -x [ip_address] Поиск IP для домена: host [domain] Показать локальный IP-адрес: hostname -I Скачать файл из домена с помощью команды wget: wget [file_name] Сочетания клавиш Linux Убить процесс, запущенный в терминале: Ctrl + C Остановить текущий процесс: Ctrl + Z Вырезать одно слово перед курсором и добавить его в буфер обмена: Ctrl + W Вырезать часть строки перед курсором и добавить ее в буфер обмена: Ctrl + U Вырезать часть строки после курсора и добавить ее в буфер обмена: Ctrl + K Вставить из буфера обмена: Ctrl + Y Вызвать последнюю команду, которая соответствует предоставленным символам: Ctrl + R Запустите ранее вызванную команду: Ctrl + O Выйти из истории команд без выполнения команды: Ctrl + G Запустить последнюю команду еще раз: !! Выйти из текущей сессии: exit Заключение Чем чаще вы используете команды Linux, тем лучше вы их запомните. Не переживайте о запоминании их синтаксиса - используйте наш шпаргалку. А больше материалов про Linux можно найти в нашем разделе.
img
SNMP (Simple Network Management Protocol) - стандартный протокол для запроса информации о состоянии сетевых устройств, и он является pull протоколом - это означает, что SNMP обязан на регулярной основе запрашивать информацию о состоянии устройств - SNMP-коллекторы опрашивают устройства, а SNMP-агенты на устройствах передают данную информацию. Частота опросов основывается на нескольких факторах, таких как: Степень необходимой детализации получаемой информации; Объем доступного места на хранилище; Срок хранения данной информации; SNMP является широко распространенным протоколом - в свободном доступе находится как достаточно много решений-коллекторов с открытым кодом, так и коммерческих вариантов - причем существуют как программные решения, так и “железные”. Маршрутизаторы и свичи чаще всего являются SNMP-агентами, также как и три основных операционных системы - Windows, Mac OS и Linux. Но с небольшой поправкой, на них SNMP служба должна быть запущена вручную. Важно: SNMP может предоставить много полезной информации о “здоровье” оборудования, но необходимо помнить, что всегда нужно использовать безопасную версию SNMP протокола - с настроенной аутентификацией и нестандартной Community строкой. Версии SNMP протокола Всего существует три основных (они же и повсеместно используемые) версии SNMP протокола, в нашем случае мы будем использовать третью версию. Ниже, на всякий случай, приведено краткое описание каждой из версий. SNMP v1 Первая версия является оригинальной версией и до сих пор используется, даже практически спустя тридцать лет. В данной версии нельзя применить никакие меры для повышения безопасности помимо Community строки, которая является чем-то вроде пароля. Если данная строка на Коллекторе соответствует строке на Агенте, то Коллектор сможет запросить информацию. Именно поэтому так важно изолировать SNMP и поместить его в отдельную подсеть и изменить Community строку. SNMP v2c Версия 2с привнесла дополнительные фичи в SNMP, но основным инструментом повышения безопасности все еще является Community строка. Следующая версия (v3) является предпочтительным вариантом, но некоторые организации все еще используют v1 и v2c. SNMP v3 Третья версия имеет в себе фичи шифрования и аутентификации, а также способна отправлять настройки на удаленные SNMP-агенты. Данная версия является предпочтительной, но необходимо чтобы и Коллектор, и Агент поддерживали её. Несмотря на то, что SNMP v3 позволяет удаленно конфигурировать девайсы, большинство организаций не используют данную фичу - для этих целей используются такие решения как Ansible, Puppet, Chef или проприетарные системы управления. Настройка на маршрутизаторе MikroTik На большинстве устройств Community строкой является слово “public” - и этот факт широко известен, к примеру порт сканнер Nmap автоматически будет пробовать данный вариант. Если данная строка не была изменена, вы, по сути, предоставляете очевидную лазейку злоумышленникам. К сожалению, на маршрутизаторах MikroTik данную строку нельзя отключить или удалить, но её можно изменить и запретить. /snmp community set 0 name=not_public read-access=no write-access=no Затем необходимо создать SNMP Community со следующими параметрами: Нестандартное имя; Только чтение; Аутентификация; Шифрование; Для этого можно использовать команду ниже - она сделает все необходимое, но, естественно, вам необходимо поменять строки wow_password и awesome_password на актуальные пароли, которые будут использоваться у вас в системе. Также поменяйте имя строки на любое другое - в примере используется имя perch_pike. /snmp community add name=perch_pike read-access=yes write-access=no authentication-protocol=SHA1 authentication-password=wow_password encryption-protocol=AES encryption-password=awesome_password security=private Осталось выполнить всего одну команду для включения SNMP и настройки вашей локации и контактной информации для устройства: /snmp set contact="Aristarh @ Merion Networks" location="Internet, RUS" enabled=yes Заключение SNMP - широко известный протокол, который также хорошо поддерживается компанией MikroTik и остальными производителями. Всегда используйте нестандартные Community строки, аутентификацию и шифрование, чтобы быть на 100% уверенными в том, что злоумышленники не могут получить информацию об устройствах в вашей сети - и тогда SNMP будет верным помощником в поддержке вашей сети.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59