SRV_ADMIN Telegram 2635
​​Проработал ещё один документ по безопасной настройки от CIS. На этот раз на тему Apache 2.4. Изучил 217 😱 страниц документа и постарался сделать универсальную краткую выжимку для постоянного использования. Те параметры, что есть в рекомендациях, но по умолчанию уже настроены, я не упоминаю.

📌 Как обычно, первая рекомендация по настройке — проверить список модулей и отключить ненужные. В зависимости от дистрибутива, команда на запуск бинарника может быть разная. В Debian и Ubuntu — apache2ctl, в Centos и клонах — httpd или apachectl.
# apache2ctl -M
Описание модулей можно посмотреть в документации. Для отключения комментируем строку с LoadModule и именем модуля в конфигурационном файле. Здесь же стоит убедиться, что:
модуль логирования log_config_module загружен;
модули, связанные с webdav (имеют dav в названии), отключены, если не нужны.
модуль статистики status_module отключен, если не используется, либо настроен, чтобы исключить доступ к статистике посторонним.
модуль autoindex_module отключен, он позволяет выполнять листинг директорий с файлами, если не задана индексная страница (index.html и т.д.)
отключены модули проксирования (proxy в названии), если не используются;
отключён модуль mod_info, который выводит информацию о сервере;

📌 Не используйте модуль mod_auth_basic, если доступ к сайту по http. В этом случае учётные данные передаются по сети в открытом виде и могут быть перехвачены кем угодно по пути следования пакетов.

📌 Обратите внимание на параметры для директорий AllowOverride и AllowOverrideList. Они разрешают или запрещают использование различных настроек для файлов конфигураций .htaccess, которые могут переопределять многие настройки сервера. По умолчанию подобные разрешения имеет смысл отключить и включать только точечно.
<Directory />
. . .
AllowOverride None
. . .
</Directory>

📌 Для корневой системной директории отключите все Options. По умолчанию включена опция FollowSymLinks.
<Directory />
. . .
Options None
. . .
</Directory>

📌 Традиционная рекомендация по настройке любого веб сервера — удалите весь контент, что идёт по умолчанию с установочным пакетом. Это относится к стартовой странице, страницам с кодами ошибок и т.д. Всё это помогает определить версию системы и веб сервера. Для apache это обычно директории /var/www/html и /usr/share/apache2/error/.

📌 Отключите всё, что касается cgi скриптов, если вы их не используете. Выполнение этих скриптов — наследие прошлого и сейчас чаще всего не используется, но может быть включено по умолчанию. Отключите модуль mod_cgi и настройки с упоминанием алиаса /cgi-bin/ или опции ExecCGI.

📌 Веб клиенты не должны иметь доступ к файлам .htaccess, .htpasswd и .htgroup. Обязательно настройте для них запрет.
<FilesMatch "^\.ht"> 
Require all denied
</FilesMatch>

📌 Запретите доступ к веб серверу по IP адресу или по несуществующему домену (rewrite_module должен быть включён). Для этого создайте виртуальный хост, который будет первым в списке. И добавьте в него редирект всех, кто обращается не на ваш домен:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example\.com [NC]
RewriteRule ^.(.*) - [L,F]
Если доменов много, можно сделать редирект тех, кто обращается по IP на любой другой домен:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^192\.168\.0\.1$
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

📌 Проверьте, что настроено логирование. Как минимум, должен быть включён error лог.
LogLevel notice core:info
ErrorLog "logs/error_log"
Если настроены access логи, не забудьте настроить их ротацию.

📌 По возможности, установите и настройте модуль mod_security. Это популярный web application firewall (WAF).

📌 Не используйте устаревшие версии TLS и Ciphers:
SSLProtocol TLSv1.2 TLSv1.3
SSLHonorCipherOrder On
SSLCipherSuite ALL:!EXP:!NULL:!LOW:!SSLv2:!RC4:!aNULL

📌 Отключите вывод информации о версии сервера:
ServerTokens Prod
ServerSignature Off

📌 Уменьшите дефолтный таймаут запросов:
Timeout 10


#cis #apache #security



tgoop.com/srv_admin/2635
Create:
Last Update:

​​Проработал ещё один документ по безопасной настройки от CIS. На этот раз на тему Apache 2.4. Изучил 217 😱 страниц документа и постарался сделать универсальную краткую выжимку для постоянного использования. Те параметры, что есть в рекомендациях, но по умолчанию уже настроены, я не упоминаю.

📌 Как обычно, первая рекомендация по настройке — проверить список модулей и отключить ненужные. В зависимости от дистрибутива, команда на запуск бинарника может быть разная. В Debian и Ubuntu — apache2ctl, в Centos и клонах — httpd или apachectl.
# apache2ctl -M
Описание модулей можно посмотреть в документации. Для отключения комментируем строку с LoadModule и именем модуля в конфигурационном файле. Здесь же стоит убедиться, что:
модуль логирования log_config_module загружен;
модули, связанные с webdav (имеют dav в названии), отключены, если не нужны.
модуль статистики status_module отключен, если не используется, либо настроен, чтобы исключить доступ к статистике посторонним.
модуль autoindex_module отключен, он позволяет выполнять листинг директорий с файлами, если не задана индексная страница (index.html и т.д.)
отключены модули проксирования (proxy в названии), если не используются;
отключён модуль mod_info, который выводит информацию о сервере;

📌 Не используйте модуль mod_auth_basic, если доступ к сайту по http. В этом случае учётные данные передаются по сети в открытом виде и могут быть перехвачены кем угодно по пути следования пакетов.

📌 Обратите внимание на параметры для директорий AllowOverride и AllowOverrideList. Они разрешают или запрещают использование различных настроек для файлов конфигураций .htaccess, которые могут переопределять многие настройки сервера. По умолчанию подобные разрешения имеет смысл отключить и включать только точечно.
<Directory />
. . .
AllowOverride None
. . .
</Directory>

📌 Для корневой системной директории отключите все Options. По умолчанию включена опция FollowSymLinks.
<Directory />
. . .
Options None
. . .
</Directory>

📌 Традиционная рекомендация по настройке любого веб сервера — удалите весь контент, что идёт по умолчанию с установочным пакетом. Это относится к стартовой странице, страницам с кодами ошибок и т.д. Всё это помогает определить версию системы и веб сервера. Для apache это обычно директории /var/www/html и /usr/share/apache2/error/.

📌 Отключите всё, что касается cgi скриптов, если вы их не используете. Выполнение этих скриптов — наследие прошлого и сейчас чаще всего не используется, но может быть включено по умолчанию. Отключите модуль mod_cgi и настройки с упоминанием алиаса /cgi-bin/ или опции ExecCGI.

📌 Веб клиенты не должны иметь доступ к файлам .htaccess, .htpasswd и .htgroup. Обязательно настройте для них запрет.
<FilesMatch "^\.ht"> 
Require all denied
</FilesMatch>

📌 Запретите доступ к веб серверу по IP адресу или по несуществующему домену (rewrite_module должен быть включён). Для этого создайте виртуальный хост, который будет первым в списке. И добавьте в него редирект всех, кто обращается не на ваш домен:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example\.com [NC]
RewriteRule ^.(.*) - [L,F]
Если доменов много, можно сделать редирект тех, кто обращается по IP на любой другой домен:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^192\.168\.0\.1$
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

📌 Проверьте, что настроено логирование. Как минимум, должен быть включён error лог.
LogLevel notice core:info
ErrorLog "logs/error_log"
Если настроены access логи, не забудьте настроить их ротацию.

📌 По возможности, установите и настройте модуль mod_security. Это популярный web application firewall (WAF).

📌 Не используйте устаревшие версии TLS и Ciphers:
SSLProtocol TLSv1.2 TLSv1.3
SSLHonorCipherOrder On
SSLCipherSuite ALL:!EXP:!NULL:!LOW:!SSLv2:!RC4:!aNULL

📌 Отключите вывод информации о версии сервера:
ServerTokens Prod
ServerSignature Off

📌 Уменьшите дефолтный таймаут запросов:
Timeout 10


#cis #apache #security

BY ServerAdmin.ru




Share with your friend now:
tgoop.com/srv_admin/2635

View MORE
Open in Telegram


Telegram News

Date: |

Over 33,000 people sent out over 1,000 doxxing messages in the group. Although the administrators tried to delete all of the messages, the posting speed was far too much for them to keep up. The administrator of a telegram group, "Suck Channel," was sentenced to six years and six months in prison for seven counts of incitement yesterday. With the administration mulling over limiting access to doxxing groups, a prominent Telegram doxxing group apparently went on a "revenge spree." Content is editable within two days of publishing Users are more open to new information on workdays rather than weekends.
from us


Telegram ServerAdmin.ru
FROM American