- 投稿日:2022-02-24T20:08:30+09:00
Splunk本出版のお知らせ - 「Splunk CloudでSecurity/IT監視基盤を「構築」しよう: WordPress + Apache HTTP + MySQL on Linux編」
(Linux版です) 本を出版しましたので、ご紹介します。Webサーバー、データベースをつかって、WordPressをきちんと構築し、それを全力でSplunkで監視する方法についてです。 DB Connectというアドオンがありますが、これをきちんと動かしているケースは少ない。とてもいいアドオンなので使わないのはソン! 綺麗にSplunkを構築する方法なので、Splunk極めたい人には超絶オススメです。 「Splunk CloudでSecurity/IT監視基盤を「構築」しよう: WordPress + Apache HTTP + MySQL on Linux編」 https://www.amazon.co.jp/dp/B09T735Z2J/ref=cm_sw_r_tw_dp_1MW8QMBXXWX76HW7GZVE 最後に、定番のInfoSec Appで可視化してます。 ご注意) 本書では紙面の都合上、途中で以下の別書籍のご購入&その内容の理解済み、を前提としたページ構成となっています。 Splunk Enterpriseの始め方、Splunk Cloudへの引っ越し - Linux編 本気でUnix/Linuxマシンを監視する方法: Splunk + Splunk Unix and Linux Add-on編 ログのCIM対応はもう怖くない!ぱぱっとCIM化!: InfoSec Appで可視化もやっちゃう Amazon Kindle Unlimited契約の方は無料になりますので、ぜひ合わせてお読みください。Amazon Kindle Unlimited未契約の方は、誠に恐れ入りますが、上述の本もご一緒にご購入&学習の上、本書のご購入を強くオススメいたします。 使用ソフトウェア) 構築基盤) AWS 監視対象アプリケーション) WordPress 5.9 CentOS Linux release 7.9.2009 (Core) My SQL Server Community Edition 5.7 Apache HTTP Server 2.4.52 (CentOS Linux release 7.9.2009) PHP 7.4.28 (cli) Splunkソフトウェア) Splunk Cloud Trial 8.2.2104.1 Splunk Enterprise 8.2.5 ( Heavy Forwarderとして利用 ) Splunk Universal Forwarder 8.2.5 Splunk Add-on for Apache Web Server 2.0.0 Splunk Add-on for MySQL 3.0.0 Splunk DB Connect 3.7.0 Splunk Common Information Model (CIM) 5.0.0 InfoSec App for Splunk 1.7.0 他 JDK 11 目次) ご注意 はじめに 本書で確認が取れている各種ソフトウェア・バージョン 本書の前提について AWS上での分析対象システムの構築 - WordPress on Linux AWS上に3つのインスタンス作成 6.1. 3つインスタンスの作成 6.2. マシン名の設定 6.3. 通信ポートの設定 DB) AWS上のDBサーバーの構築 7.1. マシン名の設定 7.2. 通信ポートの設定 7.3. ファイアウォールの停止 7.1. selinuxのdisable 7.2. MySQL Community Editionのダウンロードとインストール 7.3. リモートマシン(Web)からアクセスできるように 7.4. Generalログ、Slow Queryログ、Errorログの設定 7.5. WordPressデータベースの作成 WWW) AWS上のWebサーバーの構築 8.1. マシン名の設定 8.2. 通信ポートの設定 8.3. ファイアウォールの停止 8.4. selinuxのdisable 8.5. PHP7のダウンロードとインストール 8.6. Apache HTTP Serverのダウンロードとインストール 8.7. Apache - PHP のセットアップ 8.8. Apache - PHP の動作確認 8.9. WordPressのダウンロード 8.10. WordPressのセットアップ 8.11. WordPressの動作確認 8.12. WordPressのIPアドレスの変更 Splunk Cloud)Splunk Cloudの申し込みと初期設定 9.1. Splunk社サイトへアクセス 9.2. Splunk.comアカウントの作成 9.3. ログインURLのメールを受信 9.4. Splunk Cloudへログインし、Forwarder Appをダウンロード 9.5. Splunk Cloud側でのアドオンインストール 9.6. Splunk Cloud側でのインデックス作成 Splunk) AWS上でのSplunk Deployment Serverセットアップ 10.1. マシン名の設定 10.2. 通信ポートの設定 10.3. ファイアウォールの停止 10.1. selinuxのdisable 10.2. Splunk Enterpriseのダウンロード 10.3. Splunk Enterpriseのセットアップ 10.4. デプロイメントサーバーライセンスの適用 WWW) AWS上のWebサーバーのUniversal Forwarderセットアップ 11.1. Splunk Universal Forwarderのセットアップ 11.2. Apache HTTPサーバーのログフォーマットの変更 11.3. 部分の書き換え 11.4. 動作確認(変更後) DB) AWS上のDBサーバーのHeavy Forwarderセットアップ 12.1. Splunk Heavy Forwarderのセットアップ 12.2. Heavy Forwarderにもライセンスキーが必要 12.3. JDK 11のダウンロードとインストール 12.4. 重要)DB Connect はDeployment Serverで集中管理・配布ができない 12.5. DB Connectのアドオンのダウンロードとインストール 12.6. MySSQLのJDBCのダウンロードとインストール 12.7. DB Connect AppでのJDBCドライバの確認 12.8. 認証情報の設定 12.9. 接続の設定 12.10. データベースへの接続テスト 12.11. インデックス作成 Splunk) AWS上でのSplunk Deployment Serverの設定 13.1. アドオンのインストール 13.2. Forwarder Appのインストール 13.3. コピーしたForwarder Appのファイルの書き換え(書き戻し)の実施 13.4. 接続中のWebサーバ、DBサーバのForwarderの確認 13.5. 3つのアドオンを一旦deployment-appsフォルダへコピー 13.6. 配布のためのUnix Add-on設定の作成 13.7. 配布のためのApache HTTP Server Add-on設定の作成 13.8. 配布のためのMySQL Add-on設定の作成 13.9. WWW) Webサーバーへのアドオン配布 13.9.1. Webサーバークラスの作成 13.9.2. クライアントの割当とアドオンの配布 13.10. DB) DBサーバーへのアドオン配布 13.10.1. DBサーバークラスの作成 13.10.2. クライアントの割当とアドオンの配布 13.11. ForwarderAppの再起動オプションをONにする DB) DB Connect設定の仕上げ 14.1. Splunk Cloudでのデータ確認 14.2. 他のデータの取込設定を実施 14.3. エラーログの監視設定 Splunk Cloud) Splunk Cloudでの可視化 15.1. Unixマシンのイベントログの可視化 15.2. Webサーバのログの可視化 15.3. DBサーバのログの可視化 Splunk Cloud) Splunk CloudでのInfoSec Appによる可視化 16.1. Common Information Model Add-onのインストール 16.2. InfoSec Appのインストール 16.3. InfoSec Appに必要な他の可視化Appのインストール 16.3.1. Punchcard - Custom Visualization 16.3.2. Force Directed App For Splunk 16.3.3. Splunk Sankey Diagram - Custom Visualization 16.4. InfoSec Appのためのデータモデル高速化設定 InfoSec Appの画面を確認 17.1. Security Posture画面 17.2. All Authentications画面 17.3. User Investigation画面 終わりに 著者プロフィール
- 投稿日:2022-02-24T00:43:34+09:00
Ansible コマンドまとめ
#コマンド一覧 ##モジュール ###apt パッケージマネージャで、パッケージのインストールや削除を行う。 apt - name: install package apt: pkg=git update_cache=yes cache_valid_time=3600 update_cacheは、ローカルのaptキャッシュを最新にする。 cache_valid_timeは、指定された時間以上キャッシュが古い場合に更新する。 ###copy ファイルをローカルマシンからホストにコピーする。 copy - name: copy file copy: src={ローカルのディレクトリ} dest={ホストのディレクトリ} ###file ファイル、シンボリック、ディレクトリの属性を設定する。 ###service サービスの起動、停止、再起動を行う。 ###template ファイルをテンプレートから生成し、そのファイルをホストにコピーする。 ###postgresql_user PostgreSQL内にユーザーを作成する。 postgresql_user - name: create user postgresql_user: name: "{{database_user}}" password: "{{db_pass}}" become: True become_user: postgres ###postgresql_db PostgreSQL内にデータベースを作成する。 postgresql_db - name: create database postgresql_db: name: "{{database_name}}" owner: "{{database_user}}" encoding: UTF8 lc_ctype: "{{ locale }}" lc_collate: "{{ locale }}" template: template0 become: True become_user: postgres ##オプション ###become このオプションが真に設定されていれば、Ansibleは(デフォルトでは) rootユーザーとしてsudoした上ですべてのタスクを実行する。 Ubuntuサーバーを管理する場合に役立つ。 ###with_items Ansibleのイテレーション機能 パッケージの一括インストールなどで利用できる。 with_items - name: install packages apt: pkg={{ item }} update_cache=yes cache_valid_time=3600 become: true with_items: - git - nginx - python-dev ###async + poll:0 非同期実行のコマンド with_items - name: install packages apt: pkg={{ item }} update_cache=yes cache_valid_time=3600 become: true with_items: - git - nginx - python-dev async: 5 poll: 0 参考文献 初めてのAnsible(Lorin Hochstein著,玉川竜司訳,株式会社オライリー・ジャパン版)
- 投稿日:2022-02-24T00:12:57+09:00
Windows の SSH ターミナルといえば RLogin でしょ
RLogin とは Windows 用のターミナルソフト。 SSH だけではなく、telnet なども対応しています。 https://kmiya-culti.github.io/RLogin/ 個人的におすすめなので、良いところを紹介しようと思います。 なお、筆者は他のターミナルソフトは Teraterm くらいしか知りません…。 しかもここ数年は全く使ってないです…。※RLogin で事足りるので なのでその前提でお読みください。 複数サーバのログイン設定をタブごとに分けて登録できる Teraterm では、複数サーバにログインする際には下記あたりの方法があるかと思います。 都度ホスト名 or IP アドレス、ポート番号、公開鍵、パスワードなどを入力する ホストごとに Teraterm マクロを記述 どちらもそれなりにめんどくさく、管理対象のサーバが増えるほど面倒くささが増大するかと思います。 しかし RLogin はデフォルトで下記のように複数のサーバ設定を登録できる仕組みがあります。 サーバのログイン情報をタブごとに分類しつつ事前登録することで、ログイン時は対象の設定をダブルクリックするだけでログインすることができます。 もちろん、踏み台サーバを経由した内部サーバへのログインも可能です。 その際は、踏み台サーバの設定を事前に登録した上で、踏み台を経由するサーバ設定時に下記の設定箇所から、踏み台サーバを選択する形になります。 複数の公開鍵を登録できる SSH 接続する際は公開鍵認証が一般的ですが、鍵の管理はめんどくさいですよね。 開発/ステージング/本番、オンプレ/クラウド で公開鍵を分けているけど、このサーバはどの鍵ペアでログインできるんだっけ?といった場合は、1つずつ試さなきゃいけなかったり、加えてパスフレーズもいくつかあると更にめんどくさかったりします。 そんなときに便利な機能として、サーバ設定に複数の鍵を登録しておき、登録した順序で一通りログインを試してくれる、なんていう素晴らしい機能があります。 認証キーリストの Type 列のチェックボックスで一時的に有効・無効を切り替えたり、Name 欄にわかりやすく名前を付けることができます。 複数タブを開ける&任意タブへの同時送信機能がある Screen や Tmux のように複数タブを分けて並べる機能があります。 Screen や Tmux だとログがぐちゃぐちゃになってしまいますが、この機能を使えばタブごとにそれぞれログを分けて保存できるので、とても良いです。 加えて、複数開いたタブのうちチェックボックスで指定したタブだけにコマンドを同時送信することが可能です。 これを利用することで、複数サーバへの同時オペレーションが効率化できます。 ※もちろん対象サーバ間違いのリスクがあるので、十分注意して利用してください。 ログイン設定の継承が可能 これが個人的に最も素晴らしい機能かと思うのですが、ログイン設定を継承しつつ一部を変更したログイン設定を作ることが可能です。 上の図のように、継承する側で固有の設定のみ設定した上で、"その他オプションを継承" のプルダウンで継承される側のサーバ設定を選択できます。 サーバ設定を継承した場合は、その他設定箇所などでは下記のように表示されます。 この機能を利用することで、例えばベースとなる環境ごと(開発/ステージング/本番) でターミナルの背景色を分け、サーバの環境ごとに継承するサーバ設定を分けることで、背景色でサーバ環境を分けて注意喚起しつつオペミスのリスクを下げる、といった使い方が可能となります。 まとめ RLogin を紹介させていただきました。 その他、Terraterm にあるだいたいの機能(ログ自動保存含む) は RLogin でもカバーできるので、試してみてはいかがでしょうか? なお筆者はその他ターミナルソフトに詳しくないため、別でもっと良いターミナルソフトなどがあれば教えていただけると嬉しいです! 読んでいただきありがとうございました。