ServerAdmin.ru
26.6K subscribers
197 photos
24 videos
8 files
2.47K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​Я регулярно сталкиваюсь с одной и той же проблемой. Как правильно определить, какой стране принадлежит IP адрес? При использовании публичных сервисов в интернете, которые есть в первой странице выдачи гугла, результат бывает очень разнообразен. Буквально вчера столкнулся с тем, что получил 3 разных расположения одного и того же адреса. Мне показали на США, Москву и Пакистан.

При этом фильтрация на основе GEO много где используется. У меня есть ещё одна виртуалка, которая должна быть в Москве, но при этом её IP адрес иногда определяется, как принадлежащий Украине. А у меня там VPN. И иногда я вижу сайты на украинском языке. Плюс, некоторые сервисы глючат, которые привязаны к GEO посетителя.

Какие есть наиболее достоверные способы определить принадлежность IP адреса к какой-то стране? И существуют ли они вообще? Мне кажется, что да, но я их просто не знаю. Сервисы, какими сам пользуюсь, не пишу, потому что доверия к ним всё равно нет. Обычно ищу в поисковиках по запросу "проверить ip адрес".

#разное #сервис
​​Нашёл отличный сервис, который выдаёт информацию об ip адресе. При этом работает совершенно бесплатно и без регистрации. Не надо никаких учёток создавать, токены получать. Сервис - https://ip-api.com

Простой пример проверки IP адреса с получением информации в формате json:
# curl http://ip-api.com/json/1.1.1.1
Чтобы получился красивый вывод, можно использовать jq:
# curl http://ip-api.com/json/1.1.1.1 | jq

Все возможные форматы запросов и ответов можно посмотреть в документации. Можно, к примеру, явно указать, какие поля ответа вы хотите получить, чтобы потом у себя не приходилось самому обрабатывать ответ и убирать лишние поля.

Индийский товарищ по имени Rajkumar Dusad написал небольшой софт (IP-Tracer) на php, который через этот сервис проверяет IP адреса в консоли, причём в том числе на смартфонах с использованием Termux. Не знаю, кому этот софт может понадобиться, но звездочек на гитхабе у него полно. Про ip-api.com я узнал как раз, когда наткнулся на эту утилиту. Решил посмотреть, откуда она информацию берёт.

Ограничение ip-api.com - не более 45 запросов в минуту. Кому надо больше - добро пожаловать на платные тарифы.

#сервис #бесплатно
​​Пожалуй самый простой способ получить информацию об IP без регистраций и смс:
# curl 'https://ifconfig.co/json?ip=1.1.1.1'

Для красоты можно в jq обернуть:
# curl -s 'https://ifconfig.co/json?ip=1.1.1.1' | jq
Обратите внимание на ключ -s, который убирает прогресс бар. Постоянно забываю про него и ищу в гугле.

Очень полезно, если в консоли что-то разбираете. Например, логи веб сервера или странные пиры астериска. Можно тут же посмотреть, что за ip адрес вам надоедает.

Пост или сам сервис имеет смысл добавить в закладки.

#bash #сервис
​​Если вам нужен свой сервер для проверки скорости соединения, то есть отличный бесплатный, полностью открытый и без рекламы вариант - LibreSpeed. Работает на PHP + Javascript, с использованием XMLHttpRequest и Web Workers.

Попробовать очень просто, так как есть готовый докер контейнер:
# docker run -e MODE=standalone -p 80:80 -it adolfintel/speedtest

Я попробовал, работает адекватно. Мой 4G канал намерил примерно так же, как и другие публичные сервисы. Показывает следующие метрики:
- Download / Upload
- Ping
- Jitter (задержка)
- IP / Провайдер

Данные замеров могут сохраняться в базе данных на выбор: MySQL, PostgreSQL, SQLite. Если захотите развернуть у себя без докера и с сохранением результатов в БД, то есть отдельная инструкция.

Может работать как одиночный сервер, или как сервис для множества других настроенных закрытых серверов. В инструкции показано как это сделать. То есть можно поднять веб интерфейс, и, к примеру, 5 серверов, которые можно будет выбирать в веб интерфейсе.

Хорошая альтернатива коммерческому и проприетарному Speedtest.

Demo: https://librespeed.org
Исходники: https://github.com/librespeed/speedtest
Docker: https://registry.hub.docker.com/r/adolfintel/speedtest
Инструкция для Docker: https://github.com/librespeed/speedtest/blob/master/doc_docker.md

#сервис
​​На днях была рассылка от компании Onlyoffice. Они анонсировали бесплатный онлайн конвертер офисных документов разных форматов. Например, перевести pdf в word, xlsx в pdf, csv в xls и т.д.

Очевидно, что самым востребованным направлением является конвертация pdf во что-то другое. Например в doc или fb2 (для книг актуально, которые часто только в pdf формате есть). Я попробовал на нескольких примерах, работает нормально.

Не нужна регистрация, нет никакой рекламы. Всё работает быстро и чётко. Единственное ограничение - размер файла не более 5 Мб. Это мало, особенно для книг, но что есть, то есть.

Мне кажется, хороший ход сделали маркетологи. Подобный сервис реально востребован. Я сам иногда пользуюсь. В сети много клонов, но все они чаще всего с рекламой или ещё какой-то заманухой. А тут по сути сам сервис является рекламой своих продуктов, так что нет смысла его как-то монетизировать отдельно.

Даже если самому не надо, можно этот сервис предлагать каким-то знакомым, далёким от IT.

https://www.onlyoffice.com/ru/convert.aspx

#сервис
​​Вы в курсе, что существует публичный сервис, на котором можно посмотреть историю всех выпущенных сертификатов для домена? Я мельком видел в комментариях об его упоминании, но лично никогда не проверял. А теперь решил проверить - https://crt.sh.

Он реально помнит все сертификаты и поддомены, для которых они выпускались. Проверил свой технический домен и на глазок показалось, что там весь набор используемых поддоменов отражён. Даже немного стрёмно стало. Там есть даже те домены, что я делал не для публичного использования, а для своих личных целей. Хоть я и закрывал их всегда от постороннего доступа, но всё равно на всякий случай проверил, нет ли где-то ошибки и открытого доступа.

Проверьте себя на всякий случай, а ссылочку сохраните. Сервис реально полезный.

https://crt.sh

#сервис
​​Администраторам Linux постоянно приходится сталкиваться с регулярными выражениями. Разобраться в них - та ещё задача. Лично я не умею писать регулярки. Что-то простое, конечно, могу придумать, или расшифровать чужую, но не всегда. Как по мне, регулярки - настоящий вынос мозга. Я их просто записываю и собираю свою коллекцию.

Упростить понимание и написание регулярок может старый известный сервис regex101.com. Рекомендую забрать его в закладки. Странно, что я ещё ни разу о нём не написал. Рассмотрим простой пример 😁

^(?:(?:25[0-5]|2[0-4]\d|1?\d?\d)(?:\.(?!$)|$)){4}$

Есть хоть один вменяемый человек, который сможет понять, что это такое? Это же натуральная обфускация, чтобы никто не понял, о чём тут речь. Но на самом деле это регулярка для проверки IP адреса. Результат работы сервиса по этой регулярке можете посмотреть на картинке.

Помимо непосредственно проверки, в этом сервисе есть большая коллекция готовых выражений, по которой работает поиск. Там можно найти много полезных штук, которые не придётся придумывать самому или искать где-то ещё.

Один народный умелец так проникся этим сервисом, что упаковал его в офлайн приложение для PC под все системы:
https://github.com/nedrysoft/regex101

Кстати, у меня даже ни одного знакомого нет, кто мог бы написать какую-то более ли менее сложную регулярку. Либо я об этом не знаю. Это какое-то тайное знание, которое передаётся как магия из рук в руки между хранителями исходников.

Вы можете сами написать регулярку, наподобие той, что проверяет ip адреса?

#regex #сервис
​​Садитесь поудобнее, рассказываю про шикарный сервис, который вы точно сохраните себе в закладки, потому что он может пригодиться не только в IT, но и во многих других делах.

CyberChef - преобразователь всего и вся. Когда его увидел, не проникся. Да, много всяких сервисов в онлайне, которые и так уже умеют всё, что только можно. Но когда детальнее посмотрел, как всё это работает, оценил удобство.

Во-первых, там много всяких трансформаций. Во-вторых, они удобно выстраиваются в последовательность преобразований, где ими можно управлять: что-то отключать, добавлять новые и т.д. Потом весь набор преобразований можно сохранить в рецепт к себе, а позже снова загрузить, когда нужно будет повторить операции.

Например, вам надо из текста убрать все пробелы и преобразовать его в нижний регистр. Собираете последовательность из двух действий: remove whitespace и to lower case. И получаете на выходе результат.

Можете сохранить и использовать рецепт по очищению конфигурационных файлов от пустых строк и комментариев. Можете забирать http запросом json строку, извлекать из неё значения с помощью jpath, а потом ещё декодировать, если она в каком-то кодированном формате.

Вот пример рецепта, где я:
Обращаюсь к тестовому API и получаю ответ в json формате
Извлекаю из результата только email адрес
Очищаю email от кавычек в начале и в конце.

Преобразований очень много. Я бегло изучил список и кое-что попробовал. Например, Networking -> Group IP Adresses получает на вход список из IP адресов, а на выходе выводит список масок подсетей, которые охватывают все введённые адреса. Преобразование Public Key -> Parse X.509 certificate на входе принимает исходный текст сертификата, а на выходе показывает всю информацию по нему, как это делает утилита openssl с соответствующими ключами. Я обычно в винде такие файлы сохраняю с расширением .cer и смотрю через проводник информацию о сертификате.

Сервис очень функциональный, а главное сделан удобно. Может стать помощником во многих делах. Можно его настроить для выполнения каких-то рутинных действия для людей, далёких от IT. Они могут вообще не знать, что существуют такие готовые преобразователи данных.

Ко всему прочему это open source. Исходники доступны, сервис можно запустить у себя локально. Написан, понятное дело, на JavaScript.

Сайт / Исходники

#сервис
​​В продолжение темы настройки почтовых серверов решил сделать подборку онлайн сервисов, которые помогут проверить все настройки DNS и самого сервера. Первыми двумя я сам постоянно пользуюсь, когда настраиваю почтовый сервер.

mail-tester.com - отличный сервис по проверке работы почтового сервера. Достаточно отправить письмо со своего сервера на специально сформированный ящик и дальше смотреть отчет. Сервис проверяет следующие параметры:
◽️ Настройку DKIM, SPF, DMARC
◽️ Все необходимые DNS записи, в том числе PTR
◽️ Наличие вашего сервера в черных списках
◽️ Контекстные факторы (форматирование, картинки, наличие List-Unsubscribe и т.д.)
◽️ Анализ вашего письма с помощью SpamAssasin
По каждому пункту можно посмотреть комментарии и конкретную информацию по существу. Например, заголовки писем, ошибки в DNS записях и т.д. Если проблемы есть, они будут отражены, и этой информации будет достаточно для исправления.

dkimcore - очень простой сервис для проверки DKIM. Имеет две проверки:
◽️Корректность публичного ключа, который вы будете записывать в DNS. Иногда, при копировании строки для DNS записи, туда могут попадать лишние символы, либо строку по ошибке обрежешь, и в итоге ключ становится недействительным. Можно потом долго соображать, почему же проверка DKIM не проходит. А просто ключ неверный записан.
◽️Корректность DNS записи. После того, как добавили TXT запись с публичным ключом, стоит подождать обновления DNS, а потом проверить с помощью сервиса корректность этой записи.

checktls.com - с помощью этого сервиса можно выполнить проверку подключения к своему серверу. Он проверит основные этапы взаимодействия (подключение, ответ, шифрование и т.д.) и выведет весь лог smtp сессии в браузере. Это удобно для анализа работы сервера и проверки tls сертификатов. 

mxtoolbox.com - здесь огромное количество всевозможных проверок: DNS записи, сертификаты, чёрные списки и т.д. Можно получить сводный отчёт о своём сервере, если отправить письмо по адресу ping@tools.mxtoolbox.com. В ответ придёт отчёт с проверками.

Если знаете ещё хорошие сервисы, помогающие настраивать и проверять почтовые сервера, поделитесь в комментариях.

#mailserver #сервис
​​Ранее я уже затрагивал тему работы с регулярными выражениями, рассказав про сервис regex101.com. Хочу её немного развить и дополнить ещё несколькими полезными ссылками, которые имеет смысл собрать в одном месте, чтобы воспользоваться, когда нужно будет написать очередную регулярку.

Есть очень удобный сервис, который на основе введённых вами данных сам напишет регулярку. Звучит, как фантастика, но он действительно это умеет. Это программа grex, которую можно запустить у себя, либо воспользоваться публичным сервисомhttps://pemistahl.github.io/grex-js.

Приведу простой пример для наглядности. Вам нужна регулярка, которая покрывает IP адреса из подсети 192.168.0.0/24. Мне не очевидно, как её сделать. А с помощью этого сервиса никаких проблем. Пишу простой скрипт, который мне сформирует строку со всеми 256 адресами:

#!/bin/bash
count=1
while [ $count -le 256 ]
do
echo 192.168.0.$count
count=$(( $count + 1 ))
done

Копирую полученную строку в grex, получаю регулярку:
^192\.168\.0\.(?:2(?:5[0-6]|[6-9])|(?:1[0-9]|2[0-4]|[3-9])[0-9]?|25?|1)$

Для проверки прогоняю её через regex101.com и убеждаюсь, что пример рабочий.

Конечно, какие-то сложные выражения с помощью этого сервиса не составить, но что-то простое запросто можно сделать, особенно если вы не особо разбираетесь в самостоятельном написании. Я буквально за 5 минут решил поставленную задачу. Сам бы точно ковырялся дольше с составлением.

И ещё несколько ссылок. Сервис https://regexper.com наглядно разбирает регулярку с картинками. Удобно для изучения и понимания. А в сервисе https://ihateregex.io можно посмотреть примеры наиболее востребованных регулярок тоже с примерами разбора правил. Также хочу порекомендовать вам хороший бесплатный курс по изучению регулярных выражений — https://stepik.org/course/107335/promo.

📌 А теперь всё кратко одним списком:
 regex101.com — проверка регулярных выражений
 grex — автоматическое составление регулярок
 regexper.com — схематическое изображение регулярок
 ihateregex.io — готовые примеры регулярных выражений
 stepik.org — бесплатный курс для изучения регулярок

#regex #сервис