「エアコンの安全な修理・適切なフロン回収」はこちら

Debian11.3でサーバー構築

Debian11.3でサーバー構築

Debian11.3 : OSインストール

1.Debian11の概要 今回はユーザーフレンドリーなLinuxディストリビューションのUBUNTUの基になっているDebianでサーバー構築する方法を説明します。 最新のリリースは Debian 11.3(コードネーム「bullseye」) です。 2021年 8 月 14 日 にリリースされ 2022 年 3 月 26 日 に更新 (ポイントリリース) が行われました。 2.Debianインストールイメージのダウンロード Debian11のダウンロードサイト  https://www.debian.org/ 上記公式サイトにアクセスし、インターネットに接続されている環境でのセットアップに都合の良い 「 debian-11.3.0-amd64-netinst.iso.」をダウンロードしてください。(CD1枚に納まります) NETINSTではインターネットから必要なパッケージをダウンロードしてインストールする形になりますので、フルインストーラーと比較して容量が小さいインストーラー(v11.3.0の場合約378MB)が利用できます。 次の画面の順にクリックしていきます。
Debian11.3でサーバー構築

Debian11.3 : DiCE , ディスク使用率チェック、Logwatch

1. DiCEのインストール ネットが切断されたり、ルーターが切断再起動したときにおこるグローバルIPの変更の度に、ダイナミックDNSにアクセスしグローバルIPが変更されたことを知らせなくてはいけません。その作業を自動的にやってくれるのがDiCEです
Debian11.3でサーバー構築

システム統合監視 Debian11 : Zabbix6 インストール

オープンソースの統合監視ソフトウェア「Zabbix」 Zabbix とは、サーバー、ネットワーク、アプリケーションを集中監視するためのオープンソースの統合監視ソフトウェアです。統合監視に必要な監視、障害検知、通知機能を備えています。多数のプラットフォームに対応した Zabbix エージェントと SNMP に対応しているため、システム全体を Zabbix ひとつで監視することが可能です。 Zabbixを実行するにはPHPプログラミング言語、データベースサーバーとしてはMySQL、ApacheやNginxなどのWebサーバーが必要です。今回はこれらすべてが構成済みという前提で進めます。
Debian11.3でサーバー構築

Debian11.3 : WEBサーバーApache導入

WEBサーバーApache2導入 インストールの前にUFWでhttp:80番ポートおよびhttps:443ポートをallowしておく # ufw allow http # ufw allow https # ufw reload 2.Apache2 の基本設定 3. Apache2; Perlスクリプトを利用する CGI を有効にして Perl スクリプトが利用できるように設定します ①Perl をインストール 4 Apache2 : PHPスクリプトを利用する ①PHP をインストール # apt -y install php php-cgi libapache2-mod-php php-common php-pear 5. バーチャルホストの設定 デフォルトの設定ファイルをコピーし(ファイル名は任意、今回は例としてvhost-yourdomain.conf)、バーチャルホストの設定をします
Debian11.3でサーバー構築

Debian11.3 : SSH 公開鍵暗号方式

RSA 公開鍵暗号方式を用いた認証によるSSH接続  公開鍵、秘密鍵ペアの作成 OpenSSH 使って Linux サーバに接続するユーザの公開鍵と秘密鍵のペアを作成します。 鍵ペアの作成は ssh-keygen をを使います。 今回はSSH プロトコル Version 2 で利用する RSA 暗号を利用した鍵セットを作成します。 公開鍵と秘密鍵のペアの作成はリモートログインするユーザ権限(huong)で実行します。 作成先・ファイル名を指定しなければ、 /home/huong/.ssh/ に id_rsa, id_rsa.pub が作成される。 途中、鍵用のパスワードも入力する。
Debian11.3でサーバー構築

Debian11.3 : Let's Encrypt WEB , MailサーバーSSL化

1. 証明書を取得する (Let's Encrypt) 1.1 事前準備 ①mod_sslを有効にする # a2enmod ssl ②Let's Encrypt証明書を取得するためのクライアントツールをインストール # apt -y install certbot 2. Apache2にSSL/TLS(Let's Encrypt) の設定 ①Apache2のSSL関連設定ファイルの編集 # cd /etc/apache2/sites-available/ # cp default-ssl.conf hoge.com-ssl.conf ← hoge.com-sslは任意の名称でよい # vi hoge.com-ssl.conf 3. Mail サーバーににSSL/TLS(Let's Encrypt) の設定 3.1 メールサーバー用証明書の取得 メールサーバー用の証明書を取得するが上記と同様の方法では取得できないので「--standalone」オプションをつけて下記のようにしても失敗する。 # certbot certonly --standalone -d mail.
Debian11.3でサーバー構築

Debian11.3 : MySQL8 , WordPress インストール

1. MySQL 8インストール 1. 1インストール MySQLチームは、Debian Linux用の公式MySQL PPAを提供しています。 パッケージをDebianシステムにダウンロードしてインストールすると、PPAファイルがシステムに追加されます。 PPAを有効にするには、以下のコマンドを実行します。 # wget https://dev.mysql.com/get/mysql-apt-config_0.8.22-1_all.deb # dpkg -i mysql-apt-config_0.8.22-1_all.deb # apt update # apt upgrade 2.WordPressインストール 2.1 データベース作成 Word Press 用のデータベースを作成します(例として今回はデータベース名を 「wp_db」、ユーザー名を「wp_user」、パスワードを「?Y123456y」) アカウント作成時「Your password does not satisfy the current policy requirements」が表示される場合はパスワードを8文字以上、英数大文字小文字、記号等を含めてください
Debian11.3でサーバー構築

Debian11.3 : SNORT , Tripwire インストール

1.SNORTインストール Snortは、IPネットワーク上でリアルタイムのトラフィック分析とパケットロギングを実行できるオープンソースのネットワーク侵入検知システムです。 「プロトコル分析」「コンテンツ検索」「マッチング」を実行でき、「バッファオーバーフロー」「ステルスポートスキャン」「CGI攻撃」「SMBプローブ」「OSフィンガープリント試行」「セマンティックURL攻撃」「サーバメッセージブロック探査」など、さまざまな攻撃検出に使用できます。 2.Tripwireインストール クラッカーによるLinuxサーバーのファイルの改竄を検知するシステムを導入する。 今回は、ファイル改竄検知システムにホスト型IDS(IDS=Intrusion Detection System)のTripwireを導入する。 Tripwireは、導入時のファイル状態をデータベース化し、そのデータベースとファイルの現状を比較することにより、ファイルの追加/変更/削除を検知する。
Debian11.3でサーバー構築

Debian11.3 : システムのバックアップと復元

1. システムのバックアップ 1.1 /var/www/html 配下のバックアップ ① /opt配下にbackup_all.shスクリプト作成 # vi /opt/backup_all.sh backup_all.shスクリプト内容 10日間のデータ保存 1.2 Mysqlのデータベースバックアップ ①/opt配下にdb_backup.shスクリプト作成 # vi /opt/db_backup.sh db_backup.shスクリプト内容 10日間データ保存
Debian11.3でサーバー構築

Debian11.3 : SSH , Firewall設定

1. SSHサービスのセキュリティ設定 SSHサービスはデフォルトでrootユーザーのログインを許可しています。rootユーザーはユーザー名が既に判明しているためパスワードが判明すると、管理者権限でサーバーへログイン出来るため、これを拒否する設定を行います 1.1 一般ユーザーの作成 Debianのインストール時に一般ユーザーを作成している場合は、本手順は不要です。 サー バーに作成されているユーザーがrootのみの場合、SSHによるリモートログインが出来なくなりますので、OSのインストール時にユーザーを作成していない場合、事前にユーザーを作成する必要があります。OSのインストール時にユーザーを作成している場合は、本手順は不要です。 ユーザーの作成は"useradd"コマンドで行います。"-m"オプションでホームディレクトリの作成、"-p"オプションでパスワードを指定します。 2. ファイヤーウォールの設定 Debianでは「ufw」というソフトウェアを使ってファイアウォールを設定することが多いので、ufwを利用したファイアウォール設定を行います。 ufwはOSの導入時にはインストールされていませんので、設定を行う前にufwパッケージのインストールを行います。インストール後に最低限のフィルタ設定を行う手順を紹介します。 ufwで設定するフィルタルール • サーバーに転送されるパケットは全て拒否 • サーバーから外部へ送信されるパケットは全て許可 • 最初に許可するポートはSSH用のポート • サーバーに入ってくるパケットを制限
Debian11.3でサーバー構築

Debian11.3 : 初期設定

1. vimエディターのインストールと設定 Debianではデフォルトのエディターとして「nano」が設定されています。nanoはやや使いにくいことや、利用されている環境が少ないためエディタを「vim」に変更する手順を紹介します。 2. ネットワークの設定 2.1 ホスト名の設定 Debian のインストール時にホスト名を設定していますが、何らかの理由でホスト名を変更する場合について説明します。 ホスト名の設定には"hostnamectl set-hostname"コマンドを利用します。以下のように実行します。ここではホスト名として「debian-user」を設定します。 3. サーバーの時刻同期を設定 ここではサーバーの時刻を自動的に合わせるサービスである「timesyncd」を設定していきます。 4.  suできるユーザーを制限する Debianではデフォルト設定の場合"su"コマンドでどのユーザーでもrootユーザーに移行することができます。 複数のユーザーがサーバーに作成されている場合、どれか一つでもユーザーのログイン情報が分かってしまうと不正アクセス後にsuコマンドでrootユーザー権限を奪取されてしまうため、できる限りsuコマンドを実行できるユーザーを制限します。 wheelグループに属するユーザーのみにsuを実行できる権限を与えることができるようにします。 5. Debian リポジトリ ミラー設定編集 リポジトリ ミラー 設定ファイルは/etc/apt/sources.listです、コピーをとってから編集します。 6. locateコマンドを利用できるようにする Linuxシステム全体を対象として、特定のファイルを検索するにはfindコマンドを利用しますが、findはオプションの指定がやや分かりにくいところがあります。 7. ロケールの設定 Linuxシステムの言語設定です。Debianのインストール時にロケールとして日本語を選択している場合には、元々が日本語環境になっていますので、変更する必要はありません。 もしご利用の環境で「英語ロケール」で、尚且つ、日本語ロケールの方が良いという場合には実施してください。 8. タイムゾーンの設定 Debian 11のタイムゾーンはインストール時に設定されている場合がほとんどですが、もし日本のタイムゾーンである「JST」が指定されていない場合には"timedatectl"コマンドで変更できます。 9. システムパッケージのアップデート メディアからインストールされたDebianシステムは含まれているパッケージが古いことがあります。基本的な設定が完了した時点でシステムに含まれている パッケージを全て、新しいものに更新します。Debianでは全てのパッケージを更新するためにも"apt"を利用します。
Debian11.3でサーバー構築

Debian11.3 : ウイルス対策 、Mailサーバー

1. ウイルス対策ソフトClamav導入 ウィルス対策としてLinux 用のフリーのアンチウィルスソフトであるClam AntiVirus を導入します。 このアンチウィルスソフトを導入することで、サーバー全体のウィルススキャンはもちろん、メールサーバーを構築し、設定を行えば、送受信するメールのウィルススキャンも行うことができます。 2. メールソフト導入 Postfix は、sendmail に代わるMTA (Mail Transport Agent)として開発されたソフトウェアで、sendmail との互換性が高く、安全、メンテナンスが容易、速い、などの特徴を兼ね備えたメールサーバーです。 また、Postfix はメールを送信するSMTP サーバーとしての機能しか無いため、後半でメール受信のPOP サーバーDovecotのインストールを別途行います。 3 メールサーバーPostfixに ClamAV適用 Postfix と Clamav を連携させて 送受信メールをリアルタイムスキャンできるように設定します サーバーがホスト名として完全修飾ドメイン名(FQDN)を使用していない場合、Amavisの起動に失敗する可能性があります。また、OSのホスト名が変更される可能性があるため、有効なホスト名をAmavis構成ファイルに直接設定します 4. Postfixに spamassassinをインストールしてスパム対策
Debian11.3でサーバー構築

Debian11.3 : NTP , FTP(Vsftpd)導入

1. 時刻同期サービスを提供する NTP サーバーをインストール # apt -y install chrony # vi /etc/chrony/chrony.conf # 8行目:デフォルト設定はコメントにして自身のタイムゾーンの NTP サーバーを追記 #pool 2.debian.pool.ntp.org iburst 2. FTPサーバー導入 2.1 vsftpdをインストール # apt install vsftpd FTP Port21許可 # ufw allow ftp # ufw allow reload