カテゴリー: Linux自宅サーバー
自宅サーバー、自宅ファイルサーバー、Linuxサーバー構築の初心者におすすめ!コピペ(コピー&ペースト)でできる自宅サーバーFedora・Ubuntu・Debian・Linux Mint・AlmaLinux・CentOS(Linux)の作り方。初心者の方でもコピー、貼付けでLinux自宅サーバーを簡単に作れるように説明しています。Webサーバー、メールサーバー、VPNサーバー、WordPressなどを設定します。
保護中: AlmaLinux8:初期設定
保護中: AlmaLinux8:インストール
初心者におすすめ!コピペ(コピー&ペースト)でできる自宅サーバーCentOS7(Linux)の構築方法。
自宅サーバーCentOS7(Linux)の作り方
初心者の方でもコピー、貼付けでLinux自宅サーバーを簡単に作れるように説明しています。
Webサーバー、メールサーバー、VPNサーバー、WordPressなどを設定します。
ご自身の設定情報を入力して、文章中の値を変更できますので簡単に設定できます。
DHCPのIPアドレス/マスク長:192.168.1.1/24
WebサーバのIPアドレス:192.168.1.3
CentOS7サーバー構築
サーバー構築準備:自宅サーバー準備作業
- モデム設定(ご自身の環境に合わせてお調べください。)
- サーバー本体
- ルーターの設定
- 有料ドメイン取得
- isoファイルの容量確認
- ImgBurn(インストールDVD作成ソフト)
- Rufus(インストールUSBメモリ作成ソフト)
- Tera Term(端末)
- Gmailの登録
- Thunderbirdのダウンロード・インストール
SentOS7:インストール
- CenuOS7ダウンロード
- インストールDVD作成
- CentOS7インストール
サーバー構築準備:SSHサーバーリモート接続(Tera Term)
- SSHサーバーリモート接続の準備
- Tera Termの使い方
SentOS7:初期設定
- 一般ユーザーの作成
- rootになれるユーザーを限定
- 一般ユーザーの削除
- ファイアウォールとSELinuxを無効化
- ネットワークの設定
- システムの最新化
- リポジトリを追加
- パッケージの自動更新
- 開発ツールパッケージのインストール
- Vim(テキストエディタ)の設定
- Sudo(root権限)の設定
- Cronの設定
- メールサーバーのOP25B対策
- root宛メールを転送(フリーメール使用)
- メールの送信テスト
- Gmailのメール転送設定
- root宛メールの受信確認
- nkfコマンドツールのインストール
SentOS7:デスクトップ環境設定
- VNCサーバーの設定
- Xrdpサーバーの設定
- 日本語環境の設定
SentOS7:ファイルサーバー設定
- sambaのインストール
- sambaの初期設定
SentOS7:バックアップ設定
- バックアップ領域の作成
- 自動バックアップの設定
SentOS7:NTPサーバー設定(NTPd)
SentOS7:セキュリティ対策
- アンチウィルスソフトの導入(Clam AntiVirus)
- ファイル改竄検知システムの導入(Tripwire)
- rootkit検知システムの導入(RkHunter)
- SSHサーバー公開鍵認証方式接続の設定
SentOS7:ドメイン設定
- DiCEのインストール
- DiCE の設定
- DiCEのイベントの追加
SentOS7:DNSサーバー設定
- BINDのインストール
- ゾーン情報の設定
- TCP/UDP53番ポート開放
- ポート開放テスト
- BINDの起動と作動確認
- chroot環境に移行
- ホスト別名の設定
- ホームネットワーク内PCのDNSを設定変更
- 第二DNSの確認
SentOS7:Webサーバー設定
- httpdのインストール
- TCP80番ポート開放
- ポート開放テスト
- Perlのインストール
- PHPのインストール
- Rubyのインストール
- Pythonのインストール
- Perlモジュールのインストール
- ImageMagikのインストール
- サーバー証明書の取得
- SSLの設定
SentOS7:データベース設定
- MariaDBの インストール
- phpMyAdmin のインストール
SentOS7:FTPサーバー設定
- Vsftpd のインストール
- FTPクライアントの設定
SentOS7:MAILサーバー設定
- Postfixの設定
- SMTP認証設定
- Maildir形式メールボックスの作成
- TCP25番、TCP587番ポート開放
- ポート開放テスト
- OP25B対策
- Dovecotのインストール
- TCP110番またはTCP143番ポート開放
- ポート開放テスト
- メールユーザーの追加
- sendmailパスの確認
- メールソフトの登録
- サーバー証明書の取得
- SSLの設定
- TCP465番ポート開放
- ポート開放テスト
- TCP587番ポート閉鎖
- ポート開放テスト
- Dovecot設定
- TCP995番またはTCP993番ポート開放
- ポート開放テスト
- メールソフトの設定変更
- アンチウィルスソフトの連携(Clamav+Amavisd)
SentOS7:ログ解析設定
- Webアクセスログ解析(AWStats)のインストール
- メールログ解析(Pfiogsumm)のインストール
SentOS7:システム監視設定
- Nagiosのインストール
- Nagiosプラグインインストール
- Nagios設定
- Apache設定
- Nagios起動
CentOS:VPNサーバー設定(Soft Ether VPN Saver)
- Soft Ether VPN Serverインストール
- Soft Ether VPN Server起動
- UDP500番ポート、UDP4500番ポート開放
- ポート開放テスト
- Soft Ether VPN Server設定
- Soft Ether VPN Serverダウンロード、インストール
- Soft Ether VPN Server初期設定
- 外部から固定ひかり電話子機接続
SentOS7:Webmin設定
- Webminインストール
- 起動確認
SentOS7:Usermin設定
- Userminインストール
- 起動確認
SentOS:サブドメイン設定
- サブドメイン用ディレクトリ作成
- テストページ作成
- サーバー証明書取得
- メインドメインSSL設定
- サブドメインSSL設定
SentOS:複数ドメイン設定
- 複数ドメイン用ディレクトリ作成
- テストページ作成
- サーバー証明書取得
- 複数ドメインSSL設定
- BIND設定
- ゾーン情報の設定
SentOS7:ブログサイト構築(Word Press)設定
- Webサーバー、PHP設定
- データベース設定
- ブログ用データーベースを作成
- WordPressインストール
- WordPress設定
- Apache設定
- WordPress初期設定
- WordPressをドメイン直下での表示設定
WordPress:使いやすいWordPressの作り方
- 初期設定
- 記事エディターの拡張
- SEO対策
- Site Kit by Google
- 投稿記事ごとのSEO対策
- ウィジェット追加
- カスタムCSS
- クイックタグの追加
- スライドショー設置
- コメント欄非表示
- 関連記事表示
- もくじ表示
- リダイレクト検知
- Google にインデックスさせる
- マルチバイト機能の拡張
- サイトマップを出力
- お問い合わせフォーム
- 予約自動投稿
- 投稿記事の表示順
- 代替え入力
共通設定:サーバー自動起動設定
- BIOS設定
SentOS:起動不能をインストールDVDで復旧
SentOS7:パーティション操作
- Gpartedをインストール
共通設定:ディスクのクローン作成
- Ubuntu Desktopダウンロード
- ライブDVD作成
- ディスクのクローン作成
共通設定:VPNサーバー設定(Soft Ether VPN Saver)
s50
インターフェース名を確認.
インターフェース名を確認します。
[root@www ~]# 50_1nmcli device DEVICE TYPE STATE CONNECTION enp2s0 ethernet 接続済み enp2s0
s51
Soft Ether VPN Serverインストール.
Soft Etherダウンロードセンターで「ダウンロードするソフトウェアを選択」→「Soft Ether VPN Server」、「コンポーネントを選択」→「Soft Ether VPN Server」、「プラットフォームを選択」→「Linux」、「CPU を選択」→「(お使いのサーバーのCPU)」を選択し「ダウンロード可能なファイル」をクリックしてダウンロードします。

s52Tera Termを起動して、「webmaster」ユーザーで「ファイル」→「SSH SCP…」を選択します。

s53「SSH SCP…」をクリックして、「Soft Ether-vpnserver-*****.tar.gz」を選択し「Send」をクリックして転送します。

s55rootでログインして、「Soft Ether-vpnserver-*****.tar.gz」をrootホームに転送します。
root@www:~# 55_1mv /home/webmaster/Soft Ether-vpnserver-*****.tar.gz /root/Soft Ether-vpnserver-*****.tar.gz
s56Soft Ether VPN Serverを展開します。
root@www:~# 56_1tar zxvf Soft Ether-vpnserver-*****.tar.gz
s57Soft Ether VPN Server展開先ディレクトリへ移動します。
root@www:~# 57_1cd vpnserver/
s58実行可能ファイルを生成します。
root@www:~# 58_1make
s60ホームディレクトリへ戻る
root@www:vpnserver~# 60_1cd
s61Soft Ether VPN Server展開先ディレクトリを所定のディレクトリへ移動します。
root@www:vpnserver~# 61_1mv vpnserver/ /usr/local/
s62Soft Ether VPN Serverディレクトリへ移動します。
root@www:vpnserver~# 62_1cd /usr/local/vpnserver/
s63root以外アクセスできないようにします。
root@www:vpnserver~# 63_1chmod 600 *
s64vpncmdに実行権限を付加します。
root@www:vpnserver~# 64_1chmod 700 vpncmd
s65vpnserverに実行権限を付加します。
root@www:vpnserver~# 65_1chmod 700 vpnserver
s66vpncmdを実行します。
root@www:vpnserver~# 66_1./vpncmd
s673で応答します。
vpncmd コマンド - Soft Ether VPN コマンドライン管理ユーティリティ
Soft Ether VPN コマンドライン管理ユーティリティ (vpncmd コマンド)
Version 4.30 Build 9696 (Japanese)
Compiled 2019/07/08 12:48:32 by yagi at pc33
Copyright (c) Soft Ether VPN Project. All Rights Reserved.
vpncmd プログラムを使って以下のことができます。
1. VPN Server または VPN Bridge の管理
2. VPN Client の管理
3. VPN Tools コマンドの使用 (証明書作成や通信速度測定)
1 - 3 を選択: 67_13
s68checkで応答します。
VPN Tools を起動しました。HELP と入力すると、使用できるコマンド一覧が表示できます。
VPN Tools>68_1check
s69合格を確認します。
すべてのチェックに合格しました。このシステム上で Soft Ether VPN Server / Bridge が正しく動作する可能性が高いと思われます。
コマンドは正常に終了しました。
s70exitで応答して終了します。
VPN Tools>70_1exit
s71ホームディレクトリへ戻る
root@www:vpnserver~# 71_1cd
s72「Soft Ether-vpnserver-*****.tar.gz」を削除します。
root@www:~# 72_1rm -f Soft Ether-vpnserver-*****.tar.gz
s73
Soft Ether VPN Server起動.
起動スクリプトを作成します。
root@www:~# 73_1vi /etc/systemd/system/vpnserver.service 73_2[Unit] Description=Soft Ether VPN Server After=network.target network-online.target [Service] Type=forking ExecStart=/usr/local/vpnserver/vpnserver start ExecStop=/usr/local/vpnserver/vpnserver stop [Install] WantedBy=multi-user.target
s74起動します。
root@www:~# 74_1systemctl start vpnserver
s75自動起動設定します。
root@www:~# 75_1systemctl enable vpnserver
s76
UDP500番ポート、UDP4500番ポート開放.
ルーターの設定で、UDP500番ポート、UDP4500番ポートを開放します。(設定方法はご自身の環境に合わせて調べてください。)
ポート開放テスト
ポート開放確認サイトで「ホスト名」、「ポート番号(500、4500)」の開放確認をします。
ホスト名:76_1linuxserver.jp
ポート開放確認サイト
s77
Soft Ether VPN Server設定.
Soft Ether VPN Serverを停止します。
root@www:~# 77_1systemctl stop vpnserver
s78vpn_server.configを設定します。
root@www:~# 78_1vi /usr/local/vpnserver/vpn_server.config
s7919行目:ダイナミックDNS機能を無効化します。
declare DDnsClient
{
bool Disabled 79_1true
s8044行目:ポート443での待ち受けを無効化します。
declare Listener0
{
bool DisableDos false
bool Enabled 80_1false
uint Port 443
s8150行目:ポート992での待ち受けを無効化します。
declare Listener1
{
bool DisableDos false
bool Enabled 81_1false
uint Port 992
s8256行目:ポート1194での待ち受けを無効化します。
declare Listener2
{
bool DisableDos false
bool Enabled 82_1false
uint Port 1194
s83起動します。
root@www:~# 83_1systemctl start vpnserver
s84ログローテーションスクリプトを作成します。
root@www:~# 84_1vi /etc/cron.daily/vpnserver 84_2#!/bin/bash # 30日以前のログを削除 find /usr/local/vpnserver/*_log -name '*.log' -mtime +30 -delete
s85ログローテーションスクリプトへ実行権限を付加します。
root@www:~# 85_1chmod +x /etc/cron.daily/vpnserver
s86
Soft Ether VPN Serverダウンロード、インストール.
Soft Etherダウンロードセンターから「ダウンロードするソフトウェアを選択」→「Soft Ether VPN (Freeware)」、「コンポーネントを選択」→「Soft Ether VPN Server Manager for Windows」、「プラットフォームを選択」→「Windows」、「CPU を選択」→「(お使いのWindowsPCのCPU)」を選択し「ダウンロード可能なファイル」をクリックしてダウンロードします。

s87インストールします。

s88「次へ」をクリックします。

s89「次へ」をクリックします。

s90「使用許諾契約書に同意します」を選択し、「次へ」をクリックします。

s91「次へ」をクリックします。

s92「次へ」をクリックします。

s93「次へ」をクリックします。

s94「完了」をクリックします。

s95
Soft Ether VPN Server初期設定.
「新しい接続設定」をクリックします。

s96「接続設定名」、「ホスト名」、「ポート番号」を選択し、「OK」をクリックします。
接続設定名:96_1linuxserver.jp
ホスト名:96_2linuxserver.jp
ポート番号:96_35555(SE-VPNポート)

s97作成した接続設定を選択して「接続」をクリックします。

s98管理者パスワードを設定して「OK」をクリックします。

s99「IPsec/L2TP設定」をクリックします。

s100「L2TPサーバー機能を有効にする(L2TP over IPsec)」を選択、「L2TPサーバー機能を有効にする(暗号化されていないL2TP)」を選択解除、「IPsec事前共有鍵」を設定し、「OK」をクリックします。
IPsec事前共有鍵:100_1vpn

s101仮想HUB(DEFAULT)を選択して「削除」をクリックします。

s102「仮想HUBの作成」をクリックします。

s103「仮想HUB名」に、任意の名前を入力し、「OK」をクリックします。

s104「ローカルブリッジ設定」をクリックします。

s105「仮想HUB」→作成した仮想HUBを選択、「作成する種類」→「物理的な既存のLANカードとのブリッジ接続」を選択、「LANカード」→「enp2s0」を選択し、「ローカルブリッジを追加」をクリックします。

s106作成した仮想HUBを選択して「仮想HUBの管理」をクリックします。

s107「ユーザーの管理」をクリックします。

s108「新規作成」をクリックします。

s109「ユーザー名」→任意のユーザー名を入力、「パスワード」→任意のパスワードを入力し、「OK」をクリックします。
ユーザー名:109_1vpn_name
パスワード:109_2vpn_pass

s110接続を有効にするためルーターを再起動します。
ルーターを再起動するとIPアドレスが変更されるので、DiCEを再起動しましす。
root@www:~# 110_1setarch `uname -m` /usr/local/bin/DiCE/diced =-=-=- DiCE DynamicDNS Client -=-=-= Version 0.19 for Japanese Copyright(c) 2001 sarad :110_2ex 0 + 4/8 17:00 にVALUEDOMAIN-linuxserver.jpが実行されました IPアドレスを更新しました :110_3quit
s111
外部から固定ひかり電話子機接続.
AGEphoneのダウンロード、インストール.
スマートフォンにします。「AGEphone」ダウンロード、インストールして、固定ひかり電話の子機にします。

s112AGEphoneの初期設定をします。

s113スマートフォンのVPN接続でVPNサーバーを利用して固定ひかり電話子機接続をします。
L2TP over IPsecを選択
ホスト名:112_1linuxserver.jp
IPsec事前共有鍵:112_2vpn
ユーザー名:112_3vpn_name
パスワード:112_4vpn_pass
CentOS8:ブログサイト(Word Press)設定
Webサーバー、PHP設定
Webサーバー、PHPの設定をします。
データベース設定
データベースの設定をします。
ブログ用データーベースを作成
MariaDBへrootでログインします。
[root@www ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 3 Server version: 5.5.60-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
wordpressでデータベースを作成します。
MariaDB [(none)]> create database wordpress;
wordpress_userでユーザーを作成します。
MariaDB [(none)]> grant all privileges on wordpress.* to wordpress_user@localhost identified by 'パスワード';
ログアウトします。
MariaDB [(none)]> exit
WordPressインストール
PHP7.4をインストールします。
root@www:~# dnf -y update root@www:~# dnf -y install php7.4 php7.4-mbstring php-pear root@www:~# php -v
PHPモジュールをインストールします。
root@www:~# dnf -y install php-common php-gd php-mysql php-enchant hunspell
PHPを再起動します。
root@www:~# systemctl restart php7.4-fpm
「/var/www/html」ディレクトリ下へ移動します。
[root@www ~]# cd /var/www/html
WordPressをダウンロードします。
[root@www ~]# wget https://ja.wordpress.org/latest-ja.tar.gz
WordPressを解凍します。
[root@www ~]# tar xvf latest-ja.tar.gz [root@www ~]# rm latest-ja.tar.gz
ディレクトリを戻ります。
[root@www ~]# cd
WordPressディレクトリ所有者をApache実行ユーザーへ変更します。
[root@www ~]# chown -R apache:apache /var/www/html/wordpress/
WordPress設定
https://centserver.jp/wordpress/へアクセスし、「さあ、始めましょう!」をクリックします。

「データベース名(wordpress)」、「ユーザー名(wordpress_user)」、「パスワード(パスワード)」、「データベースの接頭辞(wp_wordpress_)」を入力し、「送信」をクリックします。

「インストール実行」をクリックします。

Apache設定
WordPress用Apache設定ファイルを作成します。
[root@www ~]# echo Alias /wordpress /var/www/html/wordpress > /etc/httpd/conf.d/wordpress.conf
再起動します。
[root@www ~]# systemctl reload httpd
WordPress初期設定
https://centserver.jp/wordpress/へアクセスし、「サイトのタイトル」、「ユーザー名」、「パスワード」、「メールアドレス」を入力して「WordPressをインストール」をクリックします。

「ユーザー名」、「パスワード」を入力して「ログイン」をクリックし、サイト管理へログインします。

WordPressをドメイン直下での表示設定
管理画面で「設定」→「一般」を開き、「サイトアドレス(URL)」に「https://centserver.jp」を設定します。

「変更を保存」をクリックします。

「/var/www/html/wordpress/index.php」をコピーして、「/var/www/html/index.php」に貼り付けます。
[root@www ~]# cp /var/www/html/wordpress/index.php /var/www/html/index.php
「/var/www/html/index.php」を設定します。
[root@www ~]# vi /var/www/html/index.php
17行目:「/wordpress」を追記します。
require( dirname( __FILE__ ) . '/wordpress/wp-blog-header.php' );
「.htaccess」を設定します。
[root@www ~]# vi /var/www/html/.htaccess # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
CentOS8:Usermin設定
Userminインストール
必要なモジュールをインストールします。
[root@www ~]# dnf --enablerepo=epel -y install perl-Net-SSLeay perl-Authen-PAM
Userminモジュールをインストールします。
[root@www ~]# dnf -y install http://download.webmin.com/download/yum/usermin-1.770-1.noarch.rpm
miniserv.confを設定します。
[root@www ~]# vi /etc/usermin/miniserv.conf
最終行についきします。
allow=127.0.0.1 192.168.1.1/24
denyusers=root
keyfile=/etc/letsencrypt/live/centserver.jp/privkey.pem
certfile=/etc/letsencrypt/live/centserver.jp/fullchain.pem
起動します。
[root@www ~]# /etc/rc.d/init.d/usermin start
起動確認.
Webブラウザを起動し、「https://centserver.jp:20000/」へアクセスし、ユーザーでログインします。

クリックします。

クリックします。

「Usermin」→「Change Language」を選択して、日本語化します。

「Display in language:」→「Japanese(JA_JP,UTF-8)」を選択して、「Change」をクリックします。

「F5」キー押下して、「日本語表示」を確認します。

CentOS8:Webmin設定
Webminインストール
必要な パケージをインストールします。
[root@www ~]# dnf -y install perl-Net-SSLeay
Webmin をインストールします。
[root@www ~]# dnf -y install http://download.webmin.com/download/yum/webmin-1.770-1.noarch.rpm
miniserv.confを設定します。
[root@www ~]# vi /etc/webmin/miniserv.conf
最終行にアクセス許可するIPを追記します。
allow=127.0.0.1 192.168.1.1/24
keyfile=/etc/letsencrypt/live/centserver.jp/privkey.pem
certfile=/etc/letsencrypt/live/centserver.jp/fullchain.pem
再起動します。
[root@www ~]# systemctl restart webmin restart
起動確認.
Webブラウザを起動し、「https://centserver.jp:10000/」へアクセスし, root ユーザーでログインします。

「Change Language and Theme」をクリックします。

「Personal choice ..」、Japanese(JA_JP.UTF-8)を選択して、「Make Changes」をクリックします。

「F5」キー押下して、「日本語表示」を確認します。

CentOS8:システム監視設定
Nagiosのインストール
Nagiosに必要なgd-develをインストールします。
[root@www ~]# dnf -y install gd-devel
nagiosユーザーを作成します。
[root@www ~]# useradd -d /usr/local/nagios/ -M nagios
Nagiosをダウンロードします。
[root@www ~]# wget https://downloads.sourceforge.net/project/nagios/nagios-4.x/nagios-4.2.4/nagios-4.2.4.tar.gz
Nagiosを展開します。
[root@www ~]# tar zxvf nagios-4.2.4.tar.gz
Nagios展開先ディレクトリへ移動します。
[root@www ~]# cd nagios-4.2.4
Nagios日本語化パッチをダウンロードします。
[root@www nagios-4.2.4]# wget http://ftp.momo-i.org/pub/security/nagios/patches/nagios-jp-4.2.4.patch.gz
Nagios日本語化パッチを施行します。
[root@www nagios-4.2.4]# gzip -dc nagios-jp-4.2.4.patch.gz |patch -p1
Nagiosをインストールします。
[root@www nagios-4.2.4]# ./configure && make all && make fullinstall && make install-config
ディレクトリを抜けます。
[root@www nagios-4.2.4]# cd
Nagios展開先ディレクトリを削除します。
[root@www ~]# rm -rf nagios-4.2.4
ダウンロードしたファイルを削除します。
[root@www ~]# rm -f nagios-4.2.4.tar.gz
Nagiosプラグインインストール
MySQLの監視を行なうmysql-develをインストールします。
[root@www ~]# dnf -y install mysql-devel
Nagiosプラグインをダウンロードします。
[root@www ~]# wget https://nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz
Nagiosプラグインを展開します。
[root@www ~]# tar zxvf nagios-plugins-2.1.4.tar.gz
Nagiosプラグイン展開先ディレクトリへ移動します。
[root@www ~]# cd nagios-plugins-2.1.4
Nagiosプラグインをインストールします。
[root@www nagios-plugins-2.1.4]# ./configure && make && make install
ディレクトリを抜けます。
[root@www nagios-plugins-2.1.4]# cd
Nagiosプラグイン展開先ディレクトリを削除します。
[root@www ~]# rm -rf nagios-plugins-2.1.4
ダウンロードしたファイルを削除します。
[root@www ~]# rm -f nagios-plugins-2.1.4.tar.gz
Nagios設定
nagios.cfgを設定します。
[root@www ~]# vi /usr/local/nagios/etc/nagios.cfg
51行目:行頭の「#」を削除してコメント解除して、サーバー監視設定有効化を設定します。
cfg_dir=/usr/local/nagios/etc/servers
1094行目:日付書式をYYYY-MM-DD HH:MM:SSにするを設定します。
date_format=iso8601
サーバー監視設定ファイル格納ディレクトリを作成します。
[root@www ~]# mkdir /usr/local/nagios/etc/servers
contacts.cfgを設定します。
[root@www ~]# vi /usr/local/nagios/etc/objects/contacts.cfg
34行目:管理者メールアドレスを指定を設定します。
define contact{ contact_name nagiosadmin ; Short name of user use generic-contact ; Inherit default values from generic-contact template (defined above) alias Nagios Admin ; Full name of user email root@localhost }
localhost.cfgを設定します。
[root@www ~]# vi /usr/local/nagios/etc/objects/localhost.cfg
141行目:SSH状態変化時に通知するを設定します。
define service{ use local-service ; Name of service template to use host_name localhost service_description SSH check_command check_ssh notifications_enabled 1 }
154行目:SSH状態変化時に通知するを設定します。
define service{ use local-service ; Name of service template to use host_name localhost service_description HTTP check_command check_http notifications_enabled 1 }
commands.cfgを設定します。
[root@www ~]# vi /usr/local/nagios/etc/objects/commands.cfg
29行目:nkfコマンドのメール本文文字化け対策を設定します。
# 'notify-host-by-email' command definition
define command{
command_name notify-host-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/bin/nkf -j | /bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$
}
35行目:nkfコマンドのメール本文文字化け対策を設定します。
# 'notify-service-by-email' command definition
define command{
command_name notify-service-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /usr/bin/nkf -j | /bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
}
Apache設定
apacheユーザーをnagiosグループに所属させるを設定します。
[root@www ~]# usermod -G nagios apache
Nagios用Apache設定ファイルを設定します。
[root@www ~]# vi /etc/httpd/conf.d/nagios.conf
16行目:追記します。
<RequireAny>
17行目:行頭に「#」を追記してコメント化して、内部からのみアクセス可能にする設定をします。
# Require all granted
19行目:内部ネットワーク(192.168.1.1/24)からのみアクセス可能にする設定をします。
Require ip 192.168.1.1/24
20行目:追記します。
</RequireAny>
49行目:追記します。
<RequireAny>
50行目:行頭に「#」を追記してコメント化して、内部からのみアクセス可能にする設定をします。
# Require all granted
52行目:内部ネットワーク(192.168.1.1/24)からのみアクセス可能にする設定をします。
Require ip 192.168.1.1/24
53行目:追記します。
</RequireAny>
Webサーバー設定反映を設定します。
[root@www ~]# systemctl reload httpd
Nagios管理ユーザー(nagiosadmin)を作成します。
[root@www ~]# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
パスワードを設定します。
New password:
Re-type new password:
Adding password for user nagiosadmin
Nagios起動
起動します。
[root@www ~]# /etc/rc.d/init.d/nagios start
自動起動設定します。
[root@www ~]# chkconfig nagios on
Webブラウザを起動し、「http://centserver.jp/nagios/」にアクセスし、管理ユーザー:nagiosadmin、登録済パスワードでログインして動作確認をします。

CentOS8:ログ解析設定
Webアクセスログ解析(AWStats)のインストール
AWStatsをインストールします。
[root@www ~]# yum --enablerepo=epel -y install awstats
自動作成されているawstats.centserver.jp.conf を設定します。
[root@www ~]# vi /etc/awstats/awstats.centserver.jp.conf
125行目:変更します。
LogFormat=1
156行目:ホスト名を設定します。
SiteDomain="centserver.jp"
171行目:除外したドメイン名やIPアドレスを追記します。
HostAliases="localhost 127.0.0.1 REGEX[^.*centserver\.jp$] REGEX[^192\.168\.1\.]"
awstats.confを設定します。
[root@www ~]# vi /etc/httpd/conf.d/awstats.conf
30行目:アクセス許可IPを追記します。
Require ip 192.168.1.1/24
再起動します。
[root@www ~]# systemctl restart httpd
1時間毎に自動更新する設定をします。
[root@www ~]# /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=centserver.jp -update
Web ブラウザを起動し、「http://centserver.jp/awstats/awstats.pl」にアクセスして、作動確認します。

メールログ解析(Pfiogsumm)のインストール
pflogsumm をインストールします。
[root@www ~]# yum -y install postfix-perl-scripts
メールログのサマリーを出力します。
[root@www ~]# perl /usr/sbin/pflogsumm -d yesterday /var/log/maillog Postfix log summaries for Jul 29 Grand Totals ------------ messages 8 received 8 delivered 2 forwarded 1 deferred (1 deferrals) 0 bounced 0 rejected (0%) 0 reject warnings 0 held 0 discarded (0%) 2428k bytes received 2429k bytes delivered 3 senders 2 sending hosts/domains 2 recipients 2 recipient hosts/domains Per-Hour Traffic Summary ------------------------ time received delivered deferred bounced rejected -------------------------------------------------------------------- 0000-0100 0 0 0 0 0 0100-0200 0 0 0 0 0 0200-0300 0 0 0 0 0 …
root宛てにメール送信する設定をします。
[root@www ~]# crontab -e
毎日午前1時にメール送信する設定をします。
[root@www ~]# 00 01 * * * perl /usr/sbin/pflogsumm -e -d yesterday /var/log/maillog | mail -s 'Logwatch for Postfix' root