Архив автора: admin

firewalld 1.2 уже выпущен и это его новости

Недавно запуск новая версия брандмауэра динамического управления брандмауэр 1.2, реализованный как оболочка поверх фильтров пакетов nftables и iptables.

Для тех, кто не знает о Firewalld, могу сказать, что представляет собой управляемый динамический брандмауэр, с поддержкой сетевых зон для определения уровня доверия к сетям или интерфейсам, которые вы используете для подключения. Он поддерживает конфигурации IPv4, IPv6 и мосты Ethernet.



Читать

OpenReplay привлек 4,7 миллиона долларов нового финансирования для развития своего сообщества.

Представлен OpenReplay недавно который привлек 4,7 миллиона долларов нового финансирования для расширения вашего сообщества, ускорения масштабируемого развертывания и улучшения взаимодействия с пользователем.

Для тех, кто не знает об OpenReplay, им следует знать, что это стартап, который предоставляет инструмент воспроизведения сеанса с открытым исходным кодом для разработчиков, который помогает им устранять неполадки, делая отладку визуальной, то есть, в основном, инструмент позволяет разработчикам воспроизводить ошибку, сохраняя журнал, чтобы они могли определить, где ошибка.



Читать

OpenReplay привлек 4,7 миллиона долларов нового финансирования для развития своего сообщества.

Представлен OpenReplay недавно который привлек 4,7 миллиона долларов нового финансирования для расширения вашего сообщества, ускорения масштабируемого развертывания и улучшения взаимодействия с пользователем.

Для тех, кто не знает об OpenReplay, им следует знать, что это стартап, который предоставляет инструмент воспроизведения сеанса с открытым исходным кодом для разработчиков, который помогает им устранять неполадки, делая отладку визуальной, то есть, в основном, инструмент позволяет разработчикам воспроизводить ошибку, сохраняя журнал, чтобы они могли определить, где ошибка.



Читать

Databricks выпустила код для Delta Lake и MLflow

Во время саммита Data + AI Представлены блоки данных через рекламу, что освободит всю структуру хранилища Delta Lake с открытым исходным кодом под контролем Linux Foundation.

Стоит отметить, что Delta Lake является проектом Linux Foundation с октября 2019 года. и именно открытый уровень хранения обеспечивает надежность и производительность озер данных за счет «архитектуры озер», лучших хранилищ данных и озер данных под одной крышей.



За последние три года Lakehouses стал привлекательным решением для дата-инженеров, аналитиков и специалистов по данным, которым нужна гибкость для запуска различных рабочих нагрузок с одними и теми же данными с минимальной сложностью и без дублирования, от аналитики данных до разработки обучающихся машин. . Delta Lake — самый популярный формат для домов у озера в мире, и в настоящее время его загружают более 7 миллионов раз в месяц (и этот показатель продолжает расти).

Читать

Databricks выпустила код для Delta Lake и MLflow

Во время саммита Data + AI Представлены блоки данных через рекламу, что освободит всю структуру хранилища Delta Lake с открытым исходным кодом под контролем Linux Foundation.

Стоит отметить, что Delta Lake является проектом Linux Foundation с октября 2019 года. и именно открытый уровень хранения обеспечивает надежность и производительность озер данных за счет «архитектуры озер», лучших хранилищ данных и озер данных под одной крышей.



За последние три года Lakehouses стал привлекательным решением для дата-инженеров, аналитиков и специалистов по данным, которым нужна гибкость для запуска различных рабочих нагрузок с одними и теми же данными с минимальной сложностью и без дублирования, от аналитики данных до разработки обучающихся машин. . Delta Lake — самый популярный формат для домов у озера в мире, и в настоящее время его загружают более 7 миллионов раз в месяц (и этот показатель продолжает расти).

Читать

Способы разграничения прав доступа в nginx

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




1. Как при помощи nginx заблокировать доступ с определенного ip к некоторой секции сайта?




Открываем конфигурационный файл вашего сайта:




nano /etc/nginx/sites-available/sitename.com




Находим или создаем локейшн, доступ к которому нужно закрыть с определенного ip, например «111.222.333.444»:




location /testdir {
    deny 111.222.333.444;
    }




После чего нужно не забыть проверить правильность конфигурации командой:




nginx -t




И в обязательном порядке перезагрузить nginx:




sudo servcie nginx restart




Или просто заставить его перечитать конфигурационные файлы:




sudo service nginx reload




Дополнительно вы можете вывести свою страницу ошибки или даже сделать переадресацию на другой сайт:




location /testdir {
    error_page 403 = @deny;
    deny 111.222.333.444;
}

location @deny {
    return 301 http://example.com/comingsoon;
}




Аналогичным образом вы можете отдавать любой HTTP ответ, вместо стандартного «ERROR 403«:




location /testdir {     
        deny 111.222.333.444;
        return 444;
 }




Ошибка 444 (No Response) — это пользовательский код состояния, используемый для указания nginx на закрытие соединения без отправки ответа клиенту, чаще всего используется для отклонения вредоносных или искаженных запросов.




Действие с IP по условию




В зависимости от определенного IP-адреса NGINX может выполнять различные действия, а не только запрет доступа. Например, перенаправление.




В данном примере мы перенаправляем всех посетителей по пути https://$host$request_uri, кроме запросов с IP-адреса 111.222.333.444.




location / {

    ...

    if ($remote_addr != 111.222.333.444) {

        return 301 https://$host$request_uri;

    }

    ...

}




2. Как при помощи nginx заблокировать доступ с нескольких ip адресов к некоторой секции сайта?




Аналогичным образом вы можете отправить шуточный код ошибки «HTTP 418» I’m a teapot (Я — чайник). Этот код был представлен в 1998 году как одна из традиционных первоапрельских шуток IETF в RFC 2324, Hyper Text Coffee Pot Control Protocol. Ожидается, что этот код не будет поддерживаться реальными серверами. Как бы то ни было, реализации существуют. Сервер HTTP Nginx в своей конфигурации использует этот код для имитации поведения goto-like.




deny 111.222.333.444;
deny 111.222.333.555;
deny 111.222.333.666;
deny 111.222.333.777;




1 апреля 1998 года Internet Engineering Task Force (IETF, «Целевая группа по инженерному обеспечению Интернета) представила «протокол для контроля, мониторинга и диагностики кофемашин». В документе среди прочего описывались и ошибки. Проблема за номером 418 описывалась так: если кто-то попытается сварить кофе в чайнике, последний вежливо, но твердо сообщит: «Я – чайник. Ошибка 418».




Шутка прижилась (по крайней мере, в узких кругах). Например, у Google даже сегодня есть соответствующая страница google.com/teapot







3. Как при помощи nginx заблокировать доступ с диапазона или нескольких диапазонов ip адресов к некоторой секции сайта?




В данной ситуации локейшн не представляет ничего особенного и составляется по следующему принципу.




Для запрета доступа с одного диапазона (111.222.111.1-111.222.111.254) ip:




location /testdir {     
        deny 111.222.111.0/24;
 }




Для запрета доступа с нескольких диапазонов ip адресов:




location /testdir {     
        deny 111.222.111.0/24;
        deny 111.222.222.0/24;
 }




4. Как при помощи nginx заблокировать доступ из списка ip адресов и списка диапазонов ip? расположенных в отдельном файле к некоторой секции сайта?




Вот мы и подошли к более интересному случаю, когда мы можем заблокировать на одном сайте, в нескольких сайтах или же на большом количестве сайтов множество ip адресов и диапазонов сетей, которые у нас расположены в некотором файле «testdir_ip_deny.txt«, расположенном в папке «/etc/nginx/«




location /testdir {     
        include /etc/nginx/testdir_ip_deny.txt
 }




Содержимое файла «testdir_ip_deny.txt» может выглядеть следующим образом:




deny 111.555.111.0/24;
deny 111.222.333.444;
deny 111.222.333.555;
deny 111.222.333.666;
deny 111.222.333.777;
deny 111.666.222.0/24;
deny 111.333.333.888;
deny 111.444.333.999;
deny 111.222.321.666;
deny 111.222.456.777;




В таком виде nginx может обработать десятки тысяч ip адресов и диапазонов ip сетей.




Аналогичным образом вы можете заблокировать доступ ко всем сайтам и всем локейшинам nginx, не прописывая правила блокировки во всех конфигах сайтов.




Для этого достаточно создать файл ip_deny_to_all.conf в директории конфигурационных файлов (/etc/nginx/conf.d) nginx:




nano /etc/nginx/conf.d/ip_deny_to_all.conf




B вставить в него произвольный список запретов:




...
deny 111.666.222.0/24;
deny 111.333.333.888;
...




include добавлять никуда не нужно, т.к. все конфигурационные файлы (*.conf) из данной директории автоматически подключаются в основной конфиг в секцию HTTP, проверить это вы можете открыв соответствующий файл:




nano /etc/nginx/nginx.conf




И найдя следующий код:




http {
...

   include /etc/nginx/conf.d/*.conf;
   include /etc/nginx/sites-enabled/*;
}




Таким образом вы сможете заблокировать или разрешить доступ ко всем сайтам, учитывая содержимое файла /etc/nginx/conf.d/ip_deny_to_all.conf




Таким образом вы можете составить несколько списков, в том числе и списки по странам (вместо использования NGINX GeoIP Module), взяв их, например, на одном из следующих сайтов:




https://www.countryipblocks.net/acl.php (может быть недоступен с ip адресов РФ и РБ)




http://ipverse.net/ipblocks/data/countries/xx.zone (пример: xxru)




Диапазоны IP-адресов по странам




Major IP Addresses Blocks By Country




На деле это редко когда может быть актуальным, т.к. тратит ресурсы сервера: канал и процессорное время и правильнее использовать блокировку при помощи ipset или iptables!









2022-06-30T03:09:51
Настройка web сервера