Как проверить Linux-сервер (линукс сервер) на предмет взлома, если закрались какие либо подозрения?
Но сразу скажу что все зависит от квалификации злоумышленника и значимости ресурса.
По крайне мере думаю,что для многих это будет полезно и познавательно. Для начало сканируем с другого хоста что у нас открыто из подозрительных открытых портов, при помощи утилиты nmap: $ nmap -P0 -p 1-65505 XXX.XXX.XXX.XXX (или хост)
Starting Nmap 5.21 ( http://nmap.org )
Nmap scan report for host (XXX.XXX.XXX.XXX)
Host is up (0.0066s latency).
Not shown: 65499 closed ports
PORT STATE SERVICE
21/tcp open ftp
80/tcp open http
111/tcp open rpcbind
443/tcp open https
1723/tcp open pptp
… …
AWStats — один из лучших бесплатных анализаторов логов, позволяет в удобном графическом виде просматривать логи web, ftp, mail.
Ставим сам пакет: $ aptitude install awstats
The following NEW packages will be installed:
awstats libnet-xwhois-perl{a}
0 packages upgraded, 2 newly installed, 0 to remove and 123 not upgraded.
Need to get 1,012 kB of archives. After unpacking 5,394 kB will be used.
Do you want to continue? [Y/n/?]
После его установке, предлагаю установить пакет libgeo-ipfree-perl, лучше это сделать, не помешает, тем более я собираюсь подключить плагин geoipfree.
И так приступаем непосредственно настройке.
Предположим, что вы хотите проанализировать log-файлы Apache2 для нашего веб-сайта «xxx.com» (так же это может быть и IP-адрес).Создаем новый файл конфигурации: $ cp /etc/awstats/awstats.conf /etc/awstats/awstats.xxx.conf Читать далее…
Помимо утилиты chkrootkit, про которую писал ранее, есть еще один полезный пакет — rkhunter, который в купе с chkrootkit предназначен для обеспечения безопасности сервера на предмет троянов,вирусов, закладок и прочей «гадости» путем проверки MD5 сумм, контроля неверных прав доступа и сигнатур закладок в модулях ядра.
Ставим просто: $ apt-get install rkhunter
Перед запуском рекомендуется обновить базы $ rkhunter --update
Запуск производится следующим образом rkhunter -c -sk
[ Rootkit Hunter version 1.3.6 ]
Checking system commands…
…..
Webmin — это программный комплекс, позволяющий администрировать операционную систему через веб-интерфейс, в большинстве случаев, позволяя обойтись без использования командной строки и запоминания системных команд и их параметров.
Webmin состоит из простого веб-сервера и большого количества скриптов (>500-т), которые собственно и осуществляют связь между командами администратора через веб-интерфейс и их исполнением на уровне операционной системы и прикладных программ. Webmin написан полностью на языке Perl и не использует никаких дополнительных нестандартных модулей. Простота, лёгкость и быстрота выполнения команд — одно из самых больших преимуществ данной панели управления.
Данная панель управления бесплатно распространяется для коммерческого и некоммерческого использования. Авторы этой программы позволяют всем желающим не только бесплатно использовать программу, но и изменять её по своему усмотрению.
=============== Материал из Википедии — свободной энциклопедии ===============
Так как было написанно выше, используеться Perl, поэтому ставим или проверяем если у нас необходимые пакеты: $ aptitude install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl libmd5-perl
Теперь идем на офф-сайт и берем самую свежую версию Webmin на момент написания это — webmin_1.490_all.deb. $ cd ~/tmp
$ wget http://prdownloads.sourceforge.net/webadmin/webmin_1.490_all.deb
$ dpkg -i webmin_1.490_all.deb
По окончании установки система сообщит адрес, через который можно зайти браузером для администрирования, по умолчанию http://localhost:10000/, при подключении удаленно используеться имя домена или сетевой адресс (IP).
Удалить Webmin можно при помощи скрипта, находиться он в /etc/webmin: $ cd /etc/webmin
$ sh ./uninstall.sh
Are you sure you want to uninstall Webmin? (y/n) : y
Removing Webmin package ..
Кстати небольшой анекдот можно сказать в тему: Заходит православный батюшка и хочет купить карточку пополнения счета. Продавец извиняясь отвечает, что требуемой карточки в наличии нет и предлагает воспользоваться автоматом для пополнения счета. На что батюшка задумчиво отвечает:
- Не доверяю этим бесовским машинам, сын мой, при случае ни в морду дать, ни отпеть!
Читаем еще:
Есть хороший пакет chkrootkit который предназначен для поиска враждебного кода (rootkit) и иных подозрительных событий в системе. Рекомендую проверять систему периодически для пущего спокойствия или например, при подозрениях, что кто-то шарится по твоему серверу.
Из описания на chkrootkit — это сканер безопасности, который ищет в локальной системе признаки, указывающие на наличие ‘руткита’. Руткит — это набор программ, позволяющих полностью управлять чужим компьютером через известные уязвимости.
Типы определяемых руткитов перечислены на .
Заметим, данная проверка не даёт полной гарантии, что компьютер не был взломан. В дополнение к chkrootkit используйте другие проверки. Читать далее…
Термин виртуальный хост относится к практике размещения более чем одного веб-сайта (например, www.company1.com и www.company2.com) на одной машине. Виртуальный хост может быть как «привязанным к IP-адресу», что означает использование отдельного IP адреса для каждого сайта, либо «привязанным к имени», позволяя вам иметь несколько различных имён для каждого IP-адреса. Факт того, что эти сайты работают на одном и том же физическом сервере, не очевиден конечным пользователям.
Вот здесь описана моя настройка виртуальных хостов, и в принципе в этой заметке не чего нового ни будет, просто добавлено немного «воды» — так что бы потом ни рыскать по инету, если понадобиться освежить память .
Конфигурационные файлы apache2: /etc/apache2/ — Основная папка /mods-available — доступные модули apache /mods-enabled — подключенные модули apache /sites-available — доступные сайты — здесь находятся файлы конфигурация виртуальных хостов. Читать далее…