Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
thanatologyst
6 лет назад

Гайд по hardened web server

 

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

Большинство атак на веб-приложений - это атаки XSS, Info Leakage, Session Management и PHP Injection, которые вызваны слабым программным кодом и неспособностью дезинфицировать инфраструктуру веб-приложений.

В этом практическом руководстве вы найдете необходимый набор навыков для защиты веб-сервера Apache.Мы поговорим о том, как защищать веб-сервер Apache на платформе *nix.

Содержание:

  1. SSH
  2. Firewall
  3. SSL
  4. Trace HTTP
  5. Утечки
  6. Замена заголовков
  7. XSS
  8. И еще крайне много всего

 

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

Не пугайтесь консоли, клавиша Tab имеет функцию автокомплита, она сама довершит написание команды или к примеру пути к файлу, вам надо лишь знать первые символы.

И не забывайте, строчные и заглавные символы в юникс системах, это абсолютно разная интерпретация системой, главная ошибка начинающих!

Весь гайд будет основан на CentOS Linux ,фактически это RHEL, для мелкого бизнеса, а не корпораций, почти все работает в обе стороны, это не ubuntu - «все из коробки» Но и зато система хорошо защищена.

OpenSSH :

Изначально система не имеет возможности удаленного доступа

Установим клиент и сервер ssh:

yum -y install openssh-server openssh-clients

Запускаем сервис:

chkconfig sshd on
service sshd start

Не забываем проверить 22 порт!

netstat -tulpn | grep :22

Firewall:

 Путь к конфигу -  /etc/sysconfig/iptables (IPv4 firewall),

 # vi /etc/sysconfig/iptables

 Добавим строку:

 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

 Логично запретить вход из внутренней сети, для избежания взлома через нее 192.168.1.0/24 :
 

-A RH-Firewall-1-INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT

 Для IPv6 джедаев, и кто роется в ip6tables:

 -A RH-Firewall-1-INPUT -m tcp -p tcp --dport 22 -j ACCEPT
 

Сохраняем. Рестарт iptables:


# service iptables restart  

  OpenSSH Server. Конфигурация

 Редактируем  /etc/ssh/sshd_config:
 

# vi /etc/ssh/sshd_config
 

Правильно будет убрать root логин:

 PermitRootLogin no
 

Разрешим доступ нашему пользователю через ssh:
 

AllowUsers thanatologyst
 

Меняем порт, чтобы упорно стучались на 22, а там закрыто)) на 1235

 Port 1235

 Сохраняем.Рестарт sshd:


# service sshd restart 

После этого, мы забываем про сервер, уходим в теплое помещение и выбираем ssh клиент, а юниксоиды просто открывают консоль. 

Ssh хорош тем, что фактически является полным эквивалентом ВПН, но иной реализации, мы же не хотим, чтобы в середину влез сниффер и стянул все пароли?

 # yum erase xinetd ypserv tftp-server telnet-server rsh-server 

Я не знаю от чего, но иногда система имеет аккаунты с нулевыми паролями. Это просто невероятная дыра. 

# awk -F: '($2 == "") {print}' /etc/shadow 

Получим листинг таких аккаунтов, и просто блокируем их 

# passwd -l accountName

 Еще раз внимательно просмотрим аккаунты  

  # awk -F: '($3 == "0") {print}' /etc/passwd

 Должны получить только такое 

root:x:0:0:root:/root:/bin/bash 

Если нет, то смотрим предыдущий шаг, иначе после, не войдете в систему вообще, но об этом написано в конфигурации SSH, самое начало статьи. 

Логично, что стоит посмотреть открытые порты:

netstat -tulpn 

 Если вы ставили ОC с LiveDVD, то 100% у вас будет GUI, вычищаем подчистую!

  #yum grouremove "X Window System"

По хорошему, надо прямо вот сразу ковырять iptables, те firefall, но я не знаю, что вы строите, потому это будет отдельным постом.  

После этого ставите Apache  и ждете следкующего поста. Где я расскажу о максимально возможной защите, и дезинформации взломщика.

 

 

0
3.115 GOLOS
На Golos с November 2017
Комментарии (5)
Сортировать по:
Сначала старые