DNSサーバ BIND
動作確認済みシステム Debian 11 DNSは、ホスト名とIPアドレスを対応付けます。DNSを使って、ホスト名からIPアドレスを取得(正引き)したり、IPアドレスからホスト名を取得したり(逆引き)します。 DNSサーバを、BINDを使って構築します。外部からDNSのお問い合わせができるように設定します。 セキュリティを確保するために、chrootを用いた運用を行うこととします。 ここでは、ドメイン名をexample.com、ネームサーバ名をns.exmaple.com、IPアドレスを203.0.113.123とします。また、ネームサーバは1台のみで構築し、セカンダリサーバは、お名前.com ...
ウイルス対策
動作確認済みシステム Debian 11 ウイルス対策のために、ClamAVを導入し、定期スキャンを設定します。 リポジトリにあるClamAVは、バージョンが古いことがあるので、ソースコードからインストールする方法を説明します。今回インストールするClamAVのバージョンは、1.2.0です。 まず、稼働中のサーバーのカーネルが fanotify をサポートしていることを確認します。 CONFIG_FANOTIFY=y CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y の2行が確認できればOKです。 ls /boot/config* /boot/config-5.10.0 ...
PHPのMySQL、MariaDB対応
PHPでMySQLやMariaDBへの接続に対応するためには、以下のコマンドを実行して、php-mysqlをインストールします。
Apache HTTP Server への PHPの導入
Webサーバ側で動的にWebページを生成するために使われているプログラミング言語の一つにPHPがあります。 PHPには、モジュール版とCGI版があります。モジュール版は、Webサーバのモジュールとして動き、Webサーバのプロセスの中でPHPプログラムを動かします。CGI版は、Webサーバとは別のプロセスとして実行されます。 CGI版のPHPをインストールし、Apache HTTP ServerでCGI版のPHPを実行できるようにします。 下記のコマンドでphpを導入します。 phpの設定ファイルを編集します。 Apacheに/etc/apache2/conf-available/php7.4- ...
Apache HTTP ServerのSSL対応
Apache HTTP ServerにSSL対応の設定を行い、HTTPSによる通信ができるようにします。 SSLモジュールとrewriteモジュールを有効化します。 ApacheのSSLの設定ファイルを編集します。 サイトのSSLの設定を行います。 サイトのSSLの設定を有効にします。 HTTPからHTTPSへのリダイレクトを行う場合は、以下の変更も行います。 設定に誤りがないか確認します。 「Action 'configtest' failed.」と表示された場合、問題があるということなので、設定を見直してください。 「Syntax OK」と表示された場合、問題がないことが確認できました。 ...
Apache HTTP Serverのインストール
Webサーバとして、Apache HTTP Serverをインストールします。 headersモジュールが必要なので、有効化します。 セキュリティ上、ディレクトリ一覧を表示させないために、autoindexを無効にします。 設定ファイルを編集します。 サイトの設定を行います。 /var/wwwの所有グループ、所有ユーザをApacheの実行グループ、実行ユーザに合わせます。 設定に誤りがないか確認します。 「Action 'configtest' failed.」と表示された場合、問題があるということなので、設定を見直してください。 「Syntax OK」と表示された場合、問題がないことが確認で ...
MariaDBデータベースサーバのインストール
動作確認済みシステム Debian 11 データベースサーバとして、MariaDBをインストールします。MariaDBは、MySQLをフォークして開発されています。 Debian 11のデフォルトリポジトリにあるMariaDBの情報を見てみます。 apt show mariadb-server Package: mariadb-server Version: 1:10.5.11-1 Priority: optional Section: database Source: mariadb-10.5 Maintainer: Debian MySQL Maintainers <pkg-mysq ...
FTPサーバの構築
ファイルをサーバにアップしたり、サーバにあるファイルをダウンロードするためにFTPが使われます。FTPサーバとして、Vsftpdをインストールして設定します。 以下のコマンドでVsftpdをインストールします。 設定ファイルを編集します。 /etc/vsftpd.chroot_listのファイルがないとログインできないため、空ファイルを作っておきます。 ファイアウォールでFTPのポートを許可します。 ポート番号を標準(20/TCP、21/TCP)のまま変えていない場合は、以下のコマンドで設定できます。 ポート番号を変えている場合は、以下のコマンドで設定できます。(例として50020/TCP、5 ...
メールサーバのSSL対応
メールサーバに、SSL証明書の作成(Let’s Encrypt)で取得した証明書を設定して、SSLをサポートするようにします。 PostfixでSSLの設定を行います。 最後のところに、以下を追記します。 master.cfでSMTPSポートの設定を行います。 DovecotでSSLの設定を行います。 各種サービスを再起動します。 ファイアウォールの設定を行い、必要なポートを許可するようにします。 メーラーでSSLを使って送受信ができていることが確認できればOKです。
メールサーバの拡張メールアドレス対応
動作確認済みシステム Debian 11 メールアドレスは、「foo@example.com」だけでなく、メールサーバの設定によっては、ユーザ名のあとに任意の文字列を付けた「foo+bar@example.com」も利用できるようにすることもできます。これが拡張メールアドレスというものです。1つのメールアカウントで複数のメールアドレスを利用することができます。 /etc/postfix/main.cfを編集して、拡張メールアドレスを有効にします。 vi /etc/postfix/main.cf # コメント解除 recipient_delimiter = +- サービスによっては、+の含まれた ...