Программирование, радиоэлектроника,
саморазвитие и частичка из моей жизни здесь...

Защита phpMyAdmin и SquirrelMail от брутфорса используя htaccess

Сервер в опасности - боты атакуют!Каждый, кто начал использовать свой собственный или арендованный, подключенный напрямую к сети интернет сервер на Linux, сталкивался с проблемами брутфорса(грубого перебора) паролей как по SSH так и по FTP. Решить эти проблемы можно используя некоторые скрипты и трюки.

Не меньшую опасность для владельца такого сервера представляют открытые к публичному доступу папки и панели авторизации  phpMyAdmin(менеджер MySQL баз данных) и SquirrelMail (веб-интерфейс для почтовой системы).

Содержание:

  1. Предисловие
  2. Защита директории phpMyAdmin
  3. Защита директории SquirrelMail
  4. В завершение

Предисловие

Описан простой способ защиты папок и панелей авторизации веб-приложений phpMyAdmin и SquirrelMail. Настраиваем веб-авторизацию по логину и паролю используя файлы ".htaccess" и ".htpasswd".

Предполагается что сервер работает под операционной системой (ОС) GNUU/Linux: Debian, Ubuntu. В других версиях ОС пути к директориям могут быть иными.

Защита для phpMyAdmin

Создаем на сервере файл ".htaccess" с настройками доступа к директории "/usr/share/phpmyadmin":

cd /usr/share/phpmyadmin
nano .htaccess

Вставляем в редаток код, что приведен ниже:

<Files .htpasswd>
deny from all
</Files>
AuthType Basic
AuthName "Private zone, please authorize..."
AuthUserFile  /usr/share/phpmyadmin/.htpasswd
require valid-user

Примечание: для выхода из редактора "nano" нужно нажать сочетание клавиш "CTRL+X" и подтвердить сохранение файла введя "Y" и нажав клавишу "ENTER".

Теперь настроим доступ для пользователя "admin007":

htpasswd -cm /usr/share/phpmyadmin/.htpasswd admin 

После ввода команды будет запрошен пароль, получаем пару: пользователь "admin007" и пароль, что вы ввели. Теперь при заходе на страницу с phpMyAdmin должен появится запрос авторизации для входа в защищенную зону, после ввода логина и пароля - все как обычно, авторизация в phpMyAdmin и выполнение нужных вам действий.

Данные авторизации будут сохранены в файле "/usr/share/phpmyadmin/.htpasswd". Имя пользователя желательно выбрать посложнее, а длина пароля должна быть не меньше 20 символов (в разных регистрах + цифры и символы по желанию).

Защита директории SquirrelMail

Делаем все по аналогии как с phpMyAdmin. Создадим файл с настройками доступа:

cd /usr/share/squirrelmail/
nano .htaccess

Вставляем в редактор следующий код:

<Files .htpasswd>
deny from all
</Files>
AuthType Basic
AuthName "Private zone, please authorize..."
AuthUserFile  /usr/share/squirrelmail/.htpasswd
require valid-user

Создаем пользователя и пароль для него:

htpasswd -cm /usr/share/squirrelmail/.htpasswd admin

Таким же способом можно защитить от посторонних глаз любую доступную через веб-сервер директорию. В данном случае  мы также снизили нагрузку на сервер, поскольку будучи открытыми, веб-панели к phpMyAdmin и SquirrelMail подвержены перебору паролей, а это выполнение скриптов на стороне сервера с убыточным использованием ресурсов.

В завершение

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

Защиты никогда не бывает много!

4 2227 Linux