Skip to main content

DKIM認証を導入してみた

DKIM認証とは

DKIM_fig1
Source: DKIM (Domainkeys Identified Mail) : 迷惑メール対策委員会

Domainkeys Identified Mail (DKIM) の略で簡単に説明すると
サーバ間でメールの不正、改竄を検査する仕組みです。

メール送信時にサーバにて電子署名を付与し、
受信側のサーバでDNSのレコードに登録されている公開鍵と電子署名を照合して認証を行います。

続きを読む

Docker コンテナ管理

Dockerでコンテナ管理するためのコマンド群です。

コンテナ一覧表示

起動中のコンテナ一覧を表示します。

[root@docker ~]# docker ps

停止中のコンテナも表示する場合は「-a」をつけると表示されます。

[root@docker ~]# docker ps -a

コンテナ起動

イメージからコンテナを作成し、起動させます。
コマンドを実行すると

[root@docker ~]# docker run -dit --name="{コンテナ名}" {イメージ名}:{タグ名}

また、下記のオプションを付けることにより様々な動作が指定できます。

-d
バックグラウンドでコンテナを動作させる際に指定します。
-it
/bin/bashなどでコンテナーを操作する際に指定します。
-h {ホスト名}
コンテナのホスト名を指定します。
–name=”{コンテナ名}”
コンテナにユニークな名前を指定します。
-p {ホストのポート番号}:{コンテナのポート番号}
ホストとコンテナのポートフォワーディングを指定します。
複数指定する際は、「-p {ホストのポート番号}:{コンテナのポート番号} -p {ホストのポート番号}:{コンテナのポート番号}」と複数設定。
-e {環境変数名}={値} {環境変数名}={値}
コンテナの環境変数を指定します。
-v {ホストディレクトリ}:{コンテナディレクトリ}
ホストのストレージをマウントします。
複数指定する際は、「-v {ホストディレクトリ}:{コンテナディレクトリ} -v {ホストディレクトリ}:{コンテナディレクトリ}」と複数設定。

コンテナの中へアクセス

コンテナのbashへアクセスできます。

[root@docker ~]# docker exec -it {コンテナ名|コンテナID} /bin/bash

コンテナからホストへファイルコピー

現状コンテナからホストへのコピーはできますが、その逆はできないようです。

[root@docker ~]# docker cp {コンテナ名|コンテナID}:{コンテナのファイル} {ホストのファイル}

コンテナの起動

[root@docker ~]# docker start {コンテナ名|コンテナID}

コンテナの停止

[root@docker ~]# docker stop {コンテナ名|コンテナID}

コンテナの削除

[root@docker ~]# docker rm {コンテナ名|コンテナID}

Docker イメージ管理

Dockerでイメージ管理するためのコマンド群です。

イメージ検索

Docker Hubからイメージを検索します。

[root@docker ~]# docker search centos

上記のコマンドではイメージ名しか取得できないためタグ名がほしい時は下記のコマンドで取得。

[root@docker]# curl https://registry.hub.docker.com/v1/repositories/centos/tags | python -mjson.tool 

イメージ取得

Docker Hubからイメージを取得します。
[イメージ名]:[タグ名]となっていて例ではcentosのlatest(最新バージョン)を取得しています。

[root@docker ~]# docker pull centos:latest

イメージ確認

サーバ内に保存されているイメージを確認できます。

[root@docker ~]# docker images

イメージ削除

サーバ内に保存されているイメージを削除します。

[root@docker ~]# docker rmi centos:latest

Docker v1.8.2 インストール

CentOS7でDockerの最新バージョンをインストールしてみます。(執筆時の最新バージョンはv1.8.2)

ブログの記事にはしていませんがDocker v0.8の時にCentOS6で構築したことがあるのですが
その時はまだ機能やツールなどが充実しておらず、はっきり言って業務には使えないなと思いやめてしましました。

ですがここ最近、Dockerでの導入事例を目にすることが多くなってきたので使ってみて
良ければ、古いサーバからリプレイスしていこうかなと思っています。

手順はDockerの公式サイトInstall Dockerを元に行います。

続きを読む

CentOS 7.1でIPv6を無効にする方法

定期的にやっているIPv6の無効化についての記事です。
下記のコマンドでIPv6が無効になります。
CentOS公式だと、IPv6の停止は非推奨みたいなのでご理解の上、設定して下さい。

echo "net.ipv6.conf.all.disable_ipv6 = 1" > /etc/sysctl.d/disableipv6.conf
sysctl -p /etc/sysctl.d/disableipv6.conf

Source: CentOS 7でIPv6を無効化する | 俺的備忘録 〜なんかいろいろ〜

CVE-2015-0235 GHOST 対策方法

※CentOS6.5, CentOS6.6を前提に話をしています。

識別情報

更新コマンド

※更新後は必ず再起動してください。

[root@www ~]# yum clean all
[root@www ~]# yum update glibc
[root@www ~]# reboot

確認コマンド

[root@www ~]# /lib64/libc.so.6

「Compiled on a Linux 2.6.32 system on 2014-10-15.」の日付が「Compiled on a Linux 2.6.32 system on 2015-01-27.」に変わっていれば対策済みのものがインストールされています。

更新前

[root@www ~]# /lib64/libc.so.6
GNU C Library stable release version 2.12, by Roland McGrath et al.
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.4.7 20120313 (Red Hat 4.4.7-11).
Compiled on a Linux 2.6.32 system on 2014-10-15.
Available extensions:
	The C stubs add-on version 2.1.2.
	crypt add-on version 2.1 by Michael Glad and others
	GNU Libidn by Simon Josefsson
	Native POSIX Threads Library by Ulrich Drepper et al
	BIND-8.2.3-T5B
	RT using linux kernel aio
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.

更新後

[root@www ~]# /lib64/libc.so.6
GNU C Library stable release version 2.12, by Roland McGrath et al.
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.4.7 20120313 (Red Hat 4.4.7-11).
Compiled on a Linux 2.6.32 system on 2015-01-27.
Available extensions:
	The C stubs add-on version 2.1.2.
	crypt add-on version 2.1 by Michael Glad and others
	GNU Libidn by Simon Josefsson
	Native POSIX Threads Library by Ulrich Drepper et al
	BIND-8.2.3-T5B
	RT using linux kernel aio
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.

CentOS 6.6でIPv6を無効にする方法

サーバ構築することがあって方法が変わっていたのでメモメモ。
日本のサイトに情報なくて海外掲示板にありました。

[root@web ~]# vi /etc/sysconfig/network
+ NETWORKING_IPV6=no
[root@web ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
+ IPV6INIT=no
[root@web ~]# cp -p /etc/sysctl.conf{,.orig}
[root@web ~]# vi /etc/sysctl.conf
+ net.ipv6.conf.all.disable_ipv6 = 1
+ net.ipv6.conf.default.disable_ipv6 = 1
[root@web ~]# sysctl -p

念のためサーバを再起動。
これでIPv6が無効になります。

昨日からメールが鳴り止まない…

決して変なサイトに登録したとかじゃないですよ!

昨日の朝方からずっとサーバのSSHポートにブルートフォースアタックを仕掛けてくる奴がいまして、
現在進行形でずっと続いています。

DenyHostsが入っているので実害はありませんが代わりにブロックするたびにスマホが着信しています。。

ただただ、攻撃されていること報告して面白みがないので攻撃ログを抽出してみました。

ユーザー名一覧です。
今どきこんなユーザー名使ってるほうが珍しいとおもうんだけど。。。
もし仮に使っていても、SSH禁止ユーザーだろうなー

D-Link
PlcmSpIp
admin
adminuser
alex
appserver
arbab
bitrix
center
dara
debug
default
deployer
dreamer
ftpuser
ftpuser1
guest
henri
jenkins
karaf
log
lumia
marijn
michael
nagios
oracle
phil
pi
postgres
sales
stack
system
testuser
ubnt
vagrant
vnc
vps
vyatta
xbian
xbmc
zimbabwe
znc

続きを読む

DenyHostsでサーバを守ろう!

サーバ運用してると色んな所から攻撃されたりアクセスしてきたりと困ったこと多々ありますよね。
そういうとき便利なのがこの「DenyHosts」

自分の設定で不要なアクセスを排除してくれます。
原理はというと指定したサービスのログを取り設定したしきい値を超えるとIPアドレスをhosts.denyに書き込んでくれます。

ただhosts.denyアプリケーションレベルで動作するので必ずiptablesとセットで使って下さい。
(まぁiptables設定してない人なんていないと思うけど・・・)

続きを読む

サイト更新

ブログのテーマ変更とサーバ関連のアップデート行いました。

このブログではNginx使っているのですがバージョンアップに伴いSPDY3.1が使えるようになったので
サイト全体をSSL化、SSLv2削除、SPDY3.1を実装してみました。
レガシーブラウザーに不具合出そうだけど、XPのサポートも終わったしもういいだろう。

サーバ側の負荷が上がるなどの情報がありましたがNginxが優秀なのか、ほぼ誤差程度となっています。
しばらくこれで様子見かな〜