サーバー設定 · 1 min read · Jan 13, 2026

Easy RoundCube (Over SSL) And Webmin With fail2ban For ISPConfig 3 On Debian Squeeze

Easy RoundCube (Over SSL) And Webmin With fail2ban For ISPConfig 3 On Debian Squeeze

著者: トーマス ( http://iopen.gr)
最終編集日: 2011-03-09

私はISPConfig 3のデフォルトよりもRoundCubeソリューションを好みます。また、すべてのシステムにwebminをインストールすることが便利だと思います。この投稿では、両方を非常に迅速にインストールする方法を示します。さらに、fail2banの素晴らしいサポートもあります。最後に、すべてをSSL経由でアクセスしたいと思います(phpmyadminも – 最後のヒントを参照)。

私はあなたがfalkoのガイドに従ったと仮定します:

The Perfect Server - Debian Squeeze (Debian 6.0) With BIND & Courier [ISPConfig 3]

ISPConfigパネルとwebmailにSSL経由でアクセスしたい場合、私はまた、ISPConfig 3マニュアルの6.2 ISPConfig WebインターフェースのためのSSLの有効化の章、またはこの投稿に従ったと仮定します(これは、コントロールパネルとwebmailインターフェースの両方にポート8080でssl経由でアクセスしたい場合にのみ必要です)。

上記に従った場合(および章6.3 – SuExecの有効化)、私は最後にこの投稿のワークアラウンドを読んだと仮定します。

Webmin

最新のwebminをhttp://www.webmin.com/download.htmlからダウンロードします

wget http://prdownloads.sourceforge.net/webadmin/webmin_1.530_all.deb

… そしてインストールします:

dpkg -i webmin_1.530_all.deb

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管理者のパスワードを持っている必要があります):

apt-get install roundcube roundcube-mysql

データベース管理者のパスワードとroundcubeの新しいユーザーおよびそのデータベース(およびパスワード)に関するいくつかの質問が表示されます。それらの質問に答えて続行します。何か問題が発生した場合は、常に次のコマンドを実行できます:

dpkg-reconfigure roundcube-core

詳細については、この投稿を参照してください。

すべての人が自分のドメイン名の下でwebmailにアクセスできるようにするには、/etc/apache2/conf.d/roundcube.confファイルを作成または編集して、エイリアスを’webmail’に設定する必要があります。SSLを希望する場合は、最後の2つのディレクティブを含めて、Apacheが常にISPConfig 3のsslインストールにリダイレクトするようにする必要があります。

# これらのエイリアスは、apacheサーバー上の複数のホストで正しく機能しません  
# 使用するにはコメントを外すか、構成に合わせて適応してください  
#    Alias /roundcube/program/js/tiny_mce/ /usr/share/tinymce/www/  
    Alias /webmail /var/lib/roundcube  
    Alias /roundcube /var/lib/roundcube  
  
# tinymceファイルへのアクセス  
  
      Options Indexes MultiViews FollowSymLinks  
      AllowOverride None  
      Order allow,deny  
      allow from all  
  
  
  
  Options +FollowSymLinks  
  # これは/var/lib/roundcube/.htaccessを解析するために必要です。  
  # AllowOverrideをNoneに設定する前にその内容を確認してください。  
  AllowOverride All  
  order allow,deny  
  allow from all  
  
  
# 基本ディレクトリの保護:  
  
        Options -FollowSymLinks  
        AllowOverride None  
  
  
  
        Options -FollowSymLinks  
        AllowOverride None  
        Order allow,deny  
        Deny from all  
  
  
  
        Options -FollowSymLinks  
        AllowOverride None  
        Order allow,deny  
        Deny from all  
  
  
  
  
  
    
      
      RewriteEngine on  
      RewriteCond %{HTTPS} !^on$ [NC]  
      RewriteRule . https://%{HTTP_HOST}:8080%{REQUEST_URI}  [L]  
  
      
    
  
  
  
    
      
      RewriteEngine on  
      RewriteCond %{HTTPS} !^on$ [NC]  
      RewriteRule . https://%{HTTP_HOST}:8080%{REQUEST_URI}  [L]  
      
    

/var/lib/roundcube/config/main.inc.phpを編集し、ファイル内のいくつかの変数を編集します:

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

次のプラグイン(fail2banを助けるロガー)をインストールしたい場合は、同じファイル内のプラグインのリストを拡張する必要があります。唯一のプラグインがその後すぐにインストールされるものである場合は、次のように行を編集する必要があります:

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

http://mattrude.com/projects/roundcube-fail2ban-plugin/からroundcubeロガープラグインをインストールします。

基本的に、上記のファイル(fail2ban.php)をダウンロードし、roundcubeのプラグインフォルダ内のfail2banフォルダに貼り付ける必要があります: /usr/share/roundcube/plugins/fail2ban/fail2ban.php

このプラグインは、最初にログイン試行ごとにログファイルを作成し、その後更新します: /var/log/roundcube/userlogins

Fail2ban

FalkoがThe Perfect Server - Debian Squeeze (Debian 6.0) With BIND & Courier [ISPConfig 3]で提案したjail.localファイルを拡張します: /etc/fail2ban/jail.local

次の内容を貼り付ける必要があります:

[roundcube]
enabled  = true
port     = http,8080
filter   = roundcube
logpath  = /var/log/roundcube/userlogins
maxretry = 5
[webmin-auth]
enabled = true
port    = 10000
filter  = webmin-auth
logpath  = /var/log/auth.log
maxretry = 3 

roundcubeの8080ポートは、httpsへのリダイレクトを有効にした場合にのみ必要です。

最後に(非常に重要)、/etc/fail2ban/filter.d/roundcube.confファイルを作成し、以下の内容を追加することを忘れないでください:

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

幸運なことに、webmin-authフィルターはfail2banの人々によってすでに作成されています。fail2banを再起動します:

/etc/init.d/fail2ban restart

phpMyAdmin (SSLヒント)

phpMyAdminにssl経由でアクセスしたい場合は、RoundCubeと同じヒントを適用できます。/etc/apache2/conf.d/phpmyadmin.confファイルを編集し、ファイルの最後に次の行を貼り付けます:

  
    
      
      RewriteEngine on  
      RewriteCond %{HTTPS} !^on$ [NC]  
      RewriteRule . https://%{HTTP_HOST}:8080%{REQUEST_URI}  [L]  
      
    

これが終わったら、Apacheを再起動します:

/etc/init.d/apache2 restart
Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。