*NIX
Подписаться на эту рубрику по RSS
Чёрный экран после загрузки Linux
В последние годы, Linux стал гораздо дружелюбнее к обычным пользователям и в большинстве случаев всё устанавливается и работает прямо "из коробки". Но это утверждение справедливо скорее для настольных компьютеров, а вот с ноутбуками и моноблоками далеко не всё так радужно. Ради интереса можете заглянуть в темы про управление подсветкой экрана или возвращения из спящего режима.
Определяем пропускную способность сети с помощью Iperf
Как определить реальную скорость сети Интернет или канала связи? Первое, что приходит на ум, воспользоваться онлайн-сервисом типа SPEEDTEST или Яндекс.Интернетометр. Однако, для компьютера или ноутбука, находящегося в локальной сети, ориентироваться на показатели подобных тестов не стоит.
OpenWrt. Установка и первоначальная настройка альтернативной прошивки для wi-fi роутеров на примере Linksys EA4500. Поднимаем WAN и web-интерфейс из командной строки.
Сегодня обойдемся без предисловий и перейдем сразу к делу. Итак, наверняка многие слышали что помимо прошивки от производителя устройства, существуют и альтернативные. Наиболее раскрученная и на слуху - это, наверное, DD-WRT. Про неё я уже рассказывал когда делал wi-fi повторитель на базе D-Link DIR-300.
Подключение принтера KYOCERA FS-1060DN в Linux
Настройка принтеров в современных дистрибутивах Linux в большинстве случаев проходит практически в автоматическом режиме, достаточно указать системе какой принтер вы желаете использовать. Однако, иногда что-то идёт не так...
Настраиваем универсальную систему защиты от атак fail2ban для OpenVPN
Заметил, что на одном моих OpenVPN серверов в последние несколько дней стал подозрительно быстро расти лог, изучив который стало понятно, что ведутся попытки подбора паролей для получения доступа. Занятие с подбором паролей хоть и бестолковое, но не такое уж и безобидное. Используя даже не очень крупную ботнет сеть, подобными запросами можно запросто положить одиночный сервер (сейчас поступает от 2 до 100 запросов в минуту в зависимости от времени суток). В общем, будет не лишним дополнительно обезопаситься от подобных атак.
Roundcube Webmail 500 Internal Server Error. Неожиданное решение проблемы.
Сегодня опять будет дичь, но не пугайтесь, если не нашли тут ни одного понятного слова. Обещаю, что следующие темы в блоге будут для нормальных людей, а пока расскажу о неожиданном решении проблемы с 500-ой ошибкой (Internal Server Error) при авторизации в web почтовике Roundcube.
Google не хочет принимать почту. The IP you're using to send mail is not authorized.
На днях выяснился один неприятный момент - перестали доходить письма на сервера gmail (любые домены, которые используют гугловский сервис для обработки почты). Если кто не в курсе, можно перенести свою корпоративную почту на Google или Яндекс и использовать их сервис со своим доменным именем.
Ошибка OpenVPN CRL has expired (просрочен список CRL)
TLS: Initial packet from [AF_INET]XXX.XXX.XXX.XXX:60382, sid=c9c9a1f3 02ce9312 VERIFY ERROR: depth=0, error=CRL hasexpired: CN=client_name OpenSSL: error:14089086:SSL routines: ssl3_get_client_certificate:certificate verify failed TLS_ERROR: BIO read tls_read_plaintext error TLS Error: TLS object -> incoming plaintext read error TLS Error: TLS handshake failed SIGUSR1[soft,tls-error] received, client-instance restarting
Сегодня речь пойдет об одном нюансе, связанном со списком отозванных сертификатов (Сertificate Revocation List, CRL) в OpenVPN. Данный механизм применяется, когда требуется блокировать доступ отдельных узлов к сети (в случае увольнения сотрудника или подозрения что выданный сертификат скомпрометирован).
Как в macOS найти файлы, содержащие текст
MaxSite CMS не перестаёт удивлять своими, просто дикими, решениями. Вчера решил покончить с автоматическим формированием заголовков второго уровня в сайдбаре и столкнулся с очередным косяком системы - заголовки с уже прописанными стилями формировались на уровне ядра. Разработчик, почему-то решил, что его видение того, как и что должно выводиться в заголовках будет единственно верным.
Впоследствии, в процессе разборки, выяснилось что в специальном файле шаблона functions.php, с помощью функции mso_set_val(), всё-таки можно переопределять вывод заголовков. Спрашивается зачем было вообще городить этот огород? Причем, хоть как-то отобразить данный момент в документации, по всей видимости, религия не позволяла. Впрочем, отсутствие вменяемой документации, видимо особая "фишка" данной CMS.
Настройка антиспам-фильтра SpamAssassin в связке с Postfix на FreeBSD 11
Сегодня речь пойдёт о настройке антиспам-фильтра SpamAssassin на FreeBSD. К сожалению, активное развитие русскоязычного сообщества по настройке unix серверов, в частности FreeBSD, закончилось где-то в начале 2000-ых и актуальной информации по данной теме сейчас крайне мало. Убедиться в этом не сложно, достаточно посмотреть на даты последних публикаций или ветки форумов. Чуть лучше дела у линуксоидов, но тоже не фонтан. По всей видимости, делиться знаниями и наработками безвозмездно, сейчас никто не желает или просто знаний нет... конечно, это всё печально.
Шифрование файлов с помощью OpenSSL
Иногда бывает нужно зашифровать какой-то архив или отдельный файл, обезопасив таким образом доступ к нему посторонним. Несколько лет назад, я уже рассказывал о хранении шифрованных данных в облаке Яндекс.Диск, тогда рассматривалось создание шифрованного образа диска средствами Mac OS X.
Сегодня, будем шифровать данные с помощью библиотеки OpenSSL, входящей в состав любого *NIX дистрибутива. К сожалению, самый распространённый архиватор tar, не умеет самостоятельно шифровать данные, но мы ему в этом поможем.
Отзыв пользовательских сертификатов OpenVPN на FreeBSD 10/11
Решил дополнить последний пост о настройке OpenVPN сервера на FreeBSD 10/11. В прошлый раз, оставил без внимания вопрос об отзыве пользовательских сертификатов, а ведь данная тема, рано или поздно, встаёт перед любым администратором.
Как вы, наверное, уже знаете, начиная с 10-ой версии FreeBSD изменился процесс создания и управления сертификатами. Ранее для отзыва сертификатов использовался специальный скрипт revoke-full. Отныне, за все действия с сертификатами, в том числе и за отзыв, отвечает один единственный shell-скрипт easyrsa.real, что согласитесь, гораздо удобнее. Пример отзыва сертификата пользователя user01:
переходим в каталог easy-rsa # cd /usr/local/etc/openvpn/easy-rsa удаляем сертификат пользователя user01 из базы # ./easyrsa.real revoke user01 создаем файл с отозванными сертификатами # ./easyrsa.real gen-crl
Осталось скопировать полученный файл crl.pem в каталог с остальными ключами (в моём случае это /usr/local/etc/openvpn/keys/). Также не забудьте в конфиге OpenVPN сервера (server.conf) раскомментировать соответствующую строку о проверке отозванных сертификатов:
crl-verify /usr/local/etc/openvpn/keys/crl.pem
Принудительная отправка deferred почты в Postfix
Решил написать данный пост больше для себя, чтобы не забыть, поскольку подобное вмешательство в работу почтового сервера требуется крайне редко. Когда почтовому серверу (в моем случае postfix) по каким-то причинам не удается отправить исходящую почту, он помещает её в очередь deferred (ожидание), откуда периодически будет пытаться её доставить снова.
Почему такое происходит? Живой пример из практики - косорукие админы (одного весьма крупного предприятия в нашем городе), по одной, ведомой только им причине, выборочно заблокировали часть внешки на файерволе. В итоге, мой сервер мог стучаться к их почтовику до посинения, пополняя свою deferred очередь новыми письмами, а админы не сном не духом. Спросите откуда такая уверенность что рубил не какой-то спам-фильтр? Да это легко проверить, подключившись telnet на 25 порт почтового сервера и не увидев даже приветствия.
Как раз в таких обстоятельствах и бывает нужно ускорить процесс не дожидаясь очередной попытки от сервера. Для немедленной отправки накопившейся почты в postfix имеется специальная команда:
postsuper -r ALL deferred
Мониторинг интернет канала на шлюзе FreeBSD
Давайте разберемся как посмотреть загрузку сетевого интерфейса и выявим кто занимает канал на шлюзе FreeBSD. Для начала узнаем насколько загружен сетевой канал в данный момент времени, не важно интернет это или локальная сеть.
[Решено] Thunderbird. Не удалось подключиться к IMAP-серверу.
Столкнулся сегодня с такой проблемой - в Mozilla Thunderbird при попытке открыть папку "Удаленные" или "Черновики" выходило следующее сообщение:
Не удалось подключиться к IMAP-серверу. Возможно вы превысили ограничение на максимальное число соединений к этому серверу. Если это так, откройте диалоговое окно "Дополнительные параметры IMAP-сервера" и уменьшите число кэшируемых соединений.
Как определить какой DNS сервер использует система?
В продолжение темы про DNS, сегодня хотелось бы рассказать как же проверить какой сервер в действительности отвечает на ваши запросы. Ситуации бывают разные, допустим внешние IP-адреса пингуются, а имена хостов не определяются, или у вас есть сомнения что перед вами действительно тот сайт, который должен быть (не редки случаи когда вирусы подменяют настройки DNS серверов вашего компьютера).
К примеру, при подключении по vpn каналу к одному из серверов, у меня в браузере на локальном компьютере переставали открываться странички. Как оказалось, подставлялся не верный DNS сервер.
Настройка DNS сервера Unbound в FreeBSD 10
В 10-ой версии FreeBSD убрали классический DNS сервер BIND и на его замену предлагается лёгкий кеширующий DNS сервер Unbound в связке с библиотекой LDNS. В отличие от BIND, Unbound имеет маленький размер и высокую скорость работы, к тому же существенно проще в настройке (во всяком случае для роли кэширующего сервера делается вообще играючи).
Если всё-таки потребуется настроить классический BIND 9, его можно уставить из коллекции портов. А вот с 10 версией я так и не понял что произошло... вроде как сильно изменена архитектура и он был полностью переписан на питоне. В общем, кому интересно, полагаю без труда найдут эту информацию.
Выделение статических ip адресов клиентам OpenVPN
Я уже не раз рассказывал как сконфигурировать собственный OpenVPN сервер. Пользователи подключаются по сертификатам и им динамически выдаются свободные ip-адреса из заданного диапазона. Встала задача выдавать некоторым клиентам постоянные ip-адреса, чтобы была возможность подключаться к ним тоже.
Собственно, решается это довольно просто, если знать как. В файл конфигурации сервера OpenVPN нужно добавить буквально пару строк:
client-to-client ifconfig-pool-persist ipp.txt
- client-to-client - разрешаем клиентам видеть друг-друга в сети
- ifconfig-pool-persist ipp.txt - наличие этой строки указывает, что перед тем как выдать клиенту свободный адрес из пула, сервер должен свериться с файлом ipp.txt, в котором прописывается привязка имени пользователя к ip-адресу.
Файл ipp.txt должен иметь следующий формат:
username1,ip-address username2,ip-address username3,ip-address
username1, username2 и username3 соотвествуют именам выданных сертификатов пользователей.
OpenVPN сервер на FreeBSD 10/11
Сегодня при установке OpenVPN сервера на FreeBSD 11 я понял что инструкция по настройке openvpn, которая писалась в далёком 2009 году уже не актуальна - процесс генерации ключей в обновленной EasyRSA 3 версии полностью изменился.
[Решено] Как полностью удалить Wine для последующей "чистой" установки
Продолжим начатую сегодня тему Linux, а то не знаю когда еще дойдут руки до написания заметки. За последнее время Wine (используется для запуска Windows приложений на *nix системах), как и сам Linux, довольно сильно продвинулся и стал заметно дружелюбнее к обычным пользователям, а не только бородатым мужчинам в вытянутых свитерах. Ну последнее уже пережиток прошлого и подобные существа хоть еще и встречаются, но это уже скорее вымирающий вид.
Ладно, отвлёкся... короче, хоть всё уже и становится в Linux более-менее нарядно, однако без помощи терминала порой не обойтись. Wine не исключение - не редки весьма странные глюки, побороть которые можно только полной переустановкой пакета.