Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём неправильно. Необходимо обновить браузер или попробовать использовать другой.
РАЗБОРСтатья
The Artillery Project - защищаемся от сканирований и брута
Тестировать на проникновение - это круто. Но как защититься чтобы тебя не взломали?
Artillery — это IPS система, позволяющая проводить мониторинг файловой системы на предмет модификаций и журналов служб на предмет сообщений об ошибках, проводить анализ конфигурации операционной системы и выявлять уязвимости, работать как honeypot и блокировать нарушителей по IP адресам, а так же уведомлять системного администратора об атаках по электронной почте.
git clone https://github.com/BinaryDefense/artillery.git
cd artillery
python setup.py
После запуска установка вас спросят Хотите ли вы сделать чтобы при запуске системы Artillery запускалась автоматически.
Позже задаст вопрос, запустить ли сейчас Artillery.
Поздравляю вы поставили Artillery на вашу систему.
Установить и запустить это будет маловато. Нужно ещё её правильно настроить.
Давайте пойдем по настроим.
Открываем файл конфигурации
Код:
nano/var/artillery/config
видим что у нас включен мониторинг папок /root//var//etc/
Код:
# DETERMINE IF YOU WANT TO MONITOR OR NOT
MONITOR="ON"
#
# THESE ARE THE FOLDERS TO MONITOR, TO ADD MORE, JUST DO "/root","/var/", etc.
MONITOR_FOLDERS="/var/www","/etc/"
Так же мы можем увидеть наши HONEYPOT порты
Код:
# PORTS TO SPAWN HONEYPOT FOR
PORTS="22,1433,8080,21,5900,25,53,110,1723,1337,10000,5800,44443,16993"
Сюда вы можете добавить порты которые у вас не установлены на сервисы и ловить "китайских хакеров" которые пытаются вас сканировать.
После старта Artillery слушает порты эти порты которые для злоумышленников очень лакомый кусочек.
Также есть Банлист он находиться тут
Код:
/var/artillery/banlist.txt
там хранятся все заблокированные IP адреса
Ниже можно включить или выключить мониторинг SSH и защитить его от брута.
Код:
# DO YOU WANT TO MONITOR SSH BRUTE FORCE ATTEMPTS
SSH_BRUTE_MONITOR="ON"
#
# HOW MANY ATTEMPTS BEFORE YOU BAN
SSH_BRUTE_ATTEMPTS="4"
Если вы не всегда сидите за компом и мониторите систему вы можете настроить чтобы Artillery уведомляла вас по почте о злых намереньях хакеров на вас напасть.
Код:
# SHOULD EMAIL ALERTS BE SENT
EMAIL_ALERTS="OFF"
#
# CURRENT SUPPORT IS FOR SMTP, ENTER YOUR USERNAME AND PASSWORD HERE. LEAVE BLANK FOR OPEN RELAY
SMTP_USERNAME=""
#
# ENTER THE SMTP PASSWORD HERE. LEAVE BLANK FOR OPEN RELAY
SMTP_PASSWORD=""
#
# THIS IS WHO TO SEND THE ALERTS TO - EMAILS WILL BE SENT FROM ARTILLERY TO THIS ADDRESS
ALERT_USER_EMAIL="user@whatever.com"
#
# FOR SMTP ONLY HERE, THIS IS THE MAILTO
SMTP_FROM="Artillery Incident"
#
# SMTP ADDRESS FOR SENDING EMAILS, DEFAULT IS GMAIL
SMTP_ADDRESS="smtp.gmail.com"
#
# SMTP PORT FOR SENDING EMAILS DEFAULT IS GMAIL WITH TTLS
SMTP_PORT="587"
Для того чтобы все логи нашей программы писались в папку с программой то внизу в измените
Код:
# Specify SYSLOG TYPE to be local, file or remote. LOCAL will pipe to syslog, REMOTE will pipe to remote SYSLOG, and file will send to alerts.log in local artillery directory
SYSLOG_TYPE="LOCAL"
с LOCAL на FILE
Тогда в папке /var/artillery/logs/ будут сохраняться логи.
Если вы настроили ваш конфиг файл сохраняем его и закрываем.
И перезапускаем Artillery чтобы наши новые настройка вступили в силу.
Код:
python restat_server.py
Если мы проверим какие порты у нас открыты
Код:
netstat –antp | grep LISTEN
то мы увидим что все порты которые мы указывали к разделе Honeypot они здесь присутствуют.
Воспользовавшись утилитой nmap я вот что увидел.
Чтобы удалить IP адрес из Банлиста нужно запустить скрипт из каталога Artillery
Эта поделка считает пакеты, а делает за нее все делает iptables. Не проще бы было изучить iptables и сделать нечно подобное:
iptables -A SSH_FILTER -m conntrack --ctstate NEW -m recent --update --seconds 60 --hitcount 5 -j DROP
iptables -A SSH_FILTER -m recent --set -j ACCEPT
iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 22 -j SSH_FILTER
Здесь автоматом, всё что идет на 22 порт, проходит фильтр "SSH_FILTER" и если в минуту подключений больше 5 - то в бан.
Свой IP в whitelist добавляем так:
iptables -A INPUT -s MY_IP -p tcp -m tcp --dport 22 -j ACCEPT
---- Automatically Merged Double Post ----
Забыл добавить.
Самая лучшая защита:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
Эта поделка считает пакеты, а делает за нее все делает iptables. Не проще бы было изучить iptables и сделать нечно подобное:
iptables -A SSH_FILTER -m conntrack --ctstate NEW -m recent --update --seconds 60 --hitcount 5 -j DROP
iptables -A SSH_FILTER -m recent --set -j ACCEPT
iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 22 -j SSH_FILTER
Здесь автоматом, всё что идет на 22 порт, проходит фильтр "SSH_FILTER" и если в минуту подключений больше 5 - то в бан.
Свой IP в whitelist добавляем так:
iptables -A INPUT -s MY_IP -p tcp -m tcp --dport 22 -j ACCEPT
---- Automatically Merged Double Post ----
Забыл добавить.
Самая лучшая защита:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
На данном сайте используются файлы cookie, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь. Продолжая использовать этот сайт, Вы соглашаетесь на использование наших файлов cookie.
Комментарии
3