Расширение идеального сервера - Debian 6.0 [ISPConfig 3]

Содержание материала

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Продолжая материал, Вы можете установить RoundCube через apt-get. Однако прдерживаясь другой логике (если у Вас есть время и храбрость), Вы можете установить roundcube в своей собственной подобласти, вручную.

В материалах "Идеальный сервер" Вы обычно установливали SquirrelMail. Однако, если Вы не хотите, то можете удалить его:

  • apt-get remove squirrelmail

и удалить /etc/apache2/conf.d/squirrelmail.conf :

  • rm /etc/apache2/conf.d/squirrelmail.conf

Или если Вы хотите его изменить измените /etc/apache2/conf.d/squirrelmail.conf на что-то вроде webmail1.

Установить RoundCube. (Вы должны иметь пароль MySQL администратора, прежде чем приступить. Вам будут заданы несколько вопросов о пароле администратора базы данных и пароль нового пользователя, который будет создан для RoundCube:

  • rm /etc/apache2/conf.d/squirrelmail.conf
Examle answers:
"Configure database for roundcube with dbconfig-common?" ... Yes
"Database type to be used by roundcube: ... MySQL
"Password of the database's administrative user:" ... Ваш пароль администратора БД
"MySQL application password for roundcube:" ... Пароль для входа пользователя roundcube
"Password confirmation:"... Пароль для входа пользователя roundcube

Если что-то пойдет не так, Вы всегда можете запустить:

  • dpkg-reconfigure roundcube-core

Для получения дополнительной информации, пожалуйста, см. этот пост.

 

Для каждого пользователя для доступа к своей электронной почте (через его доменное имя), Вы должны создать или отредактировать файл /etc/apache2/conf.d/roundcube с тем чтобы установить псевдоним для "электронной почты". Если вы хотите SSL Вы должны включить последние две директивы (IfModule mod_rewrite.c), чтобы Apache Всегда перенаправлял ISPConfig на SSL.

  • nano /etc/apache2/conf.d/roundcube
# Those aliases do not work properly with several hosts on your apache server
# Uncomment them to use it or adapt them to your configuration
#    Alias /roundcube/program/js/tiny_mce/ /usr/share/tinymce/www/
    Alias /roundcube /var/lib/roundcube
    Alias /webmail /var/lib/roundcube

# Access to tinymce files
<Directory "/usr/share/tinymce/www/">
      Options Indexes MultiViews FollowSymLinks
      AllowOverride None
      Order allow,deny
      allow from all
</Directory>

<Directory /var/lib/roundcube/>
  Options +FollowSymLinks
  # This is needed to parse /var/lib/roundcube/.htaccess. See its
  # content before setting AllowOverride to None.
  AllowOverride All
  order allow,deny
  allow from all
</Directory>

# Protecting basic directories:
<Directory /var/lib/roundcube/config>
        Options -FollowSymLinks
        AllowOverride None
</Directory>

<Directory /var/lib/roundcube/temp>
        Options -FollowSymLinks
        AllowOverride None
        Order allow,deny
        Deny from all
</Directory>

<Directory /var/lib/roundcube/logs>
        Options -FollowSymLinks
        AllowOverride None
        Order allow,deny
        Deny from all
</Directory>

<IfModule mod_rewrite.c>
  <IfModule mod_ssl.c>
    <Location /webmail>
      RewriteEngine on
      RewriteCond %{HTTPS} !^on$ [NC]
      RewriteRule . https://%{HTTP_HOST}:50443%{REQUEST_URI}  [L]
    </Location>
  </IfModule>
</IfModule>

<IfModule mod_rewrite.c>
  <IfModule mod_ssl.c>
    <Location /roundcube>
      RewriteEngine on
      RewriteCond %{HTTPS} !^on$ [NC]
      RewriteRule . https://%{HTTP_HOST}:50443%{REQUEST_URI}  [L]
    </Location>
  </IfModule>
</IfModule>

Изменить /var/lib/roundcube/config/main.inc.php :

  • nano /var/lib/roundcube/config/main.inc.php

и установить некоторые переменные в файле (если вы первый раз изменяете файл - строки 60 и 66):

auto_create_user = TRUE;
$rcmail_config['default_host'] = 'localhost';

Если Вы установите следующие плагины (авторизация которой помогжет fail2ban), Вы должны будете расширить список плагинов в том же самом файле. Если это единственный плагин - другие будут установленны пойзже, Вы должны отредактировать строку (42) как указано ниже:

$rcmail_config['plugins'] = array('fail2ban');

Установить плагин регистратор RoundCube.

В общем, Вы должны скачать файл (fail2ban.php) и вставьте этот fail2ban в папку plugins RoundCube каталога. Теперь, Вы должны получить этот файл: /usr/share/roundcube/plugins/fail2ban/fail2ban.php. Выполните команду:

  • cd /usr/share/roundcube/plugins/
  • wget --no-check-certificate http://github.com/downloads/mattrude/rc-plugin-fail2ban/roundcube-fail2ban-plugin.1.0.tgz
  • tar -xvzf roundcube-fail2ban-plugin.1.0.tgz
  • touch /var/log/roundcube/userlogins

Этот плагин будет обновлять файл журнала с каждой неудачной попыткой аторизации: /var/log/roundcube/userlogins

Не забудьте изменить ссылку на Web почтe в ISPConfig (Система -> Конфиг интерфейса (System Config) - (вкладка) Mail) и установить его в /webmail. И наконец, перезапустить Apache.

  • /etc/init.d/apache2 restart

Теперь можно получить доступ на Web почту http://www.example.com/webmail

Fail2ban

Расширение jail.local файл, которое предлагается в предыдущих статьях Идеальный сервер - Debian 6.0 [ISPConfig 3] и Идеальный сервер - Debian 6.0 с BIND и Courier [ISPConfig 3]: /etc/fail2ban/jail.local

  • nano /etc/fail2ban/jail.local

Вы должны добавить или изменить следующие:

[roundcube]
enabled  = true
port     = http,50443
filter   = roundcube
logpath  = /var/log/roundcube/userlogins
maxretry = 5

[webmin-auth]
enabled = true
port    = 50000
filter  = webmin-auth
logpath  = /var/log/auth.log
maxretry = 3 

[ssh]
enabled = true
port    = 50022
filter  = sshd
logpath  = /var/log/auth.log
maxretry = 6

50443 порт в RoundCube требуется, только если Вы включили перенаправление на HTTPS (смотрите в начале материала). 50000 порт в Webmin-аутентификации является измененным портом (смотрите в начале материала). 50022 портов в SSH является измененным портом (смотрите в следующих разделах этого учебника).

Последняя (и очень важное), не забудьте создать roundcube.conf файл /etc/fail2ban/filter.d/roundcube.conf .

  • nano /etc/fail2ban/filter.d/roundcube.conf

со следующим содержанием:

[Definition]
failregex = FAILED login for .*. from <host>
ignoreregex =

Удачно созданная Webmin-авторизации и фильтры SSH уже непосредственно создаст fail2ban. Перезагрузите fail2ban:

  • /etc/init.d/fail2ban restart

Если кто-то добавляет много тюрем в fail2ban, то некоторые из них не могут зайти (ошибки в /var/log/fail2ban.log но не выходят !!!). Смотрим это выполнив:

  • iptables -L -n

К сожалению, решение немного кривое ... но по крайней мере это работает:

В файле /usr/bin/fail2ban-client в строке 145 нужно вставить time.sleep (0,1) или time.sleep (0,05) :

  • nano /usr/bin/fail2ban-client

Так выглядит файл перед изменением:

[...]
 def __processCmd(self, cmd, showRet = True):
                beautifier = Beautifier()
                for c in cmd:
                        beautifier.setInputCmd(c)
                        try:
[...]

Так выглядит потом:

[...]
 def __processCmd(self, cmd, showRet = True):
                beautifier = Beautifier()
                for c in cmd:
                        time.sleep(0.05)
                        beautifier.setInputCmd(c)
                        try:
[...]

Перезагрузите снова fail2ban:

  • /etc/init.d/fail2ban restart

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

  • iptables -L -n

Обмениваться, хранить, передавать Ваши файлы стало просто как никогда.
yandex-disk
Читать подробнее: для чего Yandex-Диск проекту Mini-Server. Практика установки, настройки и использования сетевого хранилища на Ubuntu server LTS 12.04 в статье Резервное копирование сервера Ubuntu на Яндекс Диск.

>> Ubuntu 12.04 + Nginx Скачать сервер
>> Fedora 15 Скачать сервер
>> Простой Debian 6.0.6 Скачать сервер
>> CentOS 6.0 и
+ (5.6) другой
Скачать сервер
>> OpenSUSE 11.4
MAX
Скачать сервер

Вход на сайт

ВНИМАНИЕ!

Регистрация на сайте только по согласованию с администратором ресурса. Обращаться через форму обратной связи.