「エアコンの安全な修理・適切なフロン回収」はこちら「業務用エアコンエラーコード」はこちら

Ubuntu Server 18.04でサーバー構築 WEBサーバー、ウイルス対策導入

スポンサーリンク
スポンサーリンク
スポンサーリンク

1. WEBサーバー導入

1. 1 Apache2インストール

①インストール

# apt -y install apache2

②設定ファイル編集

#vi /etc/apache2/conf-enabled/security.conf

# 25行目:変更

ServerTokens  Prod


# vi /etc/apache2/mods-enabled/dir.conf

# 2行目:ディレクトリ名のみでアクセスできるファイル名を設定

DirectoryIndex  index.html index.htm index.php

 

# vi /etc/apache2/apache2.conf

# 70行目:サーバー名追記

ServerName <ドメイン名>


# vi /etc/apache2/sites-available/000-default.conf

# 11行目:管理者アドレス変更

ServerAdmin  <メールアドレス>

再起動

# systemctl restart apache2

1.2. Apache2でPerlスクリプトを利用する

CGI を有効にして Perl スクリプトが利用できるように設定します
Perl をインストール

# apt -y install perl

②CGI モジュールを有効にします

# a2enmod cgid

Enabling module cgid.

To activate the new configuration, you need to run:

  systemctl restart apache2

③テストスクリプト作成
CGI モジュールを有効にすると、デフォルトで [/usr/lib/cgi-bin] 配下が CGI 実行許可されます。
例えば [/usr/lib/cgi-bin/index.cgi] スクリプトを作成して配置することで、[http://(Apache2 サーバー)/cgi-bin/index.cgi] へアクセス可能となります。 なお、当設定は [/usr/lib/cgi-bin] 配下のファイルを全て CGI と扱うため、CGI 以外のファイルは表示不可です。

# テストスクリプト作成

# cat > /usr/lib/cgi-bin/test_script <<‘EOF’
#!/usr/bin/perl
print “Content-type: text/html\n\n”;
print “Hello CGI\n”;
EOF

 

chmod 705 /usr/lib/cgi-bin/test_script

# 動作確認

# curl http://localhost/cgi-bin/test_script

Hello CGI

1.3 Apache2でPHPスクリプトを利用する

①PHP をインストール

apt -y install php php-cgi libapache2-mod-php php-common php-pear php-mbstring

②Apache2 の設定

# a2enconf php7.2-cgi

Enabling conf php7.2-cgi.

To activate the new configuration, you need to run:

  systemctl reload apache2

# vi /etc/php/7.2/apache2/php.ini

# 822行目: upload_max_filesize = 2M

upload_max_filesize = 200M

# 936行目:コメント解除しタイムゾーン設定

date.timezone = “Asia/Tokyo

 

# systemctl restart apache2

③テストページを作成して動作確認

# vi /var/www/html/index.php<html>

<body>

<div style=”width: 100%; font-size: 40px; font-weight: bold; text-align: center;”>

<?php

    print “PHP Test Page”;

?>

</div>

</body>

</html>

1.4 バーチャルホストの設定

①設定ファイルの準備
デフォルトの設定ファイルをコピーし、バーチャルホストの設定をします(例としてファイル名を<vhost-sample.conf>とします)

# cd /etc/apache2/sites-available/

# cp sites-available/000-default.conf vhost-sample.conf

②設定ファイルを編集

# vi vhost-sample.conf

<VirtualHost *:80>

~省略~

ServerName <ドメイン名>

ServerAdmin <メールアドレス>

DocumentRoot /var/www/html/<ドメイン名>

    ~省略~

ErrorLog ${APACHE_LOG_DIR}/<ドメイン名>-error.log

CustomLog ${APACHE_LOG_DIR}/<ドメイン名>-access.log combined

    ~省略

</VirtualHost>

③設定ファイルの有効化
設定ファイルにシンボリックリンクを貼り、デフォルトの設定ファイルを無効化する

# cd /etc/apache2/sites-available/

# a2ensite vhost-sample.conf

# a2dissite 000-default.conf  ← デフォルト無効化

④Apache再起動

# systemctl restart apache2

⑤hostsファイルの編集

# vi /etc/hosts

127.0.0.1   <ドメイン名>

スポンサーリンク

2. ウイルス対策ソフトClamaav導入

①インストール
clamav関連の設定ファイルは、/etc/clamav/フォルダにインストールされる

# apt install clamav clamav-daemon

②ウイルス定義の更新

# freshclam

下記のようなエラーが出る場合はlog設定を変更して、再度実行

ERROR: /var/log/clamav/freshclam.log is locked by another process

ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).

次の通りlog設定を変更

# rm /var/log/clamav/freshclam.log

# touch /var/log/clamav/freshclam.log

# chown clamav:clamav /var/log/clamav/freshclam.log

③設定ファイル編集

# vi /etc/logrotate.d/clamav-freshclam

create 640 clamav adm → create 640 clamav clamav

④ウイルス定義の自動更新
ウイルス定義の自動更新が行われるサービスが登録されてるが確認する

# service clamav-freshclam status

●clamav-freshclam.service – ClamAV virus database updater

Loaded: loaded (/lib/systemd/system/clamav-freshclam.service; enabled; vendor preset: e

   Active: active (running) since Fri 2019-08-16 02:00:32 JST; 2 days ago

     Docs: man:freshclam(1)

           man:freshclam.conf(5)

           https://www.clamav.net/documents

 Main PID: 888 (freshclam)

    Tasks: 1 (limit: 4915)

   CGroup: /system.slice/clamav-freshclam.service

           └─888 /usr/bin/freshclam -d –foreground=true

 8月 18 07:25:02 server freshclam[888]: Sun Aug 18 07:25:02 2019 -> daily.cld is up to d

 8月 18 07:25:02 server freshclam[888]: Sun Aug 18 07:25:02 2019 -> bytecode.cld is up t

 8月 18 08:25:02 server freshclam[888]: Sun Aug 18 08:25:02 2019 -> Received signal: wak

 8月 18 08:25:02 server freshclam[888]: Sun Aug 18 08:25:02 2019 -> ClamAV update proces

/var/log/clamav/freshclam.logファイルにログが記録される
⑤ウイルスチェックの実行

# clamscan –infected –remove –recursive /home

⑥フルスキャンするスクリプトファイルを作成

#vi /opt/script/clam-full.sh

#!/bin/sh

echo =========================================

date

hostname

clamscan / \

     –infected \

     –recursive \

     –log=/var/log/clamav/clamscan.log \

     –move=/var/log/clamav/virus \

     –exclude-dir=^/boot \

     –exclude-dir=^/sys \

     –exclude-dir=^/proc \

     –exclude-dir=^/dev \

     –exclude-dir=^/var/log/clamav/virus

 

# –infected 感染を検出したファイルのみを結果に出力

# –recursive 指定ディレクトリ以下を再帰的に検査 圧縮ファイルは解凍して検査

# –log=FILE ログファイル

# –move=DIR 感染を検出したファイルの隔離先

# –remove 感染を検出したファイルを削除

# –exclude=FILE   検査除外ファイル(パターンで指定)

# –exclude-dir=DIR 検査除外ディレクトリ(パターンで指定)

 

if [ $? = 0 ]; then

  echo “ウイルス未検出.”

else

  echo “ウイルス検出!!”

fi

スクリプトファイルに実行権限を与える

# chmod +x /opt/script/clam-full.sh

ウイルス隔離用フォルダを作成

# mkdir /var/log/clamav/virus

実行

# /opt/script/clam-full.sh

cronでウイルススキャンの定期実行

# crontab -e

# m h  dom mon dow   command

0 2 * * mon /opt/script/clam-full.sh >> /var/log/clamav/clamav_scan.log  ← 追加

error:Content is protected !!
タイトルとURLをコピーしました