Lynis - セキュリティハードニングツールを使ってみる
Lynisとは
セキュリティハードニングツールの一つ. Linuxだけしか使えないと思ったらmacOSやWindowsにも対応していた.
今回はLynisを使ってみた作業ログを書き残す.
環境: dockerで立てたdebianサーバ (versionなどは下の方に載っけてある)
Lynis install
特に難しいことはなく, apt-getで入れることができた.
root@edbc62cbef6a:/app# apt-get install lynis root@edbc62cbef6a:/app# lynis --version 1.6.3
lynisでセキュリティチェックしてみる
lynis --check-all と -quickがあった.
最初なので --check-all で一つずつ確かめてみていった. -quickにすると、Enter入力しなくても勝手に結果が標準出力される.
項目が多いので最初と結果だけ. 最新を入れたかったけどこのosのversionだと1.6.3しか入らないようだ.
[+] Initializing program ------------------------------------ - Detecting OS... [ DONE ] - Clearing log file (/var/log/lynis.log)... [ DONE ] --------------------------------------------------- Program version: 1.6.3 Operating system: Linux Operating system name: Debian Operating system version: 8.11 Kernel version: 4.9.93 Hardware platform: x86_64 Virtual machine: Unknown Hostname: edbc62cbef6a Auditor: [Unknown] Profile: /etc/lynis/default.prf Log file: /var/log/lynis.log Report file: /var/log/lynis-report.dat Report version: 1.0 Plugin directory: /etc/lynis/plugins ---------------------------------------------------
項目が多いので最初と結果だけ. Warningsが3つあった.
今回は一番上の syslog daemon が無いというWarningをやっつけてみる.
-[ Lynis 1.6.3 Results ]- Warnings: ---------------------------- - No syslog daemon found [LOGG-2130] https://cisofy.com/controls/LOGG-2130/ - No swap partion found in /etc/fstab [FILE-6332] http://cisofy.com/controls/FILE-6332/ - klogd is not running, which could lead to missing kernel messages in log files [LOGG-2138] http://cisofy.com/controls/LOGG-2138/ Follow-up: ---------------------------- - Check the logfile (less /var/log/lynis.log) - Read security controls texts (http://cisofy.com) - Use --upload to upload data (Lynis Enterprise users)
セキュリティの問題を解決してみる
基本手順
基本的には, var/log/lynis.log と /var/log/lynis-report.dat を見てsuggestされたアクションを取っていく.
早速 /var/log/lynis-report.dat をLOGG-2130でgrepしてみると, suggestion項目 に syslogdを起動しろという内容が書いてあった. その通りのアクションを取っていくことにする.
Check if any syslog daemon is running and correctly configured [LOGG-2130]
https://cisofy.com/controls/LOGG-2130/
例) syslogdを導入する
調べたらそもそもsyslogdが入っていなかった. なので, syslogdをinstallするところからのスタート.
syslogdでinstallしてみたらinetutils-syslogdがサジェストされた.
これはDeianのsyslogd packageの名前だった.
Debian -- sid の inetutils-syslogd パッケージに関する詳細
root@edbc62cbef6a:/app# apt-get install syslogd : Package syslogd is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: inetutils-syslogd
install後, 無事にsyslogdが入った.
root@edbc62cbef6a:/app# apt-get install inetutils-syslogd Reading package lists... Done Building dependency tree : Processing triggers for systemd (215-17+deb8u7) ... root@edbc62cbef6a:/app# which inetutils-syslogd root@edbc62cbef6a:/app# which syslogd /usr/sbin/syslogd # 実行 root@edbc62cbef6a:/app# /usr/sbin/syslogd # 起動した root@edbc62cbef6a:/app# ps aux | grep syslogd | grep -v grep root 32308 0.0 0.0 8440 1828 ? S 17:45 0:00 /usr/sbin/syslogd
root@edbc62cbef6a:/app# ls /var/log alternatives.log apt btmp dmesg dpkg.log faillog fontconfig.log fsck lastlog lynis-report.dat lynis.log wtmp
syslogd導入後のlogディレクトリ. log fileが色々増えている.
root@edbc62cbef6a:/app# ls /var/log alternatives.log auth.log daemon.log dmesg faillog fsck lastlog lynis-report.dat mail.err mail.log messages syslog uucp.log apt btmp debug dpkg.log fontconfig.log kern.log lpr.log lynis.log mail.info mail.warn news user.log wtmp
もう一度セキュリティチェックをする
今回は --quick で実行する.
Warningが減っていた. どうやらセキュリティハードニングの第一歩を踏み出せたらしい.
-[ Lynis 1.6.3 Results ]- Warnings: ---------------------------- - No swap partion found in /etc/fstab [FILE-6332] http://cisofy.com/controls/FILE-6332/ - klogd is not running, which could lead to missing kernel messages in log files [LOGG-2138] http://cisofy.com/controls/LOGG-2138/
感想
- 結果が見やすい. 項目ごとにチェックした結果を表示してくれる.
- Suggestionsを出してくれるのがありがたい. 解決の糸口を一つでも提示してもらえるだけでも調べる時間が短縮されて助かる.
- 無料枠でもそれなりに使えそうではあった.
- セキュリティとかOSについて詳しくないとWarningsに出てくる項目の脅威度がいまいちわからない. そういう場合はLynis Enterprise Suiteでサポート受けるとかになりそう.