忘備録

日々の調べ物をまとめる。アウトプットする。基本自分用。

【CentOS6】ログ監視ツール

logwatch

logwatchは定期的にログのサマリーをメールで送ってくれるツールです。

導入することで、日々大量に吐かれるログから必要な情報だけをサマリーしてくれるため、ログの監視がぐっと楽になると思います。

インストール

$  yum search logwatch
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
epel/metalink                                                                                                                                       | 4.7 kB     00:00     
 * base: ftp.iij.ad.jp
 * epel: ftp.jaist.ac.jp
 * extras: ftp.iij.ad.jp
 * rpmforge: ftp.kddilabs.jp
 * updates: ftp.iij.ad.jp
base                                                                                                                                                | 3.7 kB     00:00     
epel                                                                                                                                                | 4.3 kB     00:00     
epel/primary_db                                                                                                                                     | 5.8 MB     00:03     
extras                                                                                                                                              | 3.4 kB     00:00     
rpmforge                                                                                                                                            | 1.9 kB     00:00     
updates                                                                                                                                             | 3.4 kB     00:00     
========================================================================== N/S Matched: logwatch ==========================================================================
dmraid-events-logwatch.x86_64 : dmraid logwatch-based email reporting
hostapd-logwatch.x86_64 : Logwatch scripts for hostapd
fwlogwatch.x86_64 : Firewall log analyzer, report generator and realtime response agent
logwatch.noarch : A log file analysis program

  Name and summary matches only, use "search all" for everything.
$ yum install -y log watch
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: mirrors.hustunique.com
 * extras: ftp.iij.ad.jp
 * rpmforge: ftp.kddilabs.jp
 * updates: ftp.iij.ad.jp
パッケージ log は利用できません。
パッケージ watch は利用できません。
エラー: 何もしません
$ yum install -y logwatch
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: mirrors.hustunique.com
 * extras: ftp.iij.ad.jp
 * rpmforge: ftp.kddilabs.jp
 * updates: ftp.iij.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package logwatch.noarch 0:7.3.6-52.el6 will be インストール
--> 依存性の処理をしています: perl(strict) のパッケージ: logwatch-7.3.6-52.el6.noarch
--> 依存性の処理をしています: perl(POSIX) のパッケージ: logwatch-7.3.6-52.el6.noarch
--> 依存性の処理をしています: perl(Getopt::Long) のパッケージ: logwatch-7.3.6-52.el6.noarch
--> 依存性の処理をしています: perl(File::Temp) のパッケージ: logwatch-7.3.6-52.el6.noarch
--> 依存性の処理をしています: perl(Exporter) のパッケージ: logwatch-7.3.6-52.el6.noarch
--> 依存性の処理をしています: perl(Date::Manip) のパッケージ: logwatch-7.3.6-52.el6.noarch
--> 依存性の処理をしています: /usr/bin/perl のパッケージ: logwatch-7.3.6-52.el6.noarch
--> トランザクションの確認を実行しています。
---> Package perl.x86_64 4:5.10.1-141.el6_7.1 will be インストール
--> 依存性の処理をしています: perl-libs = 4:5.10.1-141.el6_7.1 のパッケージ: 4:perl-5.10.1-141.el6_7.1.x86_64
--> 依存性の処理をしています: perl-libs のパッケージ: 4:perl-5.10.1-141.el6_7.1.x86_64
--> 依存性の処理をしています: perl(version) のパッケージ: 4:perl-5.10.1-141.el6_7.1.x86_64
--> 依存性の処理をしています: perl(Pod::Simple) のパッケージ: 4:perl-5.10.1-141.el6_7.1.x86_64
--> 依存性の処理をしています: perl(Module::Pluggable) のパッケージ: 4:perl-5.10.1-141.el6_7.1.x86_64
--> 依存性の処理をしています: libperl.so()(64bit) のパッケージ: 4:perl-5.10.1-141.el6_7.1.x86_64
---> Package perl-Date-Manip.noarch 0:6.24-1.el6 will be インストール
--> 依存性の処理をしています: perl(YAML::Syck) のパッケージ: perl-Date-Manip-6.24-1.el6.noarch
--> トランザクションの確認を実行しています。
---> Package perl-Module-Pluggable.x86_64 1:3.90-141.el6_7.1 will be インストール
---> Package perl-Pod-Simple.x86_64 1:3.13-141.el6_7.1 will be インストール
--> 依存性の処理をしています: perl(Pod::Escapes) >= 1.04 のパッケージ: 1:perl-Pod-Simple-3.13-141.el6_7.1.x86_64
---> Package perl-YAML-Syck.x86_64 0:1.07-4.el6 will be インストール
---> Package perl-libs.x86_64 4:5.10.1-141.el6_7.1 will be インストール
---> Package perl-version.x86_64 3:0.77-141.el6_7.1 will be インストール
--> トランザクションの確認を実行しています。
---> Package perl-Pod-Escapes.x86_64 1:1.04-141.el6_7.1 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

===========================================================================================================================================================================
 パッケージ                                      アーキテクチャ                   バージョン                                       リポジトリー                       容量
===========================================================================================================================================================================
インストールしています:
 logwatch                                        noarch                           7.3.6-52.el6                                     base                              302 k
依存性関連でのインストールをします。:
 perl                                            x86_64                           4:5.10.1-141.el6_7.1                             updates                            10 M
 perl-Date-Manip                                 noarch                           6.24-1.el6                                       base                              1.4 M
 perl-Module-Pluggable                           x86_64                           1:3.90-141.el6_7.1                               updates                            40 k
 perl-Pod-Escapes                                x86_64                           1:1.04-141.el6_7.1                               updates                            33 k
 perl-Pod-Simple                                 x86_64                           1:3.13-141.el6_7.1                               updates                           213 k
 perl-YAML-Syck                                  x86_64                           1.07-4.el6                                       base                               75 k
 perl-libs                                       x86_64                           4:5.10.1-141.el6_7.1                             updates                           579 k
 perl-version                                    x86_64                           3:0.77-141.el6_7.1                               updates                            52 k

トランザクションの要約
===========================================================================================================================================================================
インストール         9 パッケージ

総ダウンロード容量: 13 M
インストール済み容量: 47 M
パッケージをダウンロードしています:
(1/9): logwatch-7.3.6-52.el6.noarch.rpm                                                                                                             | 302 kB     00:00     
(2/9): perl-5.10.1-141.el6_7.1.x86_64.rpm                                                                                                           |  10 MB     00:03     
(3/9): perl-Date-Manip-6.24-1.el6.noarch.rpm                                                                                                        | 1.4 MB     00:01     
(4/9): perl-Module-Pluggable-3.90-141.el6_7.1.x86_64.rpm                                                                                            |  40 kB     00:00     
(5/9): perl-Pod-Escapes-1.04-141.el6_7.1.x86_64.rpm                                                                                                 |  33 kB     00:00     
(6/9): perl-Pod-Simple-3.13-141.el6_7.1.x86_64.rpm                                                                                                  | 213 kB     00:00     
(7/9): perl-YAML-Syck-1.07-4.el6.x86_64.rpm                                                                                                         |  75 kB     00:00     
(8/9): perl-libs-5.10.1-141.el6_7.1.x86_64.rpm                                                                                                      | 579 kB     00:00     
(9/9): perl-version-0.77-141.el6_7.1.x86_64.rpm                                                                                                     |  52 kB     00:00     
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
合計                                                                                                                                       1.4 MB/s |  13 MB     00:09     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールしています  : 1:perl-Pod-Escapes-1.04-141.el6_7.1.x86_64                                                                                                 1/9 
  インストールしています  : 1:perl-Module-Pluggable-3.90-141.el6_7.1.x86_64                                                                                            2/9 
  インストールしています  : 3:perl-version-0.77-141.el6_7.1.x86_64                                                                                                     3/9 
  インストールしています  : 4:perl-libs-5.10.1-141.el6_7.1.x86_64                                                                                                      4/9 
  インストールしています  : 1:perl-Pod-Simple-3.13-141.el6_7.1.x86_64                                                                                                  5/9 
  インストールしています  : 4:perl-5.10.1-141.el6_7.1.x86_64                                                                                                           6/9 
  インストールしています  : perl-YAML-Syck-1.07-4.el6.x86_64                                                                                                           7/9 
  インストールしています  : perl-Date-Manip-6.24-1.el6.noarch                                                                                                          8/9 
  インストールしています  : logwatch-7.3.6-52.el6.noarch                                                                                                               9/9 
  Verifying               : 1:perl-Pod-Simple-3.13-141.el6_7.1.x86_64                                                                                                  1/9 
  Verifying               : 1:perl-Pod-Escapes-1.04-141.el6_7.1.x86_64                                                                                                 2/9 
  Verifying               : perl-Date-Manip-6.24-1.el6.noarch                                                                                                          3/9 
  Verifying               : logwatch-7.3.6-52.el6.noarch                                                                                                               4/9 
  Verifying               : 1:perl-Module-Pluggable-3.90-141.el6_7.1.x86_64                                                                                            5/9 
  Verifying               : perl-YAML-Syck-1.07-4.el6.x86_64                                                                                                           6/9 
  Verifying               : 3:perl-version-0.77-141.el6_7.1.x86_64                                                                                                     7/9 
  Verifying               : 4:perl-libs-5.10.1-141.el6_7.1.x86_64                                                                                                      8/9 
  Verifying               : 4:perl-5.10.1-141.el6_7.1.x86_64                                                                                                           9/9 

インストール:
  logwatch.noarch 0:7.3.6-52.el6                                                                                                                                           

依存性関連をインストールしました:
  perl.x86_64 4:5.10.1-141.el6_7.1          perl-Date-Manip.noarch 0:6.24-1.el6 perl-Module-Pluggable.x86_64 1:3.90-141.el6_7.1 perl-Pod-Escapes.x86_64 1:1.04-141.el6_7.1
  perl-Pod-Simple.x86_64 1:3.13-141.el6_7.1 perl-YAML-Syck.x86_64 0:1.07-4.el6  perl-libs.x86_64 4:5.10.1-141.el6_7.1           perl-version.x86_64 3:0.77-141.el6_7.1    

完了しました!

設定

デフォルトの設定ファイルは

/usr/share/logwatch/default.conf/logwatch.conf

で、独自に設定を変えたい場合は以下ファイルを変更する。

/etc/logwatch/conf/logwatch.conf

ちなみに、デフォルトから変更したい項目だけ記述しておけば良いです。

自分の場合は以下を変えました。

# デフォルトだとrootだが、gmail宛に飛ばすように変更
MailTo = sample@gmail.com

# デフォルトのメールクライアントのsendmailからmailxに変更
mailer = "mailx -t"

基本的な運用はcronでの日次実行(logwatchインストール時に/etc/cron.daily/0logwatchが作成される)になる。

なお、テストなどのために即時実行したい場合はlogwatchコマンドを叩けばよい。

$ logwatch 
You have old files in your logwatch tmpdir (/var/cache/logwatch):
    logwatch.dbppTw6E
    logwatch.sAUaElla
The directories listed above were most likely created by a
logwatch run that failed to complete successfully.  If so, you
may delete these directories.

Ignoring header field "MIME-Version: 1.0"
Ignoring header field "Content-Transfer-Encoding: 7bit"
Ignoring header field "Content-Type: text/plain; charset="iso-8859-1""

そして、以下のようなサマリがメールで飛んでくる。

 ################### Logwatch 7.3.6 (05/19/07) #################### 
        Processing Initiated: Fri Feb 26 03:27:03 2016
        Date Range Processed: yesterday
                              ( 2016-Feb-25 )
                              Period is day.
      Detail Level of Output: 0
              Type of Output: unformatted
           Logfiles for Host: localhost.localdomain
  ################################################################## 
 
 --------------------- clam-update Begin ------------------------ 

 Last ClamAV update process started at Thu Feb 25 03:43:01 2016
 
 Last Status:
    main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)
    Downloading daily-21407.cdiff [100%]
    Downloading daily-21408.cdiff [100%]
    Downloading daily-21409.cdiff [100%]
    Downloading daily-21410.cdiff [100%]
    daily.cld updated (version: 21410, sigs: 1854558, f-level: 63, builder: neo)
    bytecode.cvd is up to date (version: 271, sigs: 47, f-level: 63, builder: anvilleg)
    Database updated (4278830 signatures) from database.clamav.net (IP: 27.96.54.66)
 
 ---------------------- clam-update End ------------------------- 

 
 --------------------- pam_unix Begin ------------------------ 

 sshd:
    Authentication Failures:
       unknown (xxxxxxxxxxx.xxx.ftth.sample.com): 1 Time(s)
    Invalid Users:
       Unknown Account: 1 Time(s)
 
 su-l:
    Sessions Opened:
       hoge -> root: 5 Time(s)
 
 
 ---------------------- pam_unix End ------------------------- 

 
 --------------------- Postfix Begin ------------------------ 

    5.380M  Bytes accepted                         5,641,489
    8.114K  Bytes delivered                            8,309
 ========   ================================================
 
       22   Accepted                                 100.00%
 --------   ------------------------------------------------
       22   Total                                    100.00%
 ========   ================================================
 
        1   Removed from queue    
        3   Delivered             
       21   Deferred              
      310   Deferrals             
 
     1220   Connection failure (outbound) 
 
 
 
 ---------------------- Postfix End ------------------------- 

 
 --------------------- SSHD Begin ------------------------ 

 
 Illegal users from:
    XXX.XXX.XXX.XXX (xxxxxxxxxxx.xxx.ftth.sample.com): 1 time
 
 Users logging in through sshd:
    hoge:
       XXX.XXX.XXX.XXX (xxxxxxxxxxx.xxx.ftth.sample.com): 4 times
       XXX.XXX.XXX.XXX (xxxxxxxxxxx.xxx.ftth.sample.com): 1 time
 
 
 Received disconnect:
    11: disconnected by user : 5 Time(s)
 
 ---------------------- SSHD End ------------------------- 

 
 --------------------- yum Begin ------------------------ 

 
 Packages Installed:
    1:perl-Pod-Simple-3.13-141.el6_7.1.x86_64
    4:perl-libs-5.10.1-141.el6_7.1.x86_64
    perl-YAML-Syck-1.07-4.el6.x86_64
    1:perl-Module-Pluggable-3.90-141.el6_7.1.x86_64
    logwatch-7.3.6-52.el6.noarch
    1:perl-Pod-Escapes-1.04-141.el6_7.1.x86_64
    4:perl-5.10.1-141.el6_7.1.x86_64
    perl-Date-Manip-6.24-1.el6.noarch
    3:perl-version-0.77-141.el6_7.1.x86_64
 
 ---------------------- yum End ------------------------- 

 
 --------------------- Disk Space Begin ------------------------ 

 Filesystem            Size  Used Avail Use% Mounted on
 /dev/mapper/VolGroup-lv_root
                        50G  1.3G   46G   3% /
 /dev/sda1             477M   57M  395M  13% /boot
 /dev/mapper/VolGroup-lv_home
                       240G   60M  228G   1% /home
 
 
 ---------------------- Disk Space End ------------------------- 

 
 ###################### Logwatch End ######################### 

特に、Linuxのpam認証に関する「pam_unix」やssh認証に関する「SSHD」セキュリティに関する重要な情報なので、有用ですね。

参考

第29回 「logwatch によるログの収集」

Logwatchでサーバ監視レポート - エーエイチレフ linuxサーバー技術情報

swatch

任意のログをリアルタイムにチェックしたり、メッセージのパターンを検知してメールを投げたりできるツールです。

インストール

前提として、EPELリポジトリの登録が必要です。

【CentOS6】サードパーティリポジトリの追加 - 忘備録

yum install -y swatch
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
epel/metalink                                                                          | 5.1 kB     00:00     
 * base: ftp.iij.ad.jp
 * epel: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * rpmforge: ftp.kddilabs.jp
 * updates: ftp.iij.ad.jp
base                                                                                   | 3.7 kB     00:00     
epel                                                                                   | 4.3 kB     00:00     
extras                                                                                 | 3.4 kB     00:00     
rpmforge                                                                               | 1.9 kB     00:00     
updates                                                                                | 3.4 kB     00:00     
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package swatch.noarch 0:3.2.3-7.el6 will be インストール
--> 依存性の処理をしています: perl(Time::HiRes) のパッケージ: swatch-3.2.3-7.el6.noarch
--> 依存性の処理をしています: perl(Date::Parse) のパッケージ: swatch-3.2.3-7.el6.noarch
--> 依存性の処理をしています: perl(Date::Format) のパッケージ: swatch-3.2.3-7.el6.noarch
--> 依存性の処理をしています: perl(Date::Calc) のパッケージ: swatch-3.2.3-7.el6.noarch
--> トランザクションの確認を実行しています。
---> Package perl-Date-Calc.noarch 0:6.3-2.el6 will be インストール
--> 依存性の処理をしています: perl(Bit::Vector) >= 7.1 のパッケージ: perl-Date-Calc-6.3-2.el6.noarch
--> 依存性の処理をしています: perl(Carp::Clan) のパッケージ: perl-Date-Calc-6.3-2.el6.noarch
--> 依存性の処理をしています: perl(Bit::Vector) のパッケージ: perl-Date-Calc-6.3-2.el6.noarch
---> Package perl-Time-HiRes.x86_64 4:1.9721-141.el6_7.1 will be インストール
---> Package perl-TimeDate.noarch 1:1.16-13.el6 will be インストール
--> トランザクションの確認を実行しています。
---> Package perl-Bit-Vector.x86_64 0:7.1-2.el6 will be インストール
---> Package perl-Carp-Clan.noarch 0:6.03-2.el6 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

==============================================================================================================
 パッケージ                  アーキテクチャ     バージョン                          リポジトリー         容量
==============================================================================================================
インストールしています:
 swatch                      noarch             3.2.3-7.el6                         epel                 49 k
依存性関連でのインストールをします。:
 perl-Bit-Vector             x86_64             7.1-2.el6                           base                169 k
 perl-Carp-Clan              noarch             6.03-2.el6                          base                 25 k
 perl-Date-Calc              noarch             6.3-2.el6                           base                210 k
 perl-Time-HiRes             x86_64             4:1.9721-141.el6_7.1                updates              49 k
 perl-TimeDate               noarch             1:1.16-13.el6                       base                 37 k

トランザクションの要約
==============================================================================================================
インストール         6 パッケージ

総ダウンロード容量: 539 k
インストール済み容量: 1.4 M
パッケージをダウンロードしています:
(1/6): perl-Bit-Vector-7.1-2.el6.x86_64.rpm                                            | 169 kB     00:00     
(2/6): perl-Carp-Clan-6.03-2.el6.noarch.rpm                                            |  25 kB     00:00     
(3/6): perl-Date-Calc-6.3-2.el6.noarch.rpm                                             | 210 kB     00:00     
(4/6): perl-Time-HiRes-1.9721-141.el6_7.1.x86_64.rpm                                   |  49 kB     00:00     
(5/6): perl-TimeDate-1.16-13.el6.noarch.rpm                                            |  37 kB     00:01     
(6/6): swatch-3.2.3-7.el6.noarch.rpm                                                   |  49 kB     00:00     
--------------------------------------------------------------------------------------------------------------
合計                                                                          144 kB/s | 539 kB     00:03     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールしています  : perl-Carp-Clan-6.03-2.el6.noarch                                              1/6 
  インストールしています  : perl-Bit-Vector-7.1-2.el6.x86_64                                              2/6 
  インストールしています  : perl-Date-Calc-6.3-2.el6.noarch                                               3/6 
  インストールしています  : 4:perl-Time-HiRes-1.9721-141.el6_7.1.x86_64                                   4/6 
  インストールしています  : 1:perl-TimeDate-1.16-13.el6.noarch                                            5/6 
  インストールしています  : swatch-3.2.3-7.el6.noarch                                                     6/6 
  Verifying               : perl-Carp-Clan-6.03-2.el6.noarch                                              1/6 
  Verifying               : perl-Bit-Vector-7.1-2.el6.x86_64                                              2/6 
  Verifying               : perl-Date-Calc-6.3-2.el6.noarch                                               3/6 
  Verifying               : swatch-3.2.3-7.el6.noarch                                                     4/6 
  Verifying               : 1:perl-TimeDate-1.16-13.el6.noarch                                            5/6 
  Verifying               : 4:perl-Time-HiRes-1.9721-141.el6_7.1.x86_64                                   6/6 

インストール:
  swatch.noarch 0:3.2.3-7.el6                                                                                 

依存性関連をインストールしました:
  perl-Bit-Vector.x86_64 0:7.1-2.el6                perl-Carp-Clan.noarch 0:6.03-2.el6                        
  perl-Date-Calc.noarch 0:6.3-2.el6                 perl-Time-HiRes.x86_64 4:1.9721-141.el6_7.1               
  perl-TimeDate.noarch 1:1.16-13.el6               

完了しました!

デーモン起動スクリプト

毎回手動でswatchを起動するのは手間なので、起動スクリプトを作成します。

[2016.02.29] スクリプトに不具合があったので修正しました。詳しくはソースのコメントを参照

/etc/rc.d/init.d/swatch

#!/bin/sh
#
# swatch
#
# chkconfig: 2345 90 35
# description: swatch start/stop script
#
. /etc/rc.d/init.d/functions

#[ ! -d /var/log/swatch ] && mkdir -p /var/log/swatch

PATH=/bin:/sbin:/usr/bin:/usr/sbin

start() {
  ls /var/run/swatch_*.pid 1> /dev/null 2>&1
  if [ $? -ne 0 ]; then
    pno=0
    RET=0
    conflist=`ls /etc/swatch/conf/*.conf`
    if [ $? -ne 0 ]; then
        exit 1
    fi
    for conf in $conflist
    do
      log=`basename $conf | cut -d\. -f1`

      logPath=`find /var/log/ -type f -regex ".*/$log"`
      [ ! -n "$logPath" ] && logPath=`find /var/log/ -type f -regex ".*/$log.log"`

      if [ -n "$logPath" ]; then
        pno=`expr $pno + 1`
        # [2016.02.29] --script-dirオプションを追加しました。
        # この指定がないとスクリプト停止時に.swatch_script.*ファイルが削除されず、ホームディレクトリに溜まっていってしまいます。
        swatch -c $conf -t "$logPath" --daemon \
        --script-dir=/tmp/ \
        --pid-file /var/run/swatch_$pno.pid 1>> /var/log/swatch.log 2>& 1
        RET=$?
        [ $RET != 0 ] && return $RET
      else
        echo -n "error: not found log file"
        exit 1
      fi
    done

    if [ $pno -gt 0 ]; then
      echo
      [ $RET = 0 ] && touch /var/lock/subsys/swatch
    fi

    echo -n "Starting swatch"
    return $RET
  else
    echo -n "swatch already started"
  fi
}

stop() {
  ls /var/run/swatch_*.pid 1> /dev/null 2>&1
  if [ $? -eq 0 ]; then
    echo -n "Stopping swatch"
    for pid in /var/run/swatch_*.pid
    do
      kill $(cat $pid)
      rm -f $pid
    done
    echo
    rm -f /var/lock/subsys/swatch /tmp/.swatch_script.*
  else
    echo -n "swatch is not starting"
  fi
}

status() {
  ls /var/run/swatch_*.pid 1> /dev/null 2>&1
  if [ $? -eq 0 ]; then
    echo -n "swatch (pid"
    for pid in /var/run/swatch_*.pid
    do
      echo -n " `cat $pid`"
    done
    echo ") is running"
  else
    echo -n "swatch is stopped"
  fi
}

case "$1" in
  start)  start;;
  stop)    stop;;
  restart)stop && start;;
  status)  status;;
  *)      echo "Usage: swatch {start|stop|restart|status}" && exit 1;;
esac

exit $RET

スクリプトの概要は以下です。

  • /etc/swatch/conf/ 配下にある「*.conf」ファイルをswatchの-cオプションの引数にする
  • /var/log/{上記の設定ファイルの拡張子(.conf)を抜いたもの} をswatchの-tオプションの引数にする
  • /var/log/{上記の設定ファイルの拡張子(.conf)を抜いたもの}がない場合、{左記に.logを加えたもの} をswatchの-tオプションの引数にする
  • 「echo」アクションの出力先を /var/log/swatch.log にする

文だとイマイチ分からないので例を挙げると

/etc/swatch/conf/secure.conf と /etc/swatch/conf/yum.conf という設定ファイルがあった場合、

swatch -c secure.conf -t secure

swatch -c yum.conf -t yum.log

が実行されます。

実行と自動起動設定

とりあえず実行

$ service swatch start

んで、自動起動するスクリプトとして実行するには、

起動スクリプトとして登録して。。。

$ chkconfig --add swatch

OS起動時にスクリプトが起動するように設定しておきます。

$ chkconfig swatch on

確認

$ chkconfig | grep swatch
swatch          0:off  1:off  2:on   3:on   4:on   5:on   6:off

設定

swatchの設定ファイルは監視するログファイルごとに、以下ディレクトリに作る

/etc/swatch/conf/

/etc/swatch/conf/secure.conf

##login
watchfor   /su(pam_unix)|session opened for user root/i
        echo
        pipe "mail -s 'TELNET_Session_Opend_Log (root)' sample@gmail.com"

##ftp
watchfor   /ftp.*session opened/i
        echo
        pipe "mail -s 'FTP_Session_Opend_Log' sample@gmail.com"

##ssh
watchfor   /sshd.*session opened/i
        echo
        pipe "mail -s SSH_Session_Opend_Log sample@gmail.com"

swatchの設定ファイルの書式は以下です。

watchfor /パターン/
    アクション

設定されたパターンが監視対象のログファイルに出力されると、アクションが実行されます。

ちなみにパターンはPerl正規表現で「/パターン/i」と i をつけることで大文字・小文字を無視することができます。

アクションには以下のように、いくらか種類があります。

アクション 概要
echo 検索パターンにマッチした行を標準出力に渡す。
mail 検索パターンにマッチした行をメール通知する。
pipe 検索パターンにマッチした行をパイプを通して外部コマンドに渡す。
threshold 連続してマッチした行の表示を指定回数になるまで表示しないようにする。
throttle 連続してマッチした行の検出を一定時間抑止する。

mailというメールで通知するためのアクションが用意されているのですが、例で挙げているsecure.confのアクションはpipeを使っており、ログ出力をmailコマンドに渡しています。

なぜこんな面倒をしているかというと、mailアクションでは内部的にsendmailが利用されていて、sendmailだと都合が悪いため(理由は割愛)mailコマンドを利用するようにしています。

参考

サーバのログを監視するSwatchの導入方法と使い方を解説 | OXY NOTES

Swatchによるリアルタイムログ監視システムを構築する【前編】 | 情シスハック

Linuxexpert - Swatchパターン&ルール記述例-Tips/Swatchパターン&ルール記述例-PukiWiki

ドットコマンドと直接スクリプトを実行した時の違い - Webエンジニアの技術メモ 〜PHP、SQL、Linuxなど〜

/var/lock/subsys/について - さよならインターネット

[swatch: ログ監視] Debian Linux Server

。。。今回初めて起動スクリプトを独自に書いたんで、とても勉強になりました。

半分コピペですが

【CentOS6】サードパーティリポジトリの追加

よく使われると思われるEPELとRPMforgeリポジトリの追加方法をメモしておく

EPELリポジトリの追加

# 電子署名の公開鍵取得
$ rpm --import http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6
# EPELリポジトリの取得
# -i: インストール
# -v (-iに対するオプション): 操作対象のパッケージ名
# -h (-iに対するオプション): 進捗状況(#によるインジケータ)の表示
$ rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm を取得中
準備中...                ########################################### [100%]
   1:epel-release           ########################################### [100%]

RPMforgeリポジトリの追加

# 電子署名の公開鍵取得
$ rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
# RPMforgeリポジトリの取得
# -i: インストール
# -v (-iに対するオプション): 操作対象のパッケージ名
# -h (-iに対するオプション): 進捗状況(#によるインジケータ)の表示
$ rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm を取得中
準備中...                ########################################### [100%]
   1:rpmforge-release           ########################################### [100%]

その他リポジトリについて

AdditionalResources/Repositories - CentOS Wiki

参考

@IT:rpmコマンドで警告が表示される

【CentOS6】ログファイルについて調べてみた

本気でサーバを勉強し始めたので、ログについて学ぶことにしました。

rsyslogについて

CentOS6ではrsyslogdというデーモンによって大概のログファイルが管理されています。

設定ファイルは /etc/rsyslog.conf にあり、この設定を変更することでログの主力先やログレベルなどを変更することができます。

この記事に書いてあることは、rsyslog.confがデフォルトの場合のお話であります。

/var/log/ 以下にあるファイル

rsyslogdはデフォルトの設定で /var/log/ 配下にログを吐きます。

また、rsyslogdを使わずに独自にログを吐き出すパッケージも大概このディレクト配下にログを吐くようになっていると思います。

audit/audit.log

カーネルに対して発行されるシステム・コールのすべてを監視するauditdのログ。
SELinuxポリシーに対する違反などを記録している。

anaconda.~

  • anaconda.ifcfg.log
  • anaconda.log
  • anaconda.program.log
  • anaconda.storage.log
  • anaconda.syslog
  • anaconda.xlog
  • anaconda.yum.log

RHELFedoraインストーラであるanacodaのログファイルたち。

ちなみに、インストールに関するログは上記のほかに、/root/install.log や /root/install.log.syslog がある。

/root/install.log

インストールされたソフトウェア・パッケージのリストが含まれる。

/root/install.log.syslog

インストールで生成されたsyslogメッセージが含まれる。

boot.log

サービスの起動/停止に関するログ。

btmp

ログイン(失敗)に関するログ。
バイナリ。
lastbコマンドを利用してみることができる。

clamav/clamd.log

clamavのウィルススキャン実行ログ。

ちなみにclamavディレクト及びその配下にあるファイルは、clamavによって管理されているので、インストールしていなかったり、clamavの設定次第では存在しないはずです。

clamav/freshclam.log

clamavのデータベース更新ログ。

cron

cronの実行ログ。

cron-yyyymmdd

ローテートされたcron。

dmesg

システム起動時からファイルシステムがマウントされる時点までの間にカーネルが出力したメッセージが記録されているファイル。

dmesg.old

ローテートされたdmesg。

dracut.log

initrdを作成するためのツールdracutのログ。

lastlog

ユーザごとの最後のログイン情報を記録している。
バイナリファイル。
lastlogコマンドで見ることができる。

maillog

メールサブシステムのログ。

maillog-yyyymmdd

ローテートされたmessagesログ。

messages

システムの汎用ログ。

messages-yyyymmdd

ローテートされたmeesagesログ。

secure

認証関連のログ。

secure-20160222

ローテートされたsecureログ。

spooler

uucp と news の crit 以上 が出力されるログ。

spooler-20160222

ローテートされたspooler。

tallylog

ユーザーごとのログイン失敗回数を記録する。

wtmp

ログインに関するログ。
バイナリ。
lastコマンドもしくはwhoコマンドでみる事ができる。

yum.log

yumによるパッケージ操作のログ。

参考

Audit について学んでみる - いますぐ実践! Linuxシステム管理 / Vol.222

Linux auditdでアクセス拒否されたファイルを探し出す|Engineering のまにまに

rsyslogd (syslogd) 設定

Linux、「/var/log/btmp」とはなんぞや?|マコトのおもちゃ箱 ~ぼへぼへ自営業者の技術メモ~

必読!ログファイルとディレクトリ | Think IT(シンクイット)

Anaconda/Logging - FedoraProject

2.3 インストール・ログ

initrd - Wikipedia

【Linux】ファイルシステムについて

SUID

Set User IDの略。

SUIDを付与されたファイルやディレクトリは誰が実行しても所有者の権限で実行される。

例えば、passwdコマンドは/etc/shadowに書き込みを行うが、/etc/shadowのパーミッションは以下のようになっている。

例)/etc/shadowファイルのパーミッション

$  ls -l /etc/shadow
----------. 1 root root 776  222 18:25 2016 /etc/shadow

このパーミッションだと、通常rootユーザ以外は書き込みができないはずであるが、passwdコマンドには以下のようにSUIDが与えられているので、一般ユーザが実行しても/etc/shadowに書き込みができる。

例)passwdコマンドのパーミッション

$ ls -l /usr/bin/passwd
-rwsr-xr-x. 1 root root 30768  222 20:48 2012 /usr/bin/passwd

SUIDの付与の仕方

chmod 4xxx file

もしくは、chmod u+s file でセットできる。

例)絶対モードでSUIDを付与

$ chmod 4777 fir
$ ls -l hoge
-rwsrwxrwx.   1 root root     0  223 20:39 2016 fir

ちなみにシェルスクリプトに設定しても効果はない模様。

一般ユーザにルート権限でシェルを実行する方法について − Linux Square − @IT

スクリプトのSUIDビットというのは危なっかしいので無視されるもののようです。

こんなのもあったけど、CentOS6ではできなかった

[Solaris] シェルスクリプトのオーナーをrootにしてsetuidビットをセットしたがroot権限で動作しない - Life with IT

ただし以下のようにスクリプトの最初にオプションを付けることによってこの制限を外すことができる。
Bourneシェルの場合
#!/bin/sh -p

SGID

Set Group IDの略。

SUIDが付与されている場合、所有者の権限で実行されるのに対し、こちらはグループの権限で実行される。

ディレクトリに付与するとそのディレクトリで作成されたファイルは全て同じグループとなるので、複数ユーザで共有するディレクトリに設定するとよい。

SGIDの付与の仕方

chmod 2xxx dir

もしくは、chmod g+s dir でセットできる。

例)絶対モードでSGIDを付与

$ chmod 2777 dir
$ ls -l hoge
drwxrwsrwx.   2 root root  4096  223 20:03 2016 dir

スティッキービット(Sticky bit)

スティッキービットを付与されたファイルやディレクトリは所有者以外が削除できなくなる。

通常はディレクトリに設定する。

スティッキービットの付与の仕方

chmod 1xxx file

もしくは、chmod o+t file でセットできる。

$ chmod 1777 dir
$ ls -l
drwxr-xr-t.   2 root root  4096  223 20:08 2016 dir

ちなみに、その他ユーザに実行権限を与えていないと大文字でフラグが立つ。

$ chmod 1006 testdir
$ ls -l testdir
d------rwT.   2 root root  4096  223 20:06 2016 testdir
# その他ユーザに実行権限さえあれば大文字にならない
$ chmod 1001 testdir
$ ls -l testdir
d--------t.   2 root root  4096  223 20:06 2016 testdir

これによって何が嬉しいのかよく分からないので、エロい人教えてください。

【余談】chmodについて

chmodの絶対モード(数字で設定するやつ)って覚えにくいなーとか思ってたんですが、最近になってあの数字が、パーミッションのビットを表してることを教えてもらった。

7(10)
-> 111(2)
=> rwx

6(10)
-> 110
=> rw-

4(10)
-> 100
=> r--

$ chmod 764 file
$ ls -l file
-rwxrw-r--.  1 root root     0  223 20:14 2016 file

なるほど、分かればシンボリックモード(u+x みたいなやつ)より扱いやすいですね。

てか、もっと早く教えてよ

えっ、自分で気づけって?

デフォルトのパーミッション

作成したファイルやディレクトリのデフォルトのパーミッションはumaskによって決まる。

ファイルは「666」から、ディレクトリは「777」からumaskを差し引いたものがデフォルトのパーミッションになる。

たとえば、umaskが0022の場合

ファイルのパーミッション
644 (= 666 - (0)022) => -rw-r--r--

ディレクトリのパーミッション
755 (= 777 - (0)022) => drwxr-xr-x

となる

umaskの確認

umaskコマンドを引数なしで実行すると確認できる。

また -Sオプションを付けるとシンボリックモードで確認できる。

$ umask 
0022
$ umask -S
u=rwx,g=rx,o=rx

umaskの設定

umaskコマンドに引数を与えて設定。

また、シンボリックモードでも設定可能。

$ umask 0002
# 確認
$ umask
0002
# シンボリックモードで設定
$ umask u=rwx,g=rx,o=rx
# 確認
$ umask
0022

ちなみに、umaskの設定はユーザ毎となる。

以下はそのうち更新する。。。

ACL

ファイルの暗号化(GnuPG

ファイルシステムの暗号化

【CentOS6】サーバをセキュアにするために〜その1〜

ブートローダの設定

更新中。。。

システムの自動更新

自動的にソフトウェアを更新してくれるyum-cronを入れておくとよい

yum-cronのインストール

$ yum install -y yum-cron
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package yum-cron.noarch 0:3.2.29-69.el6.centos will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 パッケージ      アーキテクチャ
                               バージョン                     リポジトリー
                                                                           容量
================================================================================
インストールしています:
 yum-cron        noarch        3.2.29-69.el6.centos           base         44 k

トランザクションの要約
================================================================================
インストール         1 パッケージ

総ダウンロード容量: 44 k
インストール済み容量: 28 k
パッケージをダウンロードしています:
yum-cron-3.2.29-69.el6.centos.noarch.rpm                 |  44 kB     00:00     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールしています  : yum-cron-3.2.29-69.el6.centos.noarch            1/1 
  Verifying               : yum-cron-3.2.29-69.el6.centos.noarch            1/1 

インストール:
  yum-cron.noarch 0:3.2.29-69.el6.centos                                        

完了しました!
$

yum-cronの設定

yum-cronの設定は以下ファイルに定義されている

/etc/sysconfig/yum-cron

# if MAILTO is set and the mail command is available, the mail command 
# is used to deliver yum output

# by default MAILTO is unset, so crond mails the output by itself
# example:  MAILTO=root
MAILTO=root

今回はデフォルトからMAILTOだけ変更する

yum-cronの起動と自動起動設定

# yum-cronの起動
$ service yum-cron start
夜間 yum 更新の有効化中:                                   [  OK  ]
# 確認
$ service yum-cron status
夜間 yum 更新が有効です。
# yum-cronの自動起動
$ chkconfig yum-cron on
# 確認
$ chkconfig | grep yum-cron
yum-cron        0:off  1:off  2:on   3:on   4:on   5:on   6:off

ユーザの管理

sudo

sudoの設定はvisudoコマンド(※)にて行う

※/etc/sudoersは直接編集できない

sudoersファイルの書式

ユーザ名 ホスト名=(実行ユーザ名) [NOPASSWORD:]コマンド

例)hogeユーザにshutdownコマンドを許可する

hoge ALL=(ALL) /sbin/shutdown

例)hogeユーザに全てのコマンド許可する

hoge ALL=(ALL) ALL

パスワード管理

更新中。。。

アンチウィルスソフトの導入

今回はオープンソースclam AntiVirus(以降clamavとします)を利用します。

インストール

インストールの前提としてEPELリポジトリを追加が必要です。

mktktmr.hatenablog.jp

インストール

$ yum -y install clamd
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: ftp.riken.jp
 * extras: ftp.riken.jp
 * rpmforge: ftp.kddilabs.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package clamd.x86_64 0:0.99-3.el6 will be インストール
--> 依存性の処理をしています: clamav = 0.99-3.el6 のパッケージ: clamd-0.99-3.el6.x86_64
--> 依存性の処理をしています: libclamav.so.7(CLAMAV_PUBLIC)(64bit) のパッケージ: clamd-0.99-3.el6.x86_64
--> 依存性の処理をしています: libclamav.so.7(CLAMAV_PRIVATE)(64bit) のパッケージ: clamd-0.99-3.el6.x86_64
--> 依存性の処理をしています: libclamav.so.7()(64bit) のパッケージ: clamd-0.99-3.el6.x86_64
--> トランザクションの確認を実行しています。
---> Package clamav.x86_64 0:0.99-3.el6 will be インストール
--> 依存性の処理をしています: clamav-db = 0.99-3.el6 のパッケージ: clamav-0.99-3.el6.x86_64
--> トランザクションの確認を実行しています。
---> Package clamav-db.x86_64 0:0.99-3.el6 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

==========================================================================================================================================================================
 パッケージ                                アーキテクチャ                         バージョン                                   リポジトリー                          容量
==========================================================================================================================================================================
インストールしています:
 clamd                                     x86_64                                 0.99-3.el6                                   epel                                 165 k
依存性関連でのインストールをします。:
 clamav                                    x86_64                                 0.99-3.el6                                   epel                                 1.4 M
 clamav-db                                 x86_64                                 0.99-3.el6                                   epel                                 102 M

トランザクションの要約
==========================================================================================================================================================================
インストール         3 パッケージ

総ダウンロード容量: 104 M
インストール済み容量: 106 M
パッケージをダウンロードしています:
(1/3): clamav-0.99-3.el6.x86_64.rpm                                                                                                                | 1.4 MB     00:01     
(2/3): clamav-db-0.99-3.el6.x86_64.rpm                                                                                                                                         | 102 MB     00:30     
(3/3): clamd-0.99-3.el6.x86_64.rpm                                                                                                                                             | 165 kB     00:00     
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
合計                                                                                                                                                                  3.1 MB/s | 104 MB     00:33     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールしています  : clamav-db-0.99-3.el6.x86_64                                                                                                                                           1/3 
  インストールしています  : clamav-0.99-3.el6.x86_64                                                                                                                                              2/3 
  インストールしています  : clamd-0.99-3.el6.x86_64                                                                                                                                               3/3 
  Verifying               : clamav-db-0.99-3.el6.x86_64                                                                                                                                           1/3 
  Verifying               : clamav-0.99-3.el6.x86_64                                                                                                                                              2/3 
  Verifying               : clamd-0.99-3.el6.x86_64                                                                                                                                               3/3 

インストール:
  clamd.x86_64 0:0.99-3.el6                                                                                                                                                                           

依存性関連をインストールしました:
  clamav.x86_64 0:0.99-3.el6                                                                       clamav-db.x86_64 0:0.99-3.el6                                                                      

完了しました!
# 確認
$ clamscan --version
ClamAV 0.99/21397/Mon Feb 22 06:37:19 2016

ウィルスデータベースの更新

手動で更新を行う場合は「freshclam」を叩く。

$ freshclam 
ClamAV update process started at Mon Feb 22 13:13:32 2016
main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)
Downloading daily-21397.cdiff [100%]
daily.cld updated (version: 21397, sigs: 1850960, f-level: 63, builder: neo)
bytecode.cvd is up to date (version: 271, sigs: 47, f-level: 63, builder: anvilleg)
Database updated (4275232 signatures) from database.clamav.net (IP: 203.178.137.175)

ただ、ウィルスデータベースの更新は、clamavをインストールした際、定期実行されるようになっているので、基本的に手動で行う必要はないです。

$ ls -ltr /etc/cron.daily/ 
#〜〜〜〜〜〜〜〜〜〜(省略)〜〜〜〜〜〜〜〜〜〜〜
-rwxr-xr-x. 1 root root  396 128 05:31 2015 freshclam

デーモンの設定

以下に設定ファイル

/etc/clamd.conf

変更箇所抜粋

# /etc/clamd.conf.defaultは変更前のclamd.conf
$ diff /etc/clamd.conf.default /etc/clamd.conf
165,166c165,168
< #ExcludePath ^/proc/
< #ExcludePath ^/sys/
---
> # 以下ディレクトリ配下のファイルにはアクセスできずエラーが大量に発生するためスキャン対象外とする
> ExcludePath ^/proc/
> ExcludePath ^/sys/
195c197,199
< User clam
---
> # 作業ユーザで実行するとパーミッション絡みで面倒なので妥協してrootで実行
> User root
290c294,296
< DetectBrokenExecutables yes
---
> # 破損ファイルの検出は誤検出が多いそうなので切っておく
> DetectBrokenExecutables no

デーモンの起動

$ service clamd start
Starting Clam AntiVirus Daemon:                            [  OK  ]
# 自動起動も有効にしておく
$ chkconfig clamd on
$ chkconfig | grep clamd
clamd           0:off  1:off  2:on   3:on   4:on   5:on   6:off

スキャン実行

感染したファイルがない場合

$ clamdscan /
/: OK

----------- SCAN SUMMARY -----------
Infected files: 0
Time: 215.179 sec (3 m 35 s)

以下サイトからテスト用擬似ウィルスファイルをダウンロードできるので、テストしてみる

$ curl -L -O http://www.eicar.org/download/eicar.com
# 確認
$ ls -l /home/hoge/eicar.com 
-rw-r--r--. 1 root root 68  222 17:25 2016 /home/hoeg/eicar.com
eicar.com

感染したファイルがある場合

$ clamdscan /
/home/hoge/eicar.com: Eicar-Test-Signature FOUND

----------- SCAN SUMMARY -----------
Infected files: 1
Time: 12.276 sec (0 m 12 s)

なお、clamdscanは前回のスキャンから変更のあったファイルだけ差分でスキャンするため、2回目のスキャン時間は大幅に短縮される

見つかった感染ファイルを自動で削除する場合

# --removeオプションを付けると感染ファイルが見つかった際に自動的に削除してくれる
$ clamdscan --remove /
/home/hoge/eicar.com: Eicar-Test-Signature FOUND
/home/hoge/eicar.com: Removed.

----------- SCAN SUMMARY -----------
Infected files: 1
Time: 12.318 sec (0 m 12 s)
# 確認
$  ls -l /home/hoge/eicar.com 
ls: cannot access /home/hoge/eicar.com: そのようなファイルやディレクトリはありません

定期実行

ウィルススキャンを定期的に実行し、感染ファイルが見つかった場合メールを飛ばす簡単なスクリプトを作成します。

前提としてmailxでメールを飛ばせるものとします。

mailx参考:mktktmr.hatenablog.jp

ウィルススキャン実行スクリプト

clamdscan.sh

#!/bin/sh

MAILTO='hoge@sample.com'
MAIL_SUBJECT='Virus is detected'

SUMMARY=`clamdscan --stdout /`

if [ $? -eq 1 ]; then
  echo "$SUMMARY" | mail -s "$MAIL_SUBJECT" "$MAILTO"
fi

exit 0

実行権限つけて。。。

$ chmod 700 clamdscan.sh

適当な場所に移動

$ mv clamdscan.sh /root/bin/

cronで定期実行するようにする

$ crontab -e

毎週月曜日の3時に実行

0 3 * * 1 /root/bin/clamdscan.sh > /dev/null 2>&1

参考

ClamAV(Clam AntiVirus)の設定方法

Clam Antivirusに関するメモ

Stray Penguin - Linux Memo (Sudo)

【CentOS6】mailxでメールを送信

環境

サーバOS: CentOS 6.7

mailxのインストール

$ yum -y install mailx
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: mirror.premi.st
 * extras: ftp.riken.jp
 * rpmforge: ftp.riken.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package mailx.x86_64 0:12.4-8.el6_6 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

==============================================================================================================================================================
 パッケージ                          アーキテクチャ                       バージョン                                 リポジトリー                        容量
==============================================================================================================================================================
インストールしています:
 mailx                               x86_64                               12.4-8.el6_6                               base                               235 k

トランザクションの要約
==============================================================================================================================================================
インストール         1 パッケージ

総ダウンロード容量: 235 k
インストール済み容量: 452 k
パッケージをダウンロードしています:
mailx-12.4-8.el6_6.x86_64.rpm                                                                                                          | 235 kB     00:00     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールしています  : mailx-12.4-8.el6_6.x86_64                                                                                                     1/1 
  Verifying               : mailx-12.4-8.el6_6.x86_64                                                                                                     1/1 

インストール:
  mailx.x86_64 0:12.4-8.el6_6                                                                                                                                 

完了しました!

smtpサーバを建てない場合(gmailsmtpサーバを利用)

msmtpをインストールする。

$  yum -y install msmtp
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: ftp.riken.jp
 * extras: ftp.riken.jp
 * rpmforge: ftp.kddilabs.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package msmtp.x86_64 0:1.4.32-1.el6 will be インストール
--> 依存性の処理をしています: libgsasl.so.7(LIBGSASL_1.1)(64bit) のパッケージ: msmtp-1.4.32-1.el6.x86_64
--> 依存性の処理をしています: libgnutls.so.26(GNUTLS_1_4)(64bit) のパッケージ: msmtp-1.4.32-1.el6.x86_64
--> 依存性の処理をしています: libgsasl.so.7()(64bit) のパッケージ: msmtp-1.4.32-1.el6.x86_64
--> 依存性の処理をしています: libgnutls.so.26()(64bit) のパッケージ: msmtp-1.4.32-1.el6.x86_64
--> 依存性の処理をしています: libgnome-keyring.so.0()(64bit) のパッケージ: msmtp-1.4.32-1.el6.x86_64
--> トランザクションの確認を実行しています。
---> Package gnome-keyring.x86_64 0:2.28.2-8.el6_3 will be インストール
--> 依存性の処理をしています: GConf2 のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: GConf2 のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libpangoft2-1.0.so.0()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libpangocairo-1.0.so.0()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libpango-1.0.so.0()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libgtk-x11-2.0.so.0()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libgdk_pixbuf-2.0.so.0()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libgdk-x11-2.0.so.0()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libgconf-2.so.4()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libfreetype.so.6()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libfontconfig.so.1()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libcairo.so.2()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
--> 依存性の処理をしています: libatk-1.0.so.0()(64bit) のパッケージ: gnome-keyring-2.28.2-8.el6_3.x86_64
---> Package gnutls.x86_64 0:2.8.5-19.el6_7 will be インストール
---> Package libgsasl.x86_64 0:1.4.0-4.el6 will be インストール
--> 依存性の処理をしています: libntlm.so.0()(64bit) のパッケージ: libgsasl-1.4.0-4.el6.x86_64
--> トランザクションの確認を実行しています。
---> Package GConf2.x86_64 0:2.28.0-6.el6 will be インストール
--> 依存性の処理をしています: sgml-common のパッケージ: GConf2-2.28.0-6.el6.x86_64
--> 依存性の処理をしています: dbus のパッケージ: GConf2-2.28.0-6.el6.x86_64
--> 依存性の処理をしています: libpolkit-gobject-1.so.0()(64bit) のパッケージ: GConf2-2.28.0-6.el6.x86_64
--> 依存性の処理をしています: libORBit-2.so.0()(64bit) のパッケージ: GConf2-2.28.0-6.el6.x86_64
---> Package atk.x86_64 0:1.30.0-1.el6 will be インストール
---> Package cairo.x86_64 0:1.8.8-6.el6_6 will be インストール
--> 依存性の処理をしています: libpng12.so.0(PNG12_0)(64bit) のパッケージ: cairo-1.8.8-6.el6_6.x86_64
--> 依存性の処理をしています: libpng12.so.0()(64bit) のパッケージ: cairo-1.8.8-6.el6_6.x86_64
--> 依存性の処理をしています: libpixman-1.so.0()(64bit) のパッケージ: cairo-1.8.8-6.el6_6.x86_64
--> 依存性の処理をしています: libXrender.so.1()(64bit) のパッケージ: cairo-1.8.8-6.el6_6.x86_64
--> 依存性の処理をしています: libX11.so.6()(64bit) のパッケージ: cairo-1.8.8-6.el6_6.x86_64
---> Package fontconfig.x86_64 0:2.8.0-5.el6 will be インストール
---> Package freetype.x86_64 0:2.3.11-15.el6_6.1 will be インストール
---> Package gdk-pixbuf2.x86_64 0:2.24.1-6.el6_7 will be インストール
--> 依存性の処理をしています: libjpeg.so.62(LIBJPEG_6.2)(64bit) のパッケージ: gdk-pixbuf2-2.24.1-6.el6_7.x86_64
--> 依存性の処理をしています: libtiff.so.3()(64bit) のパッケージ: gdk-pixbuf2-2.24.1-6.el6_7.x86_64
--> 依存性の処理をしています: libjpeg.so.62()(64bit) のパッケージ: gdk-pixbuf2-2.24.1-6.el6_7.x86_64
--> 依存性の処理をしています: libjasper.so.1()(64bit) のパッケージ: gdk-pixbuf2-2.24.1-6.el6_7.x86_64
---> Package gtk2.x86_64 0:2.24.23-6.el6 will be インストール
--> 依存性の処理をしています: libXrandr >= 1.2.99.4-2 のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: hicolor-icon-theme のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libcups.so.2()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXrandr.so.2()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXinerama.so.1()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXi.so.6()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXfixes.so.3()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXext.so.6()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXdamage.so.1()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXcursor.so.1()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
--> 依存性の処理をしています: libXcomposite.so.1()(64bit) のパッケージ: gtk2-2.24.23-6.el6.x86_64
---> Package libntlm.x86_64 0:1.0-3.el6 will be インストール
---> Package pango.x86_64 0:1.28.1-10.el6 will be インストール
--> 依存性の処理をしています: libthai >= 0.1.9 のパッケージ: pango-1.28.1-10.el6.x86_64
--> 依存性の処理をしています: libthai.so.0(LIBTHAI_0.1)(64bit) のパッケージ: pango-1.28.1-10.el6.x86_64
--> 依存性の処理をしています: libthai.so.0()(64bit) のパッケージ: pango-1.28.1-10.el6.x86_64
--> 依存性の処理をしています: libXft.so.2()(64bit) のパッケージ: pango-1.28.1-10.el6.x86_64
--> トランザクションの確認を実行しています。
---> Package ORBit2.x86_64 0:2.14.17-5.el6 will be インストール
--> 依存性の処理をしています: libIDL-2.so.0()(64bit) のパッケージ: ORBit2-2.14.17-5.el6.x86_64
---> Package cups-libs.x86_64 1:1.4.2-72.el6 will be インストール
--> 依存性の処理をしています: libavahi-common.so.3()(64bit) のパッケージ: 1:cups-libs-1.4.2-72.el6.x86_64
--> 依存性の処理をしています: libavahi-client.so.3()(64bit) のパッケージ: 1:cups-libs-1.4.2-72.el6.x86_64
---> Package dbus.x86_64 1:1.2.24-8.el6_6 will be インストール
---> Package hicolor-icon-theme.noarch 0:0.11-1.1.el6 will be インストール
---> Package jasper-libs.x86_64 0:1.900.1-16.el6_6.3 will be インストール
---> Package libX11.x86_64 0:1.6.0-6.el6 will be インストール
--> 依存性の処理をしています: libX11-common = 1.6.0-6.el6 のパッケージ: libX11-1.6.0-6.el6.x86_64
--> 依存性の処理をしています: libxcb.so.1()(64bit) のパッケージ: libX11-1.6.0-6.el6.x86_64
---> Package libXcomposite.x86_64 0:0.4.3-4.el6 will be インストール
---> Package libXcursor.x86_64 0:1.1.14-2.1.el6 will be インストール
---> Package libXdamage.x86_64 0:1.1.3-4.el6 will be インストール
---> Package libXext.x86_64 0:1.3.2-2.1.el6 will be インストール
---> Package libXfixes.x86_64 0:5.0.1-2.1.el6 will be インストール
---> Package libXft.x86_64 0:2.3.1-2.el6 will be インストール
---> Package libXi.x86_64 0:1.7.2-2.2.el6 will be インストール
---> Package libXinerama.x86_64 0:1.1.3-2.1.el6 will be インストール
---> Package libXrandr.x86_64 0:1.4.1-2.1.el6 will be インストール
---> Package libXrender.x86_64 0:0.9.8-2.1.el6 will be インストール
---> Package libjpeg-turbo.x86_64 0:1.2.1-3.el6_5 will be インストール
---> Package libpng.x86_64 2:1.2.49-2.el6_7 will be インストール
---> Package libthai.x86_64 0:0.1.12-3.el6 will be インストール
---> Package libtiff.x86_64 0:3.9.4-10.el6_5 will be インストール
---> Package pixman.x86_64 0:0.32.4-4.el6 will be インストール
---> Package polkit.x86_64 0:0.96-11.el6 will be インストール
--> 依存性の処理をしています: ConsoleKit のパッケージ: polkit-0.96-11.el6.x86_64
--> 依存性の処理をしています: libeggdbus-1.so.0()(64bit) のパッケージ: polkit-0.96-11.el6.x86_64
---> Package sgml-common.noarch 0:0.6.3-33.el6 will be インストール
--> トランザクションの確認を実行しています。
---> Package ConsoleKit.x86_64 0:0.4.1-3.el6 will be インストール
--> 依存性の処理をしています: libck-connector.so.0()(64bit) のパッケージ: ConsoleKit-0.4.1-3.el6.x86_64
---> Package avahi-libs.x86_64 0:0.6.25-15.el6 will be インストール
---> Package eggdbus.x86_64 0:0.6-3.el6 will be インストール
---> Package libIDL.x86_64 0:0.8.13-2.1.el6 will be インストール
---> Package libX11-common.noarch 0:1.6.0-6.el6 will be インストール
---> Package libxcb.x86_64 0:1.9.1-3.el6 will be インストール
--> 依存性の処理をしています: libXau.so.6()(64bit) のパッケージ: libxcb-1.9.1-3.el6.x86_64
--> トランザクションの確認を実行しています。
---> Package ConsoleKit-libs.x86_64 0:0.4.1-3.el6 will be インストール
---> Package libXau.x86_64 0:1.0.6-4.el6 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

==============================================================================================================================================================
 パッケージ                                 アーキテクチャ                 バージョン                                   リポジトリー                     容量
==============================================================================================================================================================
インストールしています:
 msmtp                                      x86_64                         1.4.32-1.el6                                 epel                            118 k
依存性関連でのインストールをします。:
 ConsoleKit                                 x86_64                         0.4.1-3.el6                                  base                             82 k
 ConsoleKit-libs                            x86_64                         0.4.1-3.el6                                  base                             17 k
 GConf2                                     x86_64                         2.28.0-6.el6                                 base                            964 k
 ORBit2                                     x86_64                         2.14.17-5.el6                                base                            168 k
 atk                                        x86_64                         1.30.0-1.el6                                 base                            195 k
 avahi-libs                                 x86_64                         0.6.25-15.el6                                base                             55 k
 cairo                                      x86_64                         1.8.8-6.el6_6                                base                            309 k
 cups-libs                                  x86_64                         1:1.4.2-72.el6                               base                            321 k
 dbus                                       x86_64                         1:1.2.24-8.el6_6                             base                            207 k
 eggdbus                                    x86_64                         0.6-3.el6                                    base                             91 k
 fontconfig                                 x86_64                         2.8.0-5.el6                                  base                            186 k
 freetype                                   x86_64                         2.3.11-15.el6_6.1                            base                            361 k
 gdk-pixbuf2                                x86_64                         2.24.1-6.el6_7                               updates                         501 k
 gnome-keyring                              x86_64                         2.28.2-8.el6_3                               base                            811 k
 gnutls                                     x86_64                         2.8.5-19.el6_7                               updates                         347 k
 gtk2                                       x86_64                         2.24.23-6.el6                                base                            3.2 M
 hicolor-icon-theme                         noarch                         0.11-1.1.el6                                 base                             40 k
 jasper-libs                                x86_64                         1.900.1-16.el6_6.3                           base                            137 k
 libIDL                                     x86_64                         0.8.13-2.1.el6                               base                             83 k
 libX11                                     x86_64                         1.6.0-6.el6                                  base                            586 k
 libX11-common                              noarch                         1.6.0-6.el6                                  base                            192 k
 libXau                                     x86_64                         1.0.6-4.el6                                  base                             24 k
 libXcomposite                              x86_64                         0.4.3-4.el6                                  base                             20 k
 libXcursor                                 x86_64                         1.1.14-2.1.el6                               base                             28 k
 libXdamage                                 x86_64                         1.1.3-4.el6                                  base                             18 k
 libXext                                    x86_64                         1.3.2-2.1.el6                                base                             35 k
 libXfixes                                  x86_64                         5.0.1-2.1.el6                                base                             17 k
 libXft                                     x86_64                         2.3.1-2.el6                                  base                             55 k
 libXi                                      x86_64                         1.7.2-2.2.el6                                base                             37 k
 libXinerama                                x86_64                         1.1.3-2.1.el6                                base                             13 k
 libXrandr                                  x86_64                         1.4.1-2.1.el6                                base                             23 k
 libXrender                                 x86_64                         0.9.8-2.1.el6                                base                             24 k
 libgsasl                                   x86_64                         1.4.0-4.el6                                  epel                            113 k
 libjpeg-turbo                              x86_64                         1.2.1-3.el6_5                                base                            174 k
 libntlm                                    x86_64                         1.0-3.el6                                    base                             42 k
 libpng                                     x86_64                         2:1.2.49-2.el6_7                             updates                         182 k
 libthai                                    x86_64                         0.1.12-3.el6                                 base                            183 k
 libtiff                                    x86_64                         3.9.4-10.el6_5                               base                            343 k
 libxcb                                     x86_64                         1.9.1-3.el6                                  base                            110 k
 pango                                      x86_64                         1.28.1-10.el6                                base                            351 k
 pixman                                     x86_64                         0.32.4-4.el6                                 base                            243 k
 polkit                                     x86_64                         0.96-11.el6                                  base                            162 k
 sgml-common                                noarch                         0.6.3-33.el6                                 base                             43 k

トランザクションの要約
==============================================================================================================================================================
インストール        44 パッケージ

総ダウンロード容量: 11 M
インストール済み容量: 41 M
パッケージをダウンロードしています:
(1/44): ConsoleKit-0.4.1-3.el6.x86_64.rpm                                                                                              |  82 kB     00:00     
(2/44): ConsoleKit-libs-0.4.1-3.el6.x86_64.rpm                                                                                         |  17 kB     00:00     
(3/44): GConf2-2.28.0-6.el6.x86_64.rpm                                                                                                 | 964 kB     00:00     
(4/44): ORBit2-2.14.17-5.el6.x86_64.rpm                                                                                                | 168 kB     00:00     
(5/44): atk-1.30.0-1.el6.x86_64.rpm                                                                                                    | 195 kB     00:00     
(6/44): avahi-libs-0.6.25-15.el6.x86_64.rpm                                                                                            |  55 kB     00:00     
(7/44): cairo-1.8.8-6.el6_6.x86_64.rpm                                                                                                 | 309 kB     00:00     
(8/44): cups-libs-1.4.2-72.el6.x86_64.rpm                                                                                              | 321 kB     00:00     
(9/44): dbus-1.2.24-8.el6_6.x86_64.rpm                                                                                                 | 207 kB     00:00     
(10/44): eggdbus-0.6-3.el6.x86_64.rpm                                                                                                  |  91 kB     00:00     
(11/44): fontconfig-2.8.0-5.el6.x86_64.rpm                                                                                             | 186 kB     00:00     
(12/44): freetype-2.3.11-15.el6_6.1.x86_64.rpm                                                                                         | 361 kB     00:00     
(13/44): gdk-pixbuf2-2.24.1-6.el6_7.x86_64.rpm                                                                                         | 501 kB     00:00     
(14/44): gnome-keyring-2.28.2-8.el6_3.x86_64.rpm                                                                                       | 811 kB     00:00     
(15/44): gnutls-2.8.5-19.el6_7.x86_64.rpm                                                                                              | 347 kB     00:00     
(16/44): gtk2-2.24.23-6.el6.x86_64.rpm                                                                                                 | 3.2 MB     00:01     
(17/44): hicolor-icon-theme-0.11-1.1.el6.noarch.rpm                                                                                    |  40 kB     00:00     
(18/44): jasper-libs-1.900.1-16.el6_6.3.x86_64.rpm                                                                                     | 137 kB     00:00     
(19/44): libIDL-0.8.13-2.1.el6.x86_64.rpm                                                                                              |  83 kB     00:00     
(20/44): libX11-1.6.0-6.el6.x86_64.rpm                                                                                                 | 586 kB     00:00     
(21/44): libX11-common-1.6.0-6.el6.noarch.rpm                                                                                          | 192 kB     00:00     
(22/44): libXau-1.0.6-4.el6.x86_64.rpm                                                                                                 |  24 kB     00:00     
(23/44): libXcomposite-0.4.3-4.el6.x86_64.rpm                                                                                          |  20 kB     00:00     
(24/44): libXcursor-1.1.14-2.1.el6.x86_64.rpm                                                                                          |  28 kB     00:00     
(25/44): libXdamage-1.1.3-4.el6.x86_64.rpm                                                                                             |  18 kB     00:00     
(26/44): libXext-1.3.2-2.1.el6.x86_64.rpm                                                                                              |  35 kB     00:00     
(27/44): libXfixes-5.0.1-2.1.el6.x86_64.rpm                                                                                            |  17 kB     00:00     
(28/44): libXft-2.3.1-2.el6.x86_64.rpm                                                                                                 |  55 kB     00:00     
(29/44): libXi-1.7.2-2.2.el6.x86_64.rpm                                                                                                |  37 kB     00:00     
(30/44): libXinerama-1.1.3-2.1.el6.x86_64.rpm                                                                                          |  13 kB     00:00     
(31/44): libXrandr-1.4.1-2.1.el6.x86_64.rpm                                                                                            |  23 kB     00:00     
(32/44): libXrender-0.9.8-2.1.el6.x86_64.rpm                                                                                           |  24 kB     00:00     
(33/44): libgsasl-1.4.0-4.el6.x86_64.rpm                                                                                               | 113 kB     00:00     
(34/44): libjpeg-turbo-1.2.1-3.el6_5.x86_64.rpm                                                                                        | 174 kB     00:00     
(35/44): libntlm-1.0-3.el6.x86_64.rpm                                                                                                  |  42 kB     00:00     
(36/44): libpng-1.2.49-2.el6_7.x86_64.rpm                                                                                              | 182 kB     00:00     
(37/44): libthai-0.1.12-3.el6.x86_64.rpm                                                                                               | 183 kB     00:00     
(38/44): libtiff-3.9.4-10.el6_5.x86_64.rpm                                                                                             | 343 kB     00:00     
(39/44): libxcb-1.9.1-3.el6.x86_64.rpm                                                                                                 | 110 kB     00:00     
(40/44): msmtp-1.4.32-1.el6.x86_64.rpm                                                                                                 | 118 kB     00:00     
(41/44): pango-1.28.1-10.el6.x86_64.rpm                                                                                                | 351 kB     00:00     
(42/44): pixman-0.32.4-4.el6.x86_64.rpm                                                                                                | 243 kB     00:00     
(43/44): polkit-0.96-11.el6.x86_64.rpm                                                                                                 | 162 kB     00:00     
(44/44): sgml-common-0.6.3-33.el6.noarch.rpm                                                                                           |  43 kB     00:00     
--------------------------------------------------------------------------------------------------------------------------------------------------------------
合計                                                                                                                          915 kB/s |  11 MB     00:12     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールしています  : freetype-2.3.11-15.el6_6.1.x86_64                                                                                            1/44 
  インストールしています  : fontconfig-2.8.0-5.el6.x86_64                                                                                                2/44 
  インストールしています  : libjpeg-turbo-1.2.1-3.el6_5.x86_64                                                                                           3/44 
  インストールしています  : 1:dbus-1.2.24-8.el6_6.x86_64                                                                                                 4/44 
  インストールしています  : 2:libpng-1.2.49-2.el6_7.x86_64                                                                                               5/44 
  インストールしています  : libtiff-3.9.4-10.el6_5.x86_64                                                                                                6/44 
  インストールしています  : atk-1.30.0-1.el6.x86_64                                                                                                      7/44 
  インストールしています  : gnutls-2.8.5-19.el6_7.x86_64                                                                                                 8/44 
  インストールしています  : ConsoleKit-libs-0.4.1-3.el6.x86_64                                                                                           9/44 
  インストールしています  : jasper-libs-1.900.1-16.el6_6.3.x86_64                                                                                       10/44 
  インストールしています  : pixman-0.32.4-4.el6.x86_64                                                                                                  11/44 
  インストールしています  : libthai-0.1.12-3.el6.x86_64                                                                                                 12/44 
  インストールしています  : libXau-1.0.6-4.el6.x86_64                                                                                                   13/44 
  インストールしています  : libxcb-1.9.1-3.el6.x86_64                                                                                                   14/44 
  インストールしています  : eggdbus-0.6-3.el6.x86_64                                                                                                    15/44 
  インストールしています  : polkit-0.96-11.el6.x86_64                                                                                                   16/44 
  インストールしています  : ConsoleKit-0.4.1-3.el6.x86_64                                                                                               17/44 
  インストールしています  : libX11-common-1.6.0-6.el6.noarch                                                                                            18/44 
  インストールしています  : libX11-1.6.0-6.el6.x86_64                                                                                                   19/44 
  インストールしています  : libXrender-0.9.8-2.1.el6.x86_64                                                                                             20/44 
  インストールしています  : libXext-1.3.2-2.1.el6.x86_64                                                                                                21/44 
  インストールしています  : cairo-1.8.8-6.el6_6.x86_64                                                                                                  22/44 
  インストールしています  : libXfixes-5.0.1-2.1.el6.x86_64                                                                                              23/44 
  インストールしています  : gdk-pixbuf2-2.24.1-6.el6_7.x86_64                                                                                           24/44 
  インストールしています  : libXdamage-1.1.3-4.el6.x86_64                                                                                               25/44 
  インストールしています  : libXcursor-1.1.14-2.1.el6.x86_64                                                                                            26/44 
  インストールしています  : libXinerama-1.1.3-2.1.el6.x86_64                                                                                            27/44 
  インストールしています  : libXrandr-1.4.1-2.1.el6.x86_64                                                                                              28/44 
  インストールしています  : libXi-1.7.2-2.2.el6.x86_64                                                                                                  29/44 
  インストールしています  : libXft-2.3.1-2.el6.x86_64                                                                                                   30/44 
  インストールしています  : pango-1.28.1-10.el6.x86_64                                                                                                  31/44 
  インストールしています  : libXcomposite-0.4.3-4.el6.x86_64                                                                                            32/44 
  インストールしています  : avahi-libs-0.6.25-15.el6.x86_64                                                                                             33/44 
  インストールしています  : 1:cups-libs-1.4.2-72.el6.x86_64                                                                                             34/44 
  インストールしています  : libIDL-0.8.13-2.1.el6.x86_64                                                                                                35/44 
  インストールしています  : ORBit2-2.14.17-5.el6.x86_64                                                                                                 36/44 
  インストールしています  : hicolor-icon-theme-0.11-1.1.el6.noarch                                                                                      37/44 
  インストールしています  : gtk2-2.24.23-6.el6.x86_64                                                                                                   38/44 
  インストールしています  : libntlm-1.0-3.el6.x86_64                                                                                                    39/44 
  インストールしています  : libgsasl-1.4.0-4.el6.x86_64                                                                                                 40/44 
  インストールしています  : sgml-common-0.6.3-33.el6.noarch                                                                                             41/44 
  インストールしています  : GConf2-2.28.0-6.el6.x86_64                                                                                                  42/44 
  インストールしています  : gnome-keyring-2.28.2-8.el6_3.x86_64                                                                                         43/44 
  インストールしています  : msmtp-1.4.32-1.el6.x86_64                                                                                                   44/44 
  Verifying               : cairo-1.8.8-6.el6_6.x86_64                                                                                                   1/44 
  Verifying               : libXrender-0.9.8-2.1.el6.x86_64                                                                                              2/44 
  Verifying               : sgml-common-0.6.3-33.el6.noarch                                                                                              3/44 
  Verifying               : libXdamage-1.1.3-4.el6.x86_64                                                                                                4/44 
  Verifying               : jasper-libs-1.900.1-16.el6_6.3.x86_64                                                                                        5/44 
  Verifying               : libxcb-1.9.1-3.el6.x86_64                                                                                                    6/44 
  Verifying               : fontconfig-2.8.0-5.el6.x86_64                                                                                                7/44 
  Verifying               : libtiff-3.9.4-10.el6_5.x86_64                                                                                                8/44 
  Verifying               : ConsoleKit-0.4.1-3.el6.x86_64                                                                                                9/44 
  Verifying               : GConf2-2.28.0-6.el6.x86_64                                                                                                  10/44 
  Verifying               : pango-1.28.1-10.el6.x86_64                                                                                                  11/44 
  Verifying               : polkit-0.96-11.el6.x86_64                                                                                                   12/44 
  Verifying               : 2:libpng-1.2.49-2.el6_7.x86_64                                                                                              13/44 
  Verifying               : libgsasl-1.4.0-4.el6.x86_64                                                                                                 14/44 
  Verifying               : libntlm-1.0-3.el6.x86_64                                                                                                    15/44 
  Verifying               : gnome-keyring-2.28.2-8.el6_3.x86_64                                                                                         16/44 
  Verifying               : hicolor-icon-theme-0.11-1.1.el6.noarch                                                                                      17/44 
  Verifying               : libIDL-0.8.13-2.1.el6.x86_64                                                                                                18/44 
  Verifying               : libX11-1.6.0-6.el6.x86_64                                                                                                   19/44 
  Verifying               : ORBit2-2.14.17-5.el6.x86_64                                                                                                 20/44 
  Verifying               : freetype-2.3.11-15.el6_6.1.x86_64                                                                                           21/44 
  Verifying               : 1:dbus-1.2.24-8.el6_6.x86_64                                                                                                22/44 
  Verifying               : libXft-2.3.1-2.el6.x86_64                                                                                                   23/44 
  Verifying               : gnutls-2.8.5-19.el6_7.x86_64                                                                                                24/44 
  Verifying               : avahi-libs-0.6.25-15.el6.x86_64                                                                                             25/44 
  Verifying               : gdk-pixbuf2-2.24.1-6.el6_7.x86_64                                                                                           26/44 
  Verifying               : ConsoleKit-libs-0.4.1-3.el6.x86_64                                                                                          27/44 
  Verifying               : gtk2-2.24.23-6.el6.x86_64                                                                                                   28/44 
  Verifying               : libXinerama-1.1.3-2.1.el6.x86_64                                                                                            29/44 
  Verifying               : msmtp-1.4.32-1.el6.x86_64                                                                                                   30/44 
  Verifying               : libX11-common-1.6.0-6.el6.noarch                                                                                            31/44 
  Verifying               : eggdbus-0.6-3.el6.x86_64                                                                                                    32/44 
  Verifying               : libXext-1.3.2-2.1.el6.x86_64                                                                                                33/44 
  Verifying               : libjpeg-turbo-1.2.1-3.el6_5.x86_64                                                                                          34/44 
  Verifying               : libXcursor-1.1.14-2.1.el6.x86_64                                                                                            35/44 
  Verifying               : libXrandr-1.4.1-2.1.el6.x86_64                                                                                              36/44 
  Verifying               : libXi-1.7.2-2.2.el6.x86_64                                                                                                  37/44 
  Verifying               : 1:cups-libs-1.4.2-72.el6.x86_64                                                                                             38/44 
  Verifying               : libXau-1.0.6-4.el6.x86_64                                                                                                   39/44 
  Verifying               : libthai-0.1.12-3.el6.x86_64                                                                                                 40/44 
  Verifying               : pixman-0.32.4-4.el6.x86_64                                                                                                  41/44 
  Verifying               : atk-1.30.0-1.el6.x86_64                                                                                                     42/44 
  Verifying               : libXcomposite-0.4.3-4.el6.x86_64                                                                                            43/44 
  Verifying               : libXfixes-5.0.1-2.1.el6.x86_64                                                                                              44/44 

インストール:
  msmtp.x86_64 0:1.4.32-1.el6                                                                                                                                 

依存性関連をインストールしました:
  ConsoleKit.x86_64 0:0.4.1-3.el6           ConsoleKit-libs.x86_64 0:0.4.1-3.el6     GConf2.x86_64 0:2.28.0-6.el6        ORBit2.x86_64 0:2.14.17-5.el6       
  atk.x86_64 0:1.30.0-1.el6                 avahi-libs.x86_64 0:0.6.25-15.el6        cairo.x86_64 0:1.8.8-6.el6_6        cups-libs.x86_64 1:1.4.2-72.el6     
  dbus.x86_64 1:1.2.24-8.el6_6              eggdbus.x86_64 0:0.6-3.el6               fontconfig.x86_64 0:2.8.0-5.el6     freetype.x86_64 0:2.3.11-15.el6_6.1 
  gdk-pixbuf2.x86_64 0:2.24.1-6.el6_7       gnome-keyring.x86_64 0:2.28.2-8.el6_3    gnutls.x86_64 0:2.8.5-19.el6_7      gtk2.x86_64 0:2.24.23-6.el6         
  hicolor-icon-theme.noarch 0:0.11-1.1.el6  jasper-libs.x86_64 0:1.900.1-16.el6_6.3  libIDL.x86_64 0:0.8.13-2.1.el6      libX11.x86_64 0:1.6.0-6.el6         
  libX11-common.noarch 0:1.6.0-6.el6        libXau.x86_64 0:1.0.6-4.el6              libXcomposite.x86_64 0:0.4.3-4.el6  libXcursor.x86_64 0:1.1.14-2.1.el6  
  libXdamage.x86_64 0:1.1.3-4.el6           libXext.x86_64 0:1.3.2-2.1.el6           libXfixes.x86_64 0:5.0.1-2.1.el6    libXft.x86_64 0:2.3.1-2.el6         
  libXi.x86_64 0:1.7.2-2.2.el6              libXinerama.x86_64 0:1.1.3-2.1.el6       libXrandr.x86_64 0:1.4.1-2.1.el6    libXrender.x86_64 0:0.9.8-2.1.el6   
  libgsasl.x86_64 0:1.4.0-4.el6             libjpeg-turbo.x86_64 0:1.2.1-3.el6_5     libntlm.x86_64 0:1.0-3.el6          libpng.x86_64 2:1.2.49-2.el6_7      
  libthai.x86_64 0:0.1.12-3.el6             libtiff.x86_64 0:3.9.4-10.el6_5          libxcb.x86_64 0:1.9.1-3.el6         pango.x86_64 0:1.28.1-10.el6        
  pixman.x86_64 0:0.32.4-4.el6              polkit.x86_64 0:0.96-11.el6              sgml-common.noarch 0:0.6.3-33.el6  

完了しました!

msmtpの設定

サンプルを参考に設定ファイルを作成。

$ cp /usr/share/doc/msmtp-1.4.32/msmtprc-user.example ~/.msmtprc
$ vi ~/.msmtprc

最終的にこんな感じに。

# Example for a user configuration file

# Set default values for all following accounts.
defaults
auth on
tls on
tls_trust_file /etc/ssl/certs/ca-bundle.crt
logfile ~/.msmtp.log

# gmail service
account gmail
host smtp.gmail.com # smtpサーバ
port 587 # smtpサーバのポート
from user@gmail.com # 送信元メールアドレス
user user # 認証に利用されるユーザ
password password # 認証に利用されるパスワード

# Set a default account
account default : gmail

mailxの設定

.mailrcの作成

$ vi ~/.mailrc

先ほど設定したmsmtpの設定を使うようにする。

# set smtp for mailx
set sendmail="/usr/bin/msmtp"

送信テスト

送信してみる。

$  mail hoge@example.com
Subject: テスト件名
テスト本文
.
EOT

エラーが。。。

send-mail: authentication failed (method PLAIN)
send-mail: server message: 534-5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbvp3
#〜〜〜〜〜〜〜〜〜〜〜〜〜〜(省略)〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
send-mail: server message: 534-5.7.14 ygIFjX33634n_LN73HnYlF-FZ-oE> Please log in via your web browser and
send-mail: server message: 534-5.7.14 then try again.
send-mail: server message: 534-5.7.14  Learn more at
send-mail: server message: 534 5.7.14  https://support.google.com/mail/answer/78754 i15sm36542030pfi.55 - gsmtp
send-mail: could not send mail (account default from /root/.msmtprc)

ググる

phpmailer - Gmail SMTP debug: error "please log in via your web browser" - Stack Overflow

Head over to Account Security Settings (https://www.google.com/settings/security/lesssecureapps) and enable "Access for less secure apps", this allows you to use the google smtp for clients other than the official ones.

書いてあるとおりhttps://www.google.com/settings/security/lesssecureappsにアクセス。

f:id:mktktmr:20160222232614p:plain

ベストな方法ではないんだろうけど、他にやり方が見つからなかったのでこれにて対応。

参考

Send mail as from my personal gmail account - Ask Ubuntu

msmtp 1.4.23 日本語訳: msmtp

CentOS7 on AWS httpサーバ構築ではまったこと

環境

サーバ

AWSVPC上に構築

EC2インスタンス概要

サーバソフト

作業クライアント

OS X 10.10.5

やったこと

詳しくは書かないが、一応メモとして

  • apache実行ユーザの作成
  • 不要なサービスの停止
  • パッケージの最新化
  • cronによるmydnsへIPの通知
  • httpdのインストール
  • httpdの設定
    • httpd.confを弄る
    • バーチャルホストの設定
  • ディレクトリのオーナー・アクセス権限変更
  • SELinuxの無効化

はまったこと

1. SSHで接続できない?

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
#〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜(中略)〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

「WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED」というワーニングが出る。

設定ミスってEC2作り直したんだけど、そのせいで、なりすましだと勘違いされてしまったっぽい。

なんで、SSHの既知のホスト情報を一旦消すと良いみたい。

SSH接続で WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! って言われて接続を拒否られるとき(コメント)

過去の投稿にもありますが、ssh-keygen -R で消せます。

$ ssh-keygen -R hoge.example.com

これで解決かと思ったんですが。。。

$ ssh -i key.pem ec2-user@hoge.example.com
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

次は認証エラーで繋げず。。。

ググってもなかなか原因が分からず、途方にくれているところ、たまたまAWSのコンソールを弄ってたら

f:id:mktktmr:20160222003141p:plain

。。。あっ

AMIがRHEL7の場合、初期ユーザが「ec2-user」だったので、CentOS7も同じだろうと思っていたら違いました。

CentOS7の場合は「centos」でした。

見つけたから良かったけど、これは分かりにくい。。。

2. ネットワークコマンドがない?

サーバの疎通を確認するためにdigやnslookupを叩きたいが、デフォルトでは入っていなかった。

$ dig
-bash: dig: command not found
$ nslookup
-bash: nslookup: command not found

で、yumでインストールを試みるが。。。

# dig
$ yum install dig
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
No package dig available.
Error: Nothing to do
# nslookup
$ yum install nslookup
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
No package nslookup available.
Error: Nothing to do

ない。

と思ったら、digやnslookupはbind-utilsパッケージにいるらしい

digも、hostも、nslookupも入ってない - Snufkinski Memo

CentOS 6をminimalインストールすると、デフォルトではDNS名前解決テスト用のdig,nslookup,hostコマンドがインストールされていません。
CentOS 6にdig,nslookup,hostコマンドをインストールしたい場合、bind-utilsをインストールします。

yum -y install bind-utils

3. httpサーバにアクセスできない?

httpdも動いているし。。。

$ systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2016-02-21 15:43:49 UTC; 33min ago
#〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜(省略)〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

IPとドメインの紐付けもちゃんとできてるし。。。

nslookup -type=A hoge.example.com
Server:     XXX.XXX.XXX.XXX
Address:    XXX.XXX.XXX.XXX#ZZ

Non-authoritative answer:
Name:   hoge.example.com
Address: YYY.YYY.YYY.YYY

firewalldまでいれて80ポートも開けたんだよ!

。。。

いやいや、AWSなんだからセキュリティグループ弄れよって話でした。

Linux インスタンスの Amazon EC2 セキュリティグループ - Amazon Elastic Compute Cloud

f:id:mktktmr:20160222011400p:plain

とりあえず、おおきくハマったのは以上の3点。

つまらないことで、時間を消費してしまった。。。