2015年05月

2015年05月24日
僕は前に、たくさん sophos を触っていました。しかし最近はWindowsぐらいしか触らず、Linuxへのsophosインストールはご無沙汰でした。
最近提案した案件で、sophos が売れたので、それをインストールすることになりました。

インストールはマニュアルの通りですが、めちゃ簡単です。
./sophos-av/install.sh を実行するだけ。あとは質問に答えるだけでOKです。

インストール後は、EICAR というテストウイルスをダウンロード、実行させて、どのように検知されるか確認してみました。

・オンデマンド検索
# savscan /
---------------------------------------------
SAVScan virus detection utility
Version 5.12.0 [Linux/AMD64]
Virus data version 5.13, March 2015
Includes detection for 8899461 viruses, Trojans and worms
Copyright (c) 1989-2015 Sophos Limited. All rights reserved.

System time XX:XX:XX PM, System date XX May 2015

Quick Scanning

Could not open /lib/modules/2.6.32-504.16.2.el6.centos.plus.x86_64/source
Could not open /lib/modules/2.6.32-279.el6.x86_64/source
>>> Virus 'EICAR-AV-Test' found in file /root/eicar.com

10368 files scanned in 1 minute and 12 seconds.
2 errors were encountered.
1 virus was discovered.
1 file out of 10368 was infected.
If you need further advice regarding any detections please visit our
Threat Center at: http://www.sophos.com/en-us/threat-center.aspx
End of Scan.
---------------------------------------------
上記の通りコンソール画面に出力されました。

/var/log/messages には以下の通り
May XX XX:XX:XX [host] savd: savscan.log: On-demand scan started.
May XX XX:XX:XX [host] savd: savscan.log: On-demand scan details: master boot records scanned: 0, boot records scanned: 0, files scanned: 10368, scan errors: 2, threats detected: 1, infected files detected: 1
May XX XX:XX:XX [host] savd: Threat detected in /root/eicar.com: EICAR-AV-Test during on-demand scan. (The file is still infected.)
May XX XX:XX:XX [host] savd: savscan.log: On-demand scan finished.

ただし、初期インストール後の状態では、(テストインストールということもあって、ライセンスキーなどは適当なものを入力していたため?)
オンアクセス検索がどうもうまくいきません。

■オンアクセスサービスのステータス確認
# service sav-protect status
Sophos Anti-Virus daemon is active
→ OKでした。

# service sav-protect stop
Stopping Sophos Anti-Virus daemon: [ OK ]
→ 停止もOK

# service sav-protect start
Starting Sophos Anti-Virus daemon: No TBP available, running savupdate:
→ 起動がうまくいってない?

ログは以下の通り
May XX XX:XX:XX [host] savd: talpa.startup: Unable to load Talpa modules.

とりあえずライセンスキーを入力してからもう一度試す必要がありそうです。



2015年05月23日
GIOを利用しています。で、NASオプションと、HDDを追加したので、メモしておきます


■HDD追加
1.1.1 仮想サーバにローカルディスクを追加

1. messages ファイルに、追加ディスク(sdb)があって、パーティーションが無いことを確認
kernel: sda: sda1
kernel: sdb: unknown partition table

2. ファイルシステムを指定してパーティーション作成
※ ext3 しかサポートしてないそうです。

# mkfs -t ext3 /dev/sdb
mke2fs 1.39 (29-May-2006)
/dev/sdb is entire device, not just one partition!
Proceed anyway? (y,n) y ← yキーを押す
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
13107200 inodes, 26214400 blocks
1310720 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
800 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information:
done

This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

3. mount して df して結果確認
# mount /dev/sdb /mnt
# df

4. fstab に記載する
# vi /etc/fstab
/dev/sdb /mnt ext3 defaults 0 2

5. umount / fstab 再読み込み

HDD追加は以上で完了です。

■NAS追加
3.3 仮想サーバからNAS/B(共有ストレージ)を利用する

以下、上記のマニュアルから引用です。

# service portmap start (CentOS 5系の場合)
# service rpcbind start (CentOS 6系の場合)
# mkdir /nas
# mount -t nfs 192.168.20.10:/var/nas /nas
# chown -R apache:apache /nas
※ /var/www にマウントする方法もあり。ただし既存の www の内容が消えるので、事前にコピーするか、別フォルダに待避する

起動時に自動実行・マウントの設定
# chkconfig portmap on (CentOS 5系の場合)
# chkconfig rpcbind on (CentOS 6系の場合)
# chkconfig netfs on
# vi /etc/fstab
192.168.20.10:/var/nas /nas nfs defaults,hard,intr,nfsvers=3,udp 0 0

NASは以上になります。


2015年05月22日
2つの可能性が考えられます。

・管理者権限で実行していない。
このコマンドは証明書を作成するだけでは無く、自分のコンピューターに対して、信頼された機関としても登録することになります。このときに管理者権限じゃないとできないのだと思われます。
もしファイルだけが作成された場合には、MMCなどから証明書をインストールしても結果は同じになると思われます。

・すでに登録されている
こういうことは不慣れなこともあって、すでにインポートしたのに、もう一度コマンドを実行しなおすことがよくありますね。
すでに同名で登録されている場合にはこのエラーになると思われます。
そのときは、証明書を作成するだけにするか、やはりMMCから証明書を削除して再実行する必要があります。

2015年05月21日
参考
Hyper-V 3.0 で Hyper-V レプリカを構成する準備


まず、ドメイン環境にしちゃえばすげーラクだよ。っていうのがあります。
なぜなら、相互にデータを交換するときに、ドメイン環境の証明書が使える(と思う)ので。
証明書は、僕自身あまり知識が無く、苦労する原因の大きな理由の一つです。

また、レプリケーションの方法として、 kerberos 認証(http) と 証明書ベースの認証(https)がありますが、ワークグループ環境では、証明書ベースしか利用できません。


証明書を用意しなければならないわけですが、外部に公開されるわけではないため、簡易な自己署名による証明書を用意することにしました。これは参考サイトにあるとおりです。

証明書については、ルート証明書を作成し、それと紐付いた証明書の作成という、2つの証明書が必要になります。
この証明書は、プライマリ・セカンダリと用意する方が無難なので、ルート証明書が2つ。証明書も2つの、合計4つのファイルを作成する必要があります。
さらに、CN には自身のサーバー名が含まれている必要があります。特に、Workgroup環境では、ホスト名のみだと思いますので、これもまた注意します。(ドメイン名を含めたFQDNじゃなくても問題ありませんでした。)

1. ルート証明書(必ず管理者権限で!)

makecert.exe -pe -n "CN=ルート証明書名" -ss root -sr LocalMachine -sky signature -r "[保存先パス+ファイル名.cer]"

※オプションは以下の通り
-pe:生成された秘密キーをエクスポート可能と見なします。これにより、秘密キーを証明書に組み込むことができるようになります。
-n name: サブジェクトの証明書名を指定します。 この名前は X.500 標準に準拠する必要があります。 最も簡単な方法は、名前の前に CN= を付けて二重引用符で囲んで指定する方法です。たとえば、-n "CN=myName" とします。
-ss store:出力される証明書を格納する、サブジェクトの証明書ストア名を指定します。
-sr location:サブジェクトの証明書ストアの位置を指定します。 location には、currentuser (既定値) または localmachine を指定できます。
-sky keytype: サブジェクトのキーの種類を指定します。signature (キーがデジタル署名に使用されることを示す)、exchange (キーがキー暗号化とキー交換に使用されることを示す)、プロバイダーの種類を表す整数のいずれかを指定する必要があります。既定では、交換キーに 1、署名キーに 2 を渡すことができます。
-r: 自己署名証明書を作成します。


2. クライアント証明書(必ず管理者権限で!)

makecert.exe -pe -n "CN=FQDN(PC名)" -ss my -sr LocalMachine -sky exchange -eku 1.3.6.1.5.5.7.3.1,1.3.6.1.5.5.7.3.2 -in "上記で設定したルート証明書名" -is root -ir LocalMachine -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12 "[保存先パス+ファイル名.cer]"

-eku:コンマ区切りの、拡張キー用途オブジェクト識別子 (OID) の一覧を証明書に挿入します。
Microsoft の暗号化に関連するオブジェクト Id
-in name: 発行元の証明書共通名(CN)を指定します。(Specifies the issuer's certificate common name.)
-is store: 発行元の証明書ストア名を指定します。
-ir location: 発行者の証明書ストアの場所を指定します。location は、currentuser (既定値) または localmachine のいずれかです。
-sp provider: サブジェクトの CryptoAPI プロバイダー名を指定します。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider のレジストリ サブキーで定義されている必要があります。 -sp と -sy の両方が存在する場合、CryptoAPI プロバイダーの種類は、プロバイダーのサブキーの Type 値に対応する必要があります。
-sy type: サブジェクトの CryptoAPI プロバイダーの種類を指定します。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types のレジストリ サブキーで定義されている必要があります。 -sy と -sp の両方が存在する場合、CryptoAPI プロバイダーの名前は、プロバイダーの種類のサブキーの Name 値に対応する必要があります。

上記を作成したら、正しく証明書ストアに保存されていることを確認します。
※確認方法は、参考サイトで!

上記をプライマリ・セカンダリで行います。
このとき、ルート証明書名はプライマリ/セカンダリで異なる値にすること。クライアント証明書の CN=FQDN(PC名) については、同じPC名ってことは無いので、それぞれ異なると思います。

そしてルート証明書は、それぞれのPCにインポートします。
クライアント証明書も同様にそれぞれのPCにインポートします。

またこの状態では証明書の確認が通らないため、レジストリを編集し、証明書の確認を行わないようにします。
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Replication"
内にある
DisableCertRevocationCheck の値を 1 にします。
これも両方で行います。

FWのポートも通るように設定することでまずは完了です。
ここまで来ればレプリケーションは難しくありません。というか、もんのすごく簡単にできてしまいます。

2015年05月20日
Webarena のサーバーを利用しています。
そして最近、DNSのポート監視をするように設定しました。

ただしWebarenaはポート監視といっても、ポートの開放状況を確認するだけではなく、実際にDNSにアクセスし、名前解決をためすようでした。

そもそもの発端として、Webarena管理画面から、DNSの監視を設定するようにしたところ、DNSが正常に稼働しているのも関わらず、接続できない旨の警告メールが飛んできました。
PROBLEM: [IPアドレス] DNS

もちろんサーバーは正常です。
いろいろ調べていくと、messages ログファイルに以下のようなエラーが出ていました。
---
client 210.150.255.29#40753: query 'localhost/A/IN' denied
---
上記のIPアドレスですが、これはWebarena の監視サーバーのものでした。
お客様サポート
監視用サーバ :
210.150.255.29:(watch4.pro.arena.ne.jp)

さらに、DNSの設定を追加するようにという記載も上記の通りありました。

そこで、named.conf にマニュアルの通り追加したのです。
そして bind を再起動すると、以下の通りエラーが。
/etc/named.conf:51: zone 'localhost': already exists previous definition: /etc/named.rfc1912.zones:19

ようするに、 localhost のドメイン設定は、named.rfc1912.zones にすでに記載がなされていて、バッティングしているということです。
そのため、上記マニュアルの通りの追記は行いませんでした。一方で、zone ファイルはマニュアルの通り用意しました。

これによって、無事に監視が行われるようになりました。

2015年05月19日
NFS を使っていて .nfsXXXX みたいなファイルが生成されたときの対処方法
さーーっぱりわかりません。とりあえず上記の通りかと。

ホスティングサービスで、NASを契約していました。そしてそのNASはもう解約するので、 rsync でデータを同期し、umount 仕様としていたのです。
rsync の様子を見ていると、なんだか見たことの無い、そして微妙に大きなサイズ(5G)ぐらいのファイルがありました。そして名前は、.nfs000000XXXXみたいな感じです。

「.nfs000000」というキーワードで検索したところ、上記サイトがひっかかりました。なんだか奇跡的です・・助かりました。
ちなみに、上記キーワードでは、現在9サイト出てきます。

ちなみに rm すると、問題無く削除できましたが、すぐに再作成されました。しかし rsync が終わる頃には、勝手に消えていました。
なんだったのだろうか。

2015年05月18日


最近、HPのパソコンをリカバリーする機会がありました。
リカバリー自体はよく行う作業なので、何の問題もありません。

しかしリカバリー完了後に、デスクトップには、Korea Media Player Center と Korea Messenger Center のアイコンが表示されているのです。もちろんリカバリーするときの環境は日本語です。

デフォルトでインストールされていたらイヤだなぁ。。。と思っていたところ、どうやらインターネットに対するショートカットのようでした。そのため、単純に削除でOKです。

なお、スタートメニューの中にもあったので、こちらも削除しました。