Установка fail2ban
Это необязательно, но рекомендуется, так как монитор ISPConfig отображает статистику fail2ban журнала:
|
Чтобы fail2ban следил за PPureFTPd, SASL и Courier, создайте файл /etc/fail2ban/jail.local:
|
[pureftpd] enabled = true port = ftp filter = pureftpd logpath = /var/log/syslog maxretry = 3 [sasl] enabled = true port = smtp filter = sasl logpath = /var/log/mail.log maxretry = 5 [courierpop3] enabled = true port = pop3 filter = courierpop3 logpath = /var/log/mail.log maxretry = 5 [courierpop3s] enabled = true port = pop3s filter = courierpop3s logpath = /var/log/mail.log maxretry = 5 [courierimap] enabled = true port = imap2 filter = courierimap logpath = /var/log/mail.log maxretry = 5 [courierimaps] enabled = true port = imaps filter = courierimaps logpath = /var/log/mail.log maxretry = 5
Затем создайте следующие пять файлов:
|
[Definition] failregex = .*pure-ftpd: \(.*@<HOST>\) \[WARNING\] Authentication failed for user.* ignoreregex =
|
# Fail2Ban configuration file # # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "<HOST>" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?P<host>\S+) # Values: TEXT # failregex = pop3d: LOGIN FAILED.*ip=\[.*:<HOST>\] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
|
# Fail2Ban configuration file # # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "<HOST>" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?P<host>\S+) # Values: TEXT # failregex = pop3d-ssl: LOGIN FAILED.*ip=\[.*:<HOST>\] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
|
# Fail2Ban configuration file # # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "<HOST>" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?P<host>\S+) # Values: TEXT # failregex = imapd: LOGIN FAILED.*ip=\[.*:<HOST>\] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
|
# Fail2Ban configuration file # # $Revision: 100 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "<HOST>" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?P<host>\S+) # Values: TEXT # failregex = imapd-ssl: LOGIN FAILED.*ip=\[.*:<HOST>\] # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
Теперь перезагрузим fail2ban:
|
Установка SquirrelMail
Чтобы установить клиент SquirrelMail веб-почты, выполните:
|
Затем создайте следующую ссылку ...
|
... и настройте SquirrelMail:
|
Мы должны сказать SquirrelMail, что используем Courier-IMAP/-POP3:
SquirrelMail Configuration : Read: config.php (1.4.0) --------------------------------------------------------- Main Menu -- 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Command >> - D SquirrelMail Configuration : Read: config.php --------------------------------------------------------- While we have been building SquirrelMail, we have discovered some preferences that work better with some servers that don't work so well with others. If you select your IMAP server, this option will set some pre-defined settings for that server. Please note that you will still need to go through and make sure everything is correct. This does not change everything. There are only a few settings that this will change. Please select your IMAP server: bincimap = Binc IMAP server courier = Courier IMAP server cyrus = Cyrus IMAP server dovecot = Dovecot Secure IMAP server exchange = Microsoft Exchange IMAP server hmailserver = hMailServer macosx = Mac OS X Mailserver mercury32 = Mercury/32 uw = University of Washington's IMAP server gmail = IMAP access to Google mail (Gmail) accounts quit = Do not change anything Command >> - courier SquirrelMail Configuration : Read: config.php --------------------------------------------------------- While we have been building SquirrelMail, we have discovered some preferences that work better with some servers that don't work so well with others. If you select your IMAP server, this option will set some pre-defined settings for that server. Please note that you will still need to go through and make sure everything is correct. This does not change everything. There are only a few settings that this will change. Please select your IMAP server: bincimap = Binc IMAP server courier = Courier IMAP server cyrus = Cyrus IMAP server dovecot = Dovecot Secure IMAP server exchange = Microsoft Exchange IMAP server hmailserver = hMailServer macosx = Mac OS X Mailserver mercury32 = Mercury/32 uw = University of Washington's IMAP server quit = Do not change anything Command >> courier imap_server_type = courier default_folder_prefix = INBOX. trash_folder = Trash sent_folder = Sent draft_folder = Drafts show_prefix_option = false default_sub_of_inbox = false show_contain_subfolders_option = false optional_delimiter = . delete_folder = true Press any key to continue... - ENTER SquirrelMail Configuration : Read: config.php (1.4.0) --------------------------------------------------------- Main Menu -- 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Command >> - S SquirrelMail Configuration : Read: config.php (1.4.0) --------------------------------------------------------- Main Menu -- 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Command >> S Data saved in config.php Press enter to continue... - ENTER SquirrelMail Configuration : Read: config.php (1.4.0) --------------------------------------------------------- Main Menu -- 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Command >> - Q
После этого Вы можете получить доступ к SquirrelMail по адресу http://server1.example.com/webmail или http://192.168.1.101/webmail:
Теперь мы настроим SquirrelMail, так что бы Вы могли использовать его в ваших веб-сайтах (созданные через ISPConfig) с помощью /squirrelmail или /webmail псевдонимы. Так что если Ваш сайт www.example.com, Вы будете иметь доступ к SquirrelMail использованием www.example.com/squirrelmail или www.example.com/webmail.
Apache конфигурация SquirrelMail находится в файле /etc/squirrelmail/apache.conf, но этот файл не загружается Apache, поскольку она не находится в /etc/apache2/conf.d/ каталоге. Поэтому мы создаем символическую ссылку squirrelmail.conf в /etc/apache2/conf.d/ каталоге, которая указывает на /etc/squirrelmail/apache.conf и перезагрузите после этого Apache:
|
Теперь откройте /etc/apache2/conf.d/squirrelmail.conf ...
|
... и добавьте следующие строки в <Directory /usr/share/squirrelmail></Directory> контейнер, убедитесь, что mod_php используется для доступа к SquirrelMail, независимо от того, какой PHP режим Вы выбрали для вашего сайта в ISPConfig:
[...] <Directory /usr/share/squirrelmail> Options FollowSymLinks <IfModule mod_php5.c> AddType application/x-httpd-php .php php_flag magic_quotes_gpc Off php_flag track_vars On php_admin_flag allow_url_fopen Off php_value include_path . php_admin_value upload_tmp_dir /var/lib/squirrelmail/tmp php_admin_value open_basedir /usr/share/squirrelmail:/etc/squirrelmail:/var/lib/squirrelmail:/etc/hostname:/etc/mailname php_flag register_globals off </IfModule> <IfModule mod_dir.c> DirectoryIndex index.php </IfModule> # access to configtest is limited by default to prevent information leak <Files configtest.php> order deny,allow deny from all allow from 127.0.0.1 </Files> </Directory> [...]
Создайте каталог /var/lib/squirrelmail/tmp ...
|
... и сделать его владельцем пользователь www-data :
|
Перезагрузить Apache еще раз:
|
Вот это уже - /etc/apache2/conf.d/squirrelmail.conf определяет псевдоним /squirrelmail, который указывает на установку SquirrelMail в каталог /usr/share/squirrelmail. Вы можете получить доступ к SquirrelMail с вашего сайта следующим образом:
http://192.168.1.101/squirrelmail http://www.example.com/squirrelmail
Вы также можете получить к нему доступ из ISPConfig виртуальный хост панель управления следующим образом (это не нуждается в конфигурации в ISPConfig):
http://server1.example.com:8080/squirrelmail
Если вы хотели бы использовать псевдоним /webmail, и /squirrelmail, просто откройте /etc/apache2/conf.d/squirrelmail.conf ...
|
... и добавьте строку Alias /webmail /usr/share/squirrelmail :
Alias /squirrelmail /usr/share/squirrelmail Alias /webmail /usr/share/squirrelmail [...]
Затем перезагрузки Apache:
|
Теперь Вы можете получить доступ к Squirrelmail следующим образом:
http://192.168.1.101/webmail http://www.example.com/webmail http://server1.example.com:8080/webmail (Вы установили ISPConfig см. следующую главу)
Если Вы хотите определить, как виртуальный хост webmail.example.com , где пользователи могут получить доступ SquirrelMail, вы должны добавить следующую конфигурацию виртуальный хост к /etc/apache2/conf.d/squirrelmail.conf :
|
[...] <VirtualHost 1.2.3.4:80> DocumentRoot /usr/share/squirrelmail ServerName webmail.example.com </VirtualHost>
Убедитесь, что вы замените 1.2.3.4 на правильный IP-адрес вашего сервера. Есть, конечно, должна быть запись DNS для webmail.example.com , который указывает на IP-адрес, который вы используете в виртуальный хост конфигурации. Также убедитесь, что виртуальный хост webmail.example.com не существует в ISPConfig (в противном случае оба виртуальных доменов будут мешать друг другу!).
Теперь перезагрузка Apache ...
|
... и Вы сможете получить доступ к SquirrelMail по webmail.example.com !