Webメール · 5 min read · Sep 30, 2025
Debian 9.1にWebMail Lite PHPベースのWebメールクライアントをインストールする
このガイドでは、Debian 9.1に最新のWebMail Lite PHPをインストールし、Yahoo! Mailという人気のメールサービスからメールを取得するためにアプリケーションを設定する方法を示します。デモンストレーション目的でYahoo! Mailサービスを使用しますが、WebMail Liteでのメール処理に自分のドメインを自由に使用してください。ドメイン設定を追加する手順は、Yahoo! Mailサービスの設定とほぼ同じです。WebMail LiteクライアントをYahoo!アカウントが提供するIMAPおよびSMTPサービスへのインターフェースとして使用し、すべてのメールは自分のプライベートWebサーバーでローカルに処理されます。
WebMail Liteは、PHPで書かれた無料のオープンソースのメールユーザーエージェントまたはWebクライアントで、Apache/Nginx、PHP、MySQL/MariaDBコンポーネントの下でLinuxに展開され、LEMP/LAMPスタックを構成します。WebMail Liteは、IMAP/Sおよび/またはSMTP/Sプロトコルを介してメールにアクセスし、メールファイルを同期したり、メールメッセージを送信したりするために使用できます。
要件
- ベアメタルマシンまたは仮想プライベートサーバー上のDebian 9の最小インストール。
- システムネットワークインターフェースカードの1つに設定された静的IPアドレス。
- ローカルまたはリモートアカウントのsudo root権限またはrootアカウントへの直接アクセス。
- 適切なDNSレコードが設定されたプライベートまたはパブリックのドメイン名。
- IMAPおよびSMTPサービスへのリモートアクセスが適切に設定されたメールサービス。
初期設定
WebMail Liteをソースから自分のサーバーにインストールおよび設定する前に、まずシステムがアプリケーションのコンパイルおよびインストールに必要なすべてのソフトウェア要件を満たしていることを確認してください。最初のステップでは、以下のコマンドを発行してシステムリポジトリとソフトウェアパッケージを更新します。
apt updateapt upgrade
次のステップでは、コマンドラインからシステムをさらに管理するために使用されるいくつかのユーティリティをインストールするために、以下のコマンドを実行します。
apt install wget bash-completion unzip
次に、以下のコマンドを実行してシステムの名前を設定します。ホスト名変数を適切に置き換えてください。
hostnamectl set-hostname mail以下のコマンドを発行してマシンのホスト名とhostsファイルを確認します。
hostnamectlcat /etc/hostnamehostname –shostname –f
最後に、カーネルの更新とホスト名の変更を適切に適用するためにDebianサーバーを再起動します。
systemctl rebootWebMail Liteは、主にPHPサーバーサイドプログラミング言語で書かれたWebメールクライアントです。WebMail Lite PHPファイルスクリプトを実行するには、Apache HTTPサーバーなどのWebサーバーと、システム内で動作しているPHP処理ゲートウェイが必要です。アプリケーションが正常に動作するために必要なすべてのPHPモジュールとともにApache WebサーバーとPHPインタープリターをインストールするために、サーバーコンソールで以下のコマンドを発行します。
apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-xml php7.0-mcrypt php7.0-opcache php7.0-mbstring php7.0-curl
ApacheとPHPがインストールされた後、以下のコマンドをroot権限で発行してWebサーバーが稼働しており、ポート80でネットワーク接続をリッスンしているかどうかをテストします。
netstat –tlpnDebianシステムにnetstatネットワークユーティリティがデフォルトでインストールされていない場合は、以下のコマンドを実行してインストールします。
apt install net-tools
netstatコマンドの出力を調査することで、Apache Webサーバーがポート80での受信ネットワーク接続をリッスンしていることがわかります。同じタスクには、Debian 9にデフォルトで自動的にインストールされるssコマンドも使用できます。
ss- tlpn
システムにUFWファイアウォールアプリケーションなどのファイアウォールが有効になっている場合は、以下のコマンドを発行してHTTPトラフィックがファイアウォールを通過できるように新しいルールを追加する必要があります。
ufw allow WWWまたは
ufw allow 80/tcpDebianサーバーでファイアウォールルールを管理するためにiptables生ルールを使用している場合は、訪問者がオンラインアプリケーションを閲覧できるようにファイアウォールでポート80の受信トラフィックを許可するために以下のルールを追加します。
apt-get install -y iptables-persistentiptables -I INPUT -p tcp --destination-port 80 -j ACCEPTsystemctl iptables-persistent savesystemctl iptables-persistent reload次に、以下のコマンドを発行してWebMail Liteアプリケーションの一部を保護するために使用されるApacheモジュールを有効にします。
a2enmod rewritesystemctl restart apache2最後に、クライアントのブラウザでApache WebサーバーのデフォルトWebページが表示できるかどうかをテストします。DebianマシンのIPアドレスまたはドメイン名、またはHTTPプロトコルを介してサーバーのFQDNにアクセスします。マシンのIPアドレスがわからない場合は、ifconfigまたはip aコマンドを実行してサーバーのIPアドレスを表示します。DebianのデフォルトApacheページがブラウザに表示されます。
WebMail LiteアプリケーションにHTTPSプロトコルを介してアクセスし、クライアントのトラフィックを保護するために、以下のコマンドを発行してApache WebサーバーのSSLモジュールとSSLサイト設定ファイルを有効にします。
a2enmod ssla2ensite default-ssl.conf
次に、テキストエディタでApacheデフォルトSSLサイト設定ファイルを開き、以下のサンプルのようにDocumentRootディレクティブの後にURLリライトルールを追加して有効にします。
nano /etc/apache2/sites-enabled/default-ssl.confSSLサイト設定ファイルの抜粋:
Options +FollowSymlinks
AllowOverride All
Require all granted
また、以下の抜粋のようにVirtualHost行を変更します:

SSL Apacheファイルを閉じ、/etc/apache2/sites-enabled/000-default.confファイルを編集のために開き、SSL設定ファイルと同じURLリライトルールを追加します。以下の例のようにDocumentRootステートメントの後にコード行を挿入します。
Options +FollowSymlinks
AllowOverride All
Require all granted

最後に、これまでに設定したすべてのルールを適用するためにApacheデーモンを再起動し、HTTPプロトコルを介してドメインにアクセスします。Apacheがインストール時に発行した自己署名証明書ペアを使用しているため、ブラウザにエラー警告が表示されるはずです。以下のスクリーンショットのように。
systemctl restart apache2
警告を受け入れて続行し、HTTPSを介してApacheのデフォルトWebページにリダイレクトされます。

UFWファイアウォールアプリケーションがHTTPSポートへの受信ネットワーク接続をブロックしている場合は、以下のコマンドを発行してHTTPSトラフィックがファイアウォールを通過できるように新しいルールを追加する必要があります。
ufw allow 'WWW Full'または
ufw allow 443/tcpiptablesがネットワークレベルでDebianシステムを保護するためにインストールされたデフォルトのファイアウォールアプリケーションである場合、訪問者がドメイン名を閲覧できるようにファイアウォールでポート443の受信トラフィックを許可するために以下のルールを追加します。
iptables -I INPUT -p tcp --destination-port 443 -j ACCEPTsystemctl iptables-persistent savesystemctl iptables-persistent reload次のステップでは、PHPのデフォルト設定ファイルにさらに変更を加えて、以下のPHP変数が有効になっていることを確認し、PHPのtimezone設定が正しく構成され、システムの地理的位置に一致するようにします。/etc/php/7.0/apache2/php.iniファイルを編集のために開き、以下の行が次のように設定されていることを確認します。また、最初にPHP設定ファイルのバックアップを作成します。
cp /etc/php/7.0/apache2/php.ini{,.backup}nano /etc/php/7.0/apache2/php.iniphp.ini設定ファイルで以下の変数を検索、編集、変更します:
file_uploads = On
allow_url_fopen = On
memory_limit = 128 M
upload_max_file_size = 64M
date.timezone = Europe/London大きなファイル添付をサポートするためにmemory_limit変数を適切に増やし、物理的な時間に応じてtime.zone変数を置き換えます。PHPドキュメントで提供されているタイムゾーンのリストを参照して、以下のリンクで確認してください http://php.net/manual/en/timezones.php
Webサイトページの読み込み速度をOPCacheプラグインを介して向上させたい場合は、以下のOPCache設定をPHPインタープリター設定ファイルの下部に追加します。
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1php.ini設定ファイルを閉じ、以下のコマンドを発行してPHP設定ファイルの末尾を確認し、変数が正しく追加されているかどうかを確認します。
tail /etc/php/7.0/apache2/php.ini
上記のすべての変更を行った後、以下のコマンドを発行してApacheデーモンを再起動し、新しい変更を適用します。
systemctl restart apache2最後に、以下のコマンドを実行してPHP情報ファイルを作成し、ブラウザで以下のURLからPHP情報スクリプトファイルにアクセスしてPHPタイムゾーンが正しく構成されているかどうかを確認します。date設定までスクロールしてphpタイムゾーン設定を確認します。
echo ''| tee /var/www/html/info.php
WebMail Lite Webメールクライアントは、ユーザー、セッション、連絡先などの異なる設定をRDBMSデータベースに保存します。このガイドでは、WebMail LiteをバックエンドとしてMariaDBデータベースを使用するように設定します。以下のコマンドを発行してMariaDBデータベースとmysqlデータベースにアクセスするために必要なPHPモジュールをインストールします。
apt install mariadb-server php7.0-mysql
MariaDBをインストールした後、デーモンが実行中であり、localhostのポート3306で接続をリッスンしていることを確認するためにnetstatまたはssコマンドを実行します。
netstat –tlpn | grep mysql次に、MySQLコンソールにログインし、以下のコマンドを発行してMariaDB rootアカウントを保護します。
mysql -h localhostuse mysql;
update user set plugin='' where user='root';
flush privileges;
exit
次のステップでは、mysql_secure_installationスクリプトを実行してMariaDBを保護します。スクリプトを実行すると、MariaDBデータベースを保護するために設計された一連の質問が表示されます。たとえば、MySQL rootパスワードを変更する、匿名ユーザーを削除する、リモートrootログインを無効にする、テストデータベースを削除するなどです。以下のコマンドを発行してスクリプトを実行し、すべての質問に「はい」と入力してMySQLデーモンを完全に保護してください。以下のスクリプト出力をガイドとして使用してください。
sudo mysql_secure_installationNOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!In order to log into MariaDB to secure it, we'll need the currentpassword for the root user. If you've just installed MariaDB, andyou haven't set the root password yet, the password will be blank,so you should just press enter here.Enter current password for root (enter for none):OK, successfully used password, moving on...Setting the root password ensures that nobody can log into the MariaDBroot user without the proper authorisation.You already have a root password set, so you can safely answer 'n'.Change the root password? [Y/n] yNew password:Re-enter new password:Password updated successfully!Reloading privilege tables.. ... Success!By default, a MariaDB installation has an anonymous user, allowing anyoneto log into MariaDB without having to have a user account created forthem. This is intended only for testing, and to make the installationgo a bit smoother. You should remove them before moving into aproduction environment.Remove anonymous users? [Y/n] y ... Success!Normally, root should only be allowed to connect from 'localhost'. Thisensures that someone cannot guess at the root password from the network.Disallow root login remotely? [Y/n] y ... Success!By default, MariaDB comes with a database named 'test' that anyone canaccess. This is also intended only for testing, and should be removedbefore moving into a production environment.Remove test database and access to it? [Y/n] y- Dropping test database... ... Success!- Removing privileges on test database... ... Success!Reloading the privilege tables will ensure that all changes made so farwill take effect immediately.Reload privilege tables now? [Y/n] y ... Success!Cleaning up...All done! If you've completed all of the above steps, your MariaDBinstallation should now be secure.Thanks for using MariaDB!MariaDBのセキュリティをテストするために、rootパスワードなしでコンソールからデータベースにログインしてみてください。rootアカウントにパスワードが提供されていない場合、データベースへのアクセスは拒否されるはずです。パスワードが提供されると、MySQLコンソールへのログインプロセスが許可されるはずです。以下のスクリーンショットのように。
mysql -h localhost -u rootmysql -h localhost -u root –p
次に、MariaDBデータベースコンソールにログインし、WebMail Lite用に使用するデータベースを作成し、このデータベースを管理するために使用されるユーザーとパスワードを作成します。以下のコマンドを発行します。WebMail Liteデータベース名、ユーザー、パスワードを適切に置き換えてください。
mysql –u root -pcreate database webmaillite;
grant all privileges on webmaillite.* to 'webmail_user'@'localhost' identified by 'webmail_pass';
flush privileges;
exit
これまでに行ったすべての変更を適用するために、MySQLとApacheデーモンを再起動し、以下のコマンドを発行してデーモンが実行中であることを確認します。
systemctl restart mysql apache2systemctl status mysql apache2WebMail Liteをインストール
すべてのシステム要件が満たされた後、WebMail LiteのWebページにアクセスします https://afterlogic.org/download/webmail-lite-php そして、以下のwgetユーティリティを発行して最新のzipパッケージ圧縮アーカイブをダウンロードします。以下のサンプルのように。
wget https://afterlogic.org/download/webmail_php.zip
zipアーカイブのダウンロードが完了したら、WebMail Lite zip圧縮アーカイブを抽出し、以下のコマンドを発行して抽出されたファイルをリストします。また、Apache Webサーバーによってwebrootパスにインストールされたデフォルトのindex.htmlファイルを削除し、以前に作成したinfo.phpファイルも削除します。
rm /var/www/html/index.htmlrm /var/www/html/info.phpunzip webmail_php.zipls次に、以下のコマンドを発行してwebmailディレクトリの抽出されたファイルをドメインのwebrootパスに再帰的にコピーします。また、webmailディレクトリからすべてのファイルがwebrootに完全に転送されたかどうかを確認するためにwebrootパスをリストできます。
ls webmailcp -rf webmail/* /var/www/html/ls -l /var/www/html/
次に、以下のコマンドを実行してApacheランタイムユーザーにwebrootパスへのフル書き込み権限を付与します。lsコマンドを使用して、/var/www/html/ディレクトリにあるPrestashopインストールファイルの権限をリストします。
chown -R www-data:www-data /var/www/html/ls –al /var/www/html/
WebMail Liteのインストールプロセスを続行するには、ブラウザを開き、サーバーのIPアドレスまたはドメイン名をHTTPSプロトコルを介して/installディレクトリに移動します。最初のインストール画面では、WebMail Liteインストーラスクリプトが一連のシステムチェックを行い、すべての必要なPHP拡張機能とモジュールがサーバーにインストールされているかどうか、Apacheユーザーがdataディレクトリと設定ファイルに書き込み権限を持っているかどうかを確認します。以下の画像のように。すべてのサーバー要件が満たされた場合は、次のボタンを押して次のインストール画面に進みます。
https://yourdomain.tld/install

次のインストール画面では、ライセンス契約の条件を読み、受け入れ、I Agreeボタンを押して続行します。以下の画像のように。

次のインストール画面では、データベースタイプMySQLを選択し、MySQLデータベースホストアドレス、データベース名、およびWebMail Liteデータベースにアクセスするために以前に作成した資格情報を指定します。Test databaseボタンを押してデータベース接続をテストし、MySQLデータベースへの接続が成功した場合は、インストーラーが必要なテーブルを作成できるようにCreate database Tablesをチェックし、次のボタンを押して次のインストール画面に進みます。

次のインストール画面では、mailadmユーザーの強力なパスワードを提供し、次のボタンを押して続行します。このユーザーは、管理パネルを介してWebMail Liteのさまざまな側面を管理するために使用されます。

次に、IMAPおよびSMPプロトコルを介してメールサーバーへの接続が期待通りに機能しているかどうかを確認します。デモンストレーション目的で、Yahoo! Mailが提供するメールサービスへの接続を構成してテストします。メールサービスのドメインを適宜変更できます。Yahoo! MailサーバーのSMTP接続をテストするには、Eメールサーバーホストフィールドに次のアドレスsmtp.mail.yahoo.comを入力し、SMTPチェックボックスをオンにして接続テストボタンを押します。Yahoo! SMTPサーバーへの接続が成功した場合、緑色のメッセージが表示され、Yahoo! MailからSMTPを介して送信できることが通知されます。

Yahoo! Mailサーバーで暗号化されたIMAP接続が許可されているかどうかをテストするには、Eメールサーバーホストフィールドにimap.mail.yahoo.com:993を入力し、IMAP4チェックボックスをオンにして接続テストボタンを押します。Yahoo! IMAPサーバーへの接続が成功した場合、緑色のメッセージが表示され、Yahoo! MailからIMAPSを介して受信メールを確認およびダウンロードできることが通知されます。完了したら、次のボタンを押して最後のインストールステップに進みます。

インストールプロセスが完了すると、インストーラーはWebMail Lite Webアプリケーションが正常にインストールされたことを通知し、ドメインのwebrootからインストーラーのディレクトリを削除する必要があります。Exitボタンを押して画面を離れ、WebMail Lite管理パネルに移動します。

WebMail Lite管理パネルにアクセスするには、次のアドレスに移動します。ドメイン名またはIPアドレスを適宜置き換えてください。
https://yourdomain.tld/adminpanel
mailadmユーザー名と、インストールプロセス中にこのユーザーのために設定したパスワードで管理パネルにログインします。以下のスクリーンショットのように。

WebMail Liteのドメインメールサービスを設定するには、Domains -> Default settingsに移動します。このガイドではデモンストレーション目的でWebMail LiteをYahoo! Mailアカウントのメールを管理するように設定しますが、必要な設定を追加することで自分のドメインを構成することもできます。
受信メールフィールドにYahoo! MailサーバーのIMAPアドレスimap.mail.yahoo.comとポート993を追加します。また、セキュリティ接続を介してメールを取得するためにUse SSLチェックボックスをオンにします。
送信メールフィールドにYahoo! MailサーバーのSMTPアドレスsmtp.mail.yahoo.comとポート465を追加します。また、セキュリティ接続を介してメールを送信するためにUse SSLチェックボックスをオンにします。
SMTP認証では、Yahoo! Mail SMTPサーバーに認証するために、’Use incoming mail’s login/password of the user’をチェックします。
最後に、サイトの名前を追加したり、WebMail Liteアプリケーションのテーマを変更したり、ユーザーがインターフェース設定にアクセスできるようにするオプションもあります。また、アプリケーションの地域設定を変更することもできます。以下のスクリーンショットのように。設定を保存して適用するには、Saveボタンを押します。

WebMail Lite管理パネルは、アプリケーション設定を変更するために使用できる他のオプションも提供します。たとえば、ログを有効にしたり、mailadmアカウント名とパスワードを変更したり、Webメールインターフェースを他の外部サービスと統合したりできます。カスタム設定の設定が完了したら、Logoutボタンを押します。
Yahoo! MailアカウントでWebMail Liteアプリケーションにログインするには、HTTPプロトコルを介してドメイン名に移動し、以下の画像のようにYahoo! Mailの資格情報を提供します。Yahoo!アカウントのメールがWebMail Liteインターフェースに表示されます。


訪問者がWebMail LiteインターフェースをHTTPSプロトコルを介して閲覧するように強制し、インストールディレクトリとバージョンファイルを保護するには、サーバーコンソールに移動し、次の内容で新しい.htaccessファイルをWebサーバーのドキュメントルートパスに作成します。
nano /var/www/html/.htaccess.htaccessファイルの抜粋:
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteEngine on
Options -Indexes
# return a 403 forbidden error for install dir and version file
RewriteRule ^install/?$ - [F,L]
RewriteRule ^VERSION/?$ - [F,L]
インストールディレクトリに新しい.haccessファイルを作成し、以下の内容を追加します。
nano /var/www/html/install/.htaccess.htaccessファイルの抜粋:
RewriteEngine on
Options -Indexes
Require all denied
これで完了です!Debian 9.1にWebMail Liteを正常にインストールおよび構成しました。ただし、Apache HTTPサーバーが自己署名証明書を使用してサーバーと訪問者のブラウザ間のトラフィックを暗号化しているため、警告メッセージが常に生成され、ブラウザに表示されます。この場合、信頼できる証明書機関から発行された証明書を購入するか、Let’s Encrypt CAから無料の証明書ペアを取得する必要があります。WebMail Liteに関する他のカスタム構成については、以下のアドレスのドキュメントページを訪れてください: https://afterlogic.com/docs/webmail-lite
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。