Ubuntu24.04

Ubuntu24.04

Ubuntu Server 24.04 ; OSインストール

Ubuntu Server 24.04インストールイメージのダウンロードUbuntu Serverのインストール用メディアはインターネット上の公式サイトからダウンロードできます。高速な回線さえあれば2~3分程度でOS自体をダウンロードすることができます。ダウンロードしたisoファイルからインストール用CD/DVDまたはUSBディスクを作成する必要があります。(約2.7G)Vmware等を使用して仮想マシンにインストールする場合はisoファイル自体を利用できます。isoファイルのダウンロード先は「Ubuntu 公式ダウンロードサイト」です。Ubuntu 24.04 ( 2024年04月25日リリース)は 2029年6月までサポートですので、本番環境にはLTS版のUbuntu24.04を導入するほうが無難です。
Ubuntu24.04

Ubuntu24.04 ; Zabbix7 インストール

オープンソースの統合監視ソフトウェア「Zabbix7」インストールZabbix とは、サーバー、ネットワーク、アプリケーションを集中監視するためのオープンソースの統合監視ソフトウェアです。統合監視に必要な監視、障害検知、通知機能を備えています。多数のプラットフォームに対応した Zabbix エージェントと SNMP に対応しているため、システム全体を Zabbix ひとつで監視することが可能です。Zabbixを実行するにはPHPプログラミング言語、データベースサーバーとしてはMySQL/MariaDB、ApacheやNginxなどのWebサーバーが必要です。今回は次の条件がすべてが構成済みという前提で進めます。今回は2024年06月04日にリリースされたZabbix7.0 LTSを下記環境にインストールしてみます。Apache/2.4.5810.11.8-MariaDBPHP 8.3.6PHP-fpm
Ubuntu24.04

Ubuntu Server24.04 ; OSインストール後の初期設定

1. rootパスワードを設定し、SUコマンドを利用Ubuntu のデフォルト設定では root ユーザーはパスワードが設定されていないため利用不可となっています。root ユーザーにパスワードを設定することで、従来の [su] コマンドによる遷移が可能となる。2. システムの最新化# apt update# apt upgrade3. locateコマンドを利用できるようにするLinuxシステム全体を対象として、特定のファイルを検索するのにはfindコマンドを利用する場合が多いが、findはオプションの指定がやや分かりにくいところがあります。locateコマンドは指定したファイル名をもつファイルを全て抽出することが可能です。4. vimエディターの設定Ubuntu にはデフォルトでvimがインストールされています4.1 vimの設定変更vim設定を、全てのユーザーに許可したくない場合もあるかと思います。そのような場合には各ユーザーごとにvimの環境を変更できる「.vimrc」ファイルをユーザーのホームディレクトリに作成することでvimの環境を設定できます。今回はrootユーザーのホームディレクトリ"/root/"に「.vimrc」ファイルを作成し全ユーザーに適用するよう設定します。
Ubuntu24.04

Ubuntu Server24.04 ; SSH , ファイアウォール

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

Ubuntu Server24.04 ; 公開鍵暗号方式認証によるSSH接続

公開鍵暗号方式を用いた認証によるSSH接続 公開鍵、秘密鍵ペアの作成OpenSSH 使って Linux サーバに接続するユーザの公開鍵と秘密鍵のペアを作成します。公開鍵と秘密鍵のペアの作成はリモートログインするユーザ権限(huong)で実行します。作成先・ファイル名を指定しなければ、 /home/huong/.ssh/ に id_ed25519,id_ed25519.pub が作成される。 途中、鍵用のパスワードも入力する。PuTTYgen を使った秘密鍵の作成Winscpを起動し「Tools」からRun Puttygen を起動する該当サーバーを選択
Ubuntu24.04

Ubuntu Server24.04 ; NTPサーバー,FTPサーバー,Sambaインストール

1. 時刻同期サービスを提供する NTP サーバーをインストール2. FTPサーバー2.1 Vsftpdインストール、設定①インストール# apt install -y vsftpd②UFWにてPORT 21を許可2.2 Vsftpd Over SSL/TLS①自己署名の証明書を作成します。Let's Encrypt 等の信頼された正規の証明書を使用する場合は当作業は不要です。3. Sambaでファイルサーバー導入ユーザー認証が必要なアクセス権付ファイルサーバーをSambaで構築します。導入手順①ユーザー認証が必要なアクセス権付の共有フォルダーを作成②アクセス可能なグループ作成③アクセス可能なグループに属するユーザー作成④設定ファイル編集
Ubuntu24.04

Ubuntu Server24.04 ; WEBサーバー(Apache)

Apache2インストール最初にUFWでhttp:80番ポートおよびhttps:443ポートを開放しておく2. Apache2 基本設定3. Apache2 : Perlスクリプトを利用するCGI を有効にして Perl スクリプトが利用できるように設定します①Perl をインストール4. Apache2 : PHPスクリプトを利用する①PHP をインストール5. Apache2 : バーチャルホストの設定①デフォルトの設定ファイルをコピーし(ファイル名は任意、今回は例としてvhost-yourdomain.conf)、バーチャルホストの設定をします6. Apache2でDigest認証を行うhttp の認証認定方式として有名なBasic 認証は認証情報を平文で送信するので、パケット盗聴されるとID とパスワードが漏洩する危険があります。一方、Digest 認証は認証情報を暗号化して送信するので、情報漏えいの心配がほとんどありません。Digest 認証はBasic 認証を強化した認証認定方式と言えます。
Ubuntu24.04

Ubuntu Server24.04; Clamav ( アンチウィルス ) , メールサーバー インストール

1.ウイルス対策ソフトClamav導入1.1 インストール# apt install clamav clamav-daemon2. メールソフト導入2.1 Postfix : インストール/設定Postfix をインストールして SMTPサーバーを構築します。SMTP は 25/TCP を使用します。メール不正中継防止に、後述の Dovecot の SASL機能を利用し、送信にも認証が必要なように Postfix を設定します2.2 Dovecot : インストール/設定DovecotをインストールしてPOP/IMAPサーバーを構築します。POP は 110/TCP, IMAP は 143/TCP を使用します2.7 メールサーバーPostfixに ClamAV適用Postfix と Clamav を連携させて 送受信メールをリアルタイムスキャンできるように設定します①Amavisd および Clamav Daemon をインストールして Clamav Daemon を起動2.8 メールサーバーPostfixに spamassassin適用2.5.1 spamassassin をインストール①インストール
Ubuntu24.04

Ubuntu Server24.04 ; WEBサーバー、MailサーバーSSL化(Let's Encrypt)

1. 証明書を取得する (Let's Encrypt)1.1 事前準備1.mod_sslを有効にする# a2enmod ssl2.パッケージ管理システムSnappyインストールLet’s EncryptのSSL証明書発行ツール「certbo2. Apache2にSSL/TLS(Let's Encrypt) の設定①Apache2のSSL関連設定ファイルの編集hoge.com-ssl.confのhoge.com-sslは任意でよい3. Mail サーバーにSSL/TLS(Let's Encrypt) の設定3.1 メールサーバー用証明書の取得メールサーバー用の証明書を取得するが上記と同様の方法では取得できないので「--standalone」オプションをつけて下記のようにしても失敗する。# certbot certonly --standalone -d mail.一度web サーバーを止めてから行うと下記のとおり成功す
Ubuntu24.04

Ubuntu Server24.04 ; MariaDB , WordPressインストール

1. MariaDB1. 1インストール2.WordPressインストール2.1 データベース作成Word Press 用のデータベースを作成します(例として今回はデータベース名を 「wp_db」、ユーザー名を「wp_user」、パスワードを「?Y123456y」)# apt -y install mariadb-serverバージョンチェック# mariadb --versionmariadb Ver 15.1 Distrib 10.11.7-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper1.2. MariaDBサーバのセキュリティ設定MariaDBサーバのセキュリティ関連の設定を行うためにmysql_secure_installtionというツールを実行します。実行すると、質問形式でいくつかのセキュリティ設定
Ubuntu24.04

Ubuntu Server24.04 ; Suricata , SNORT3 インストール

SuricataSURICATA IDS/IPSはネットワーク上の通信を監視し、不審なトラフィックを検知するオープンソースのIDSです。基本的な仕組みはシグネチャ型であるため、あらかじめ設定した不正な通信を検知できます。また、Suricataは検知だけでなく防御も行えることが特徴です。1.Suricata のインストール①必須パッケージをインストールSnort31.必要なパッケージをインストール# apt install build-essential libpcap-dev libpcre3-dev libnet1-dev zlib1g-dev luajit hwloc libdumbnet-dev bison flex liblzma-dev openssl libssl-dev pkg-config libhwloc-dev cmake cpputest libsqlite3-dev uuid-dev libcmocka-dev libnetfilter-queue-dev libmnl-dev autotools-dev libluajit-5.1-dev libunwind-dev libfl-dev -y2. DAQライブラリをインストールDAQライブラリをダウンロードしてインストール
Ubuntu24.04

Ubuntu Server24.04 ; Tripwire , DiCE , Logwatch インストール

TripwireインストールクラッカーによるLinuxサーバーのファイルの改竄を検知するシステムを導入する。今回は、ファイル改竄検知システムにホスト型IDS(IDS=Intrusion Detection System)のTripwireを導入する。Tripwireは、導入時のファイル状態をデータベース化し、そのデータベースとファイルの現状を比較することにより、ファイルの追加/変更/削除を検知する。DiCEのインストールネットが切断されたり、ルーターが切断再起動したときにおこるグローバルIPの変更の度に、ダイナミックDNSにアクセスしグローバルIPが変更されたことを知らせなくてはいけません。その作業を自動的にやってくれるのがDiCEですログ解析ツール logwatch インストール1. logwatch のインストール
Ubuntu24.04

Ubuntu Server24.04 ; システムのバックアップとレストア

1. システムのバックアップ1.1 /var/www/html 配下のバックアップ①/var/www/systemディレクトリーを作成# mkdir -p /var/www/system②/var/www/system配下にbackup_all.shスクリプト作成1.2 MariaDBのデータベースバックアップ①/var/www/system配下にdb_backup.shスクリプト作成2. システムの復元2.1 HTML配下 バックアップファイルの復元① バックアップに使用するHTML バックアップファイルを、「/(ルート)」ディレクトリへ格納最新のタイムスタンプの付いたバックアップファイルを選択2.2 MariaDB データベースを復元①DB バックアップファイルを任意のディレクトリに保存し、データを解凍