« 2005年11月 | トップページ | 2006年7月 »

2005年12月31日 (土)

システムのバックアップ

実はメールサーバーの移行はもう完了してしまっているのですが、作業量がなかなか多かったせいもあって、こちらに反映できていません。いずれ、時間を見てまとめていきたいと思っています。。

という前に、そろそろバックアップを真面目に考えておく必要があります。日々の差分をどうバックアップしていくか運用を考える必要があるのですが、まずは現在の静止イメージを取得しておく必要があります。まずはメンテナンスモードに入りましょう。

# init 1

で、おもむろに dump コマンドを使ってみます。

# dump -0 -f - /dev/hda1 | gzip > /mnt/backup/hda1.dump.gz

dump コマンドで /dev/hda1 の内容をダンプし、それを gzip で固めて /mnt/backup 下のファイルに出力しています。もちろんこのディレクトリにマウントされているファイルシステムは、/dev/hda1 以外のものです。USB の外付けディスクとかネットワーク上のファイルシステムとかでも問題ないです。

| | コメント (0) | トラックバック (0)

2005年12月19日 (月)

CA の作成

openssl を使って独自の証明書認証局 (CA) を作ってみます。

(1) CA 自己署名証明書の作成

まずは CA の秘密鍵を生成します。

  openssl genrsa -rand /var/log/messages -out ca.key 1024

この秘密鍵に対して証明書署名要求 (CSR) を作成します。

  openssl req -new -key ca.key -out ca.csr

DN を作成するための情報を入力するよう促されるので、適切な値を入力してください。

CSR に基づいて自己署名し、証明書を作成します。ここでは有効期限を 10 年(=365日)と指定しました。

  openssl x509 -req -days 3650 -in ca.csr -signkey ca.key \
    -out ca.crt

(2) 証明書の作成

作成した CA の証明書に基づいてサーバーの証明書を作成してみます。まずはサーバー証明書用の秘密鍵を作成します。

  openssl genrsa -rand /var/log/messages -out server.key 1024

この秘密鍵に基づいて CSR を作成します。

  openssl req -new -key server.key -out server.csr

CSR の情報に基づき、CA の秘密鍵を用いて署名し、証明書を発行しましょう。

  echo 01 > ca.srl
  openssl x509 -req -days 1095 -CA ../certs/ca.crt \
    -CAkey ./ca.key -in server.csr -out server.crt

ここでは有効期限を 3 年(=1095日)としています。

| | コメント (0) | トラックバック (0)

2005年12月18日 (日)

OpenLDAP を使おう (4)

そういえば長らく書こうと思って書けていなかった OpenLDAP のアカウント登録を簡単にまとめておきます。

(1) rootdn および rootpw の編集

まず、ディレクトリに管理者ユーザーを登録しましょう。そこで管理者ユーザーを登録するための仮の管理者ユーザーを設定してディレクトリに接続できるようにします。 /etc/ldap/slapd.conf に以下の行を追加してください。

    rootdn "管理者のDN"
    rootpw 管理者のパスワード

仮のものなのでパスワードの部分には平文のパスワードをそのまま書いてもいいですが、本来は slappasswd コマンドを使って作成した文字列を指定すべきでしょう。

    slappasswd
    New password:
← パスワードを入力
    Re-enter new password:
← 確認のためもう一度入力

設定できたら、openldap を再起動しておきましょう。

    /etc/init.d/slapd restart

(2) 管理者エントリーの作成

まず、登録するエントリーの情報を以下のように LDIF 形式のテキストファイルで作成します。

    dn: 作成する管理者のDN
    cn: 作成する管理者のDNのCNの部分
    description: コメント
    objectClass: organizationalRole
    objectClass: simpleSecurityObject
    userPassword: パスワード

パスハードに指定する文字列については先ほどのように slappasswd を用いて作成してください。ひととおり編集が終わったら、このファイルを ldapadd コマンドを用いてディレクトリに登録します。

    ldapadd -x -h localhost -D '仮の管理者のDN' -W < 作成したファイルのパス
    Enter LDAP Password:
← 仮の管理者のパスワードを入力
    adding new entry "登録されたDN"

管理者の作成が完了したら、/etc/ldap/slapd.conf から rootdn および rootpw の行をコメントアウトして、新たに設定した管理者で接続できるかどうか確認しておきましょう。

(3) POSIX アカウントの登録例

それではログインユーザーとして用いることのできる POSIX アカウントを登録してみましょう。登録情報を LDIF 形式のテキストファイルで作成して登録する手順は先ほどと同じです。

    uid: ユーザーID
    cn: ユーザー名
    uidNumber: ユーザーID番号
    gidNumber: グループID番号
    objectClass: shadowAccount 
    objectClass: posixAccount
    shadowMin: パスワードが変更可能になるまでの日数
    shadowMax: パスワードの変更を要求するまでの日数
    shadowWarning: パスワードを無効にするまでの警告日数
    shadowLastChange: パスワードの変更日付(1970/1/1よりの日数)
    loginShell: ログインシェル
    homeDirectory: ホームディレクトリ
    gecos: GECOSフィールド
    userPassword: ユーザーパスワード

ユーザーパスワードは先ほどと同じように slappasswd で作成してください。その他のフィールドの詳細は /etc/shadow や /etc/passwd に対応しています。作成した LDIF のファイルを ldapadd で登録するとこも先ほどと同じですが、接続に使う管理者の DN およびパスワードは先ほど作成した管理者のものを用いる必要があるので注意してください。

(4) POSIX グループの登録

グループも同様に登録できます。

    dn: グループのDN
    cn: グループ名
    userPassword: グループパスワード
    gidNumber: グループID番号
    memberUid: グループメンバーのユーザー名
    objectClass: posixGroup

| | コメント (0) | トラックバック (0)

2005年12月17日 (土)

メールサーバー移行計画 (2)

かなり間が空いてしまいましたが、今日は久々にメールサーバー移行の話です。

最近どうもメールサーバーの調子が悪い……というわけで、本腰を入れる必要がでてきたわけです。そんな私の今日の参考書は以下のとおり。

あれ、前と参考書が違うような。。という指摘は不要です。気づいてもいわないように(汗)Exim4 は仕組みがシンプルなので、マッチングルールを書けばいろいろな振り分けとかもストレートに設定できるのですが、いかんせんちょいとテストが面倒そう。対して Postfix は参考書を読んでわかったのですが、こちらはルールを記述するというよりパラメータの値を設定する、という感じでだいたいやりたいことが実現できそうなのです。

今日はとりあえずインストールだけしときましょう。まずは不要になる Exim4 をアンインストールしておきます。 Exim4 に関連する 4 個のパッケージがインストールされていますが、アンインストールは exim4-config を指定するだけで OK です。依存する残りのパッケージは自動的にアンインストールされます。

  apt-get remove --purge exim4-config

Postfix をインストールすると構成をどうするか聞いてきますが、とりあえずリターンキーを連打してデフォルトを受け入れておきましょう。設定ファイルは後で真面目に編集する予定です。

  apt-get install postfix

やはり debian は楽チンでよろしい。。次回から設定です。

| | コメント (0) | トラックバック (0)

« 2005年11月 | トップページ | 2006年7月 »