Якщо у вас є смартфон, то, напевно, ви хоч іноді користуєтеся публічними Wi-Fi точками доступу. Найчастіше, вони не захищені паролем. Та й якщо адміністратор цієї точки доступу поставив пароль, все одно бажано захищати свій трафік за допомогою шифрування. Хіба мало, яким чином може скористатися власник точки доступу відкритою інформацією.
Рубрика: Захист і безпека
Захищаємо сервер від всяких загроз. Опис налаштувань сервісів, що дозволяють поліпшити безпеку і т.д.
Доступ до сервера по ssh тільки для певної групи
SSH дозволяє обмежувати доступ до сервера тільки для користувачів, які перебувають в певній групі. Не будучи її членами, інші користувачі не зможуть зайти на сервер по ssh. Це зручна можливість видавати права доступу тільки тим користувачам, кому це дійсно необхідно.
Базова настройка iptables
Однією з першочергових завдань після установки системи є коректна настройка iptables для фільтрації трафіку. Політика по-замовчуванню дозволяє все, що не заборонено. Це не найвдаліший метод в плані безпеки, тому що в такому режимі сервер схильний до дії зловмисників.
Можна, наприклад, зайнятися скануванням відкритих на сервері портів. На основі цього можливо визначення використовуваних сервісів, їх версії, назви і версії операційної системи. Далі - підбір вразливостей до них. Або деякі icmp - повідомлення можуть видати зайву інформацію.
Як приховати факт використання nginx на сервері
Одного разу я прочитав статтю де йшлося про те, що можна приховати факт використання nginx на сервері. Для цього потрібно відредагувати вихідний код модуля ngx_http_header_filter_module і змінити рядки
static char ngx_http_server_string [] = "Server: nginx" CRLF; static char ngx_http_server_full_string [] = "Server:" NGINX_VER CRLF;
Але щоб пересобрать nginx з початкових кодів, потрібно володіти деякими знаннями.
Однак, існує і більш простий метод, який не потребує взагалі ніяких особливих дій, типу редагування початкових кодів і перекомпіляції.
Використання nginx http_referer_module для захисту адмінки сайту від брутфорса
Читаючи документацію веб-сервера nginx, натрапив на цікавий модуль під назвою http referer module . Він дозволяє блокувати доступ до сайту, або його розділів, якщо в запиті відсутня коректний заголовок referer.
Цей модуль можна застосувати для захисту адмінки будь-якого сайту від брутфорса. Наприклад, сайт працює на вордпресс, але блокування доступу по ip буде недоречною, якщо на сайті є зареєстровані користувачі. Їм же теж треба аутентифицироваться, а збирати їх ip - заняття безглузде. :)
Просте відстеження змін файлів
У разі злому сервера, хакер може модифікувати файли з метою залишити який-небудь бекдор, шелл і т.п. Змінені файли можна було б відстежити по даті модифікації, але цю дату легко підробити за допомогою утиліти touch.
(далі ...)
Обмеження доступу до wp-login по ip в nginx
Останнім часом fail2ban перестав нормально захищати від брутфорса на wordpress тому, що ip в усякому запиті унікальний і блокувати кожен адреса безглуздо.
Раз така дурниця, вирішив обмежити доступ до файлу wp-login.php по ip. Тут є один нюанс: для прописаного в конфігураційному файлі nginx локейшена (location) потрібно додати обробник скриптів, при використанні php-fpm .
У підсумку, конструкція виглядає так: (далі ...)
Спам-боти, postfix і fail2ban
На моєму сервері Postfix працює в якості сервера вихідної пошти, тобто тільки відправляє пошту з сайтів. Природно, відкритий 25-ий порт. Але більшу частину часу туди довбають носом всякі боти, які намагаються скористатися сервером, як відкритим реле. :) Природно, у них нічого не виходить, бо налаштовані правила. Але логи засмічують.
Установка і настройка OpenVPN на Debian 8
OpenVPN - це програмний комплекс, що дозволяє захистити від «прослушки» інтернет-трафік користувача, забезпечуючи зашифровану передачу даних від пристрою клієнта до сервера з встановленим OpenVPN. Дуже добре підходить при використання публічних wifi точок доступу, де інформація може бути перехоплена третіми особами. Або в разі, коли ваш ip заблокований на певному сайті і потрібно безпечно обійти це обмеження.
Множинні запити до xmlrpc.php в WordPress
Сьогодні заглянув в access-лог одного сайту на вордпресс і виявив безліч запитів подібного роду:
1.234.83.77 - - [05 / Sep / 2014: 12: 07: 01 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (compatible; MSIE 9.0; Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) " 1.234.83.77 - - [05 / Sep / 2014: 12: 07: 01 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (compatible; MSIE 9.0; Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) " 1.234.83.77 - - [05 / Sep / 2014: 12: 07: 02 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (compatible; MSIE 9.0; Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) " 1.234.83.77 - - [05 / Sep / 2014: 12: 07: 02 +0600] "POST /xmlrpc.php HTTP / 1.1" 200 441 "-" "Mozilla / 4.0 (compatible; MSIE 9.0; Windows NT 6.1; 125LA ; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) "
Судячи з результатів гугленія, є якийсь експлоїт, пов'язаний з цим файлом - xmlrpc.php. В одній статті англійською говорилося, як я зрозумів, спираючись на свої погані знання цієї мови :), про можливість організувати підбір паролів. Правда, поки що я не помітив наслідків, але краще заздалегідь вжити заходів. :)