カテゴリー: 未分類

  • DTIサーバー構築19「タダほど怖い物はないぞ」

    DTIサーバー構築19「タダほど怖い物はないぞ」

    どうしてSSLで接続するのか?
    暗号化して、途中経路での盗聴を防ぐため。
    通信相手を確認するため。
    自分で認証した証明書でも盗聴は防げるが、自分であることの証明はできない。
    それに、SSLに使う証明書が公的に証明されていないと、GMailさんに拒否られたりする。
    Unable to establish secure SSL connection to mail.yourdomain.com [ Help ]
    Server returned error: “SSL error: self signed certificate”
    対処法は、、、SSLなしでユーザー認証するしかないのか?

    否!

    CAsertで、無料でサーバー証明書をゲットだぜ!!
    http://www.cacert.org/
    とりあえず、上記URLへ行く。

    CAcert
    CAcert

    まずは、コミュニティに参加するために、赤枠部分をクリック!
    だがしかし、、、

    このサイトのセキュリティ証明書は信頼できません
    このサイトのセキュリティ証明書は信頼できません

    え?
    CAcert自身の証明書がブラウザに登録されてない。
    無料とはいえ、いちいち証明書を登録なんか一度もしたことない承認局の承認を受けても、、、

    需要があるかどうか分からないけど、続ける。

    まずは、入力。

    詳細情報
    詳細情報

    しかし、「 5つの質問と答え」を入力しないといけないとは。

    登録後、しばらくすると確認のメールが届くので、URLをクリックして確認。

    送信済み
    送信済み

    ログインして次の作業に進みましょう。

    ログイン
    ログイン

    ログインができたら、サーバ証明書を作っていきましょう。

    まずはメニューから「ドメイン」-「追加」を選びます。
    ドメインの所有者だという確認を行うために、ドメインを入力します。
    ドメイン
    ドメイン

    ドメイン管理者として有効なメールアドレスを選択してメールを待ちます。

    メールアドレス選択
    メールアドレス選択
    送信済み
    送信済み
    送られたメールのアドレスをブラウザで開くと選択画面が開きます。
    (Google Appsでのメールを利用している場合、postmasterはデフォルトで受信できません。
    Verify
    Verify
    Verifyを選択すると確認完了です。
    ドメイン確認完了
    ドメイン確認完了
    次にメニューから「サーバ証明書」-「新規作成」を選びます。
    サーバ証明書 - 新規作成
    サーバ証明書 – 新規作成

    CAcert 証明書の利用規定(Acceptable Use Policy)を読んで、サーバーで作成したCSRを貼り付けましょう。

    CSR(Certificate Signing Request)
    CSR(Certificate Signing Request)

    送信すると確認画面。

    CommonName確認
    CommonName確認

    確認して送信すると、いきなり証明書が現れます。

    サーバ証明書
    サーバ証明書

    さてと、使いますかね。使えますかね?

  • Googleから警告が来たぞ〜

    まあ、AdSenseのコンテンツポリシーを理解していなかったからなんですが。
    警告メールによりますと、「違反の詳細」としては、

    Google では、過度にデリケート、悲劇的なコンテンツを掲載しているサイトの収益化は許可しておりません。これには不幸な事故、自殺、自然災害、わいせつ事件の他、個人、集団、組織を誹謗中傷するコンテンツも含まれます。Google は表現の自由を強く信じ、ウェブ全体にわたって検閲を伴わない幅広いアクセスを提供していますが、こういったコンテンツを含むサイトで表示するコンテンツ ターゲット広告によって、好ましいユーザー エクスペリエンスを提供できるかどうか、独自の裁量に基づき審査、判断する権限を有しています。 
    という事らしい。
    該当するというページを見てみると、確かに「日航機墜落」を題材にした書籍が一覧されていた。
    日航機墜落の事故原因解明に関する書籍を読んでいた時期に作ったページだ。
    とりあえず、長い物には巻かれる人間なので、ページは削除済み。

    詳しくは Google のプログラム ポリシーをご覧ください。

    とあるので、「コンテンツ ガイドライン」を読んでみる。

    サイト運営者様は、コンテンツ ガイドラインに違反するコンテンツを含むページに AdSense コードを配置することはできません。これには、成人向け、暴力的、人種差別的なコンテンツなどが含まれます。

    次のようなコンテンツを掲載するサイトや、そうしたコンテンツへのリンクがあるサイトに Google 広告を表示することはできません。

    ポルノ、アダルト向け、成人向けのコンテンツ
    暴力的なコンテンツ
    人種差別または個人、団体、組織の中傷に関するコンテンツ
    不適切な表現
    ハッキングやクラッキングに関するコンテンツ
    違法な薬物や麻薬関連の器具に関するコンテンツ
    ビールやハードリカーの販売
    タバコやタバコ関連商品の販売
    処方箋医薬品の販売
    武器や弾薬(銃火器、銃火器の部品、刀剣、スタンガンなど)の販売
    ブランド品やその他の商品の偽造品、模倣品の販売
    講義内容や論文の販売や配布
    報酬を提供して、広告や商品のクリック、検索、ウェブサイトの閲覧、メールの購読をユーザーに促すプログラムに関連するコンテンツ
    その他の違法なコンテンツ、不正行為を助長するコンテンツ、他者の法的権利を侵害するコンテンツ

    ん?どれに該当するのだ?
    「児童オンライン プライバシー保護法(COPPA)」の方なのか?
    謎のままだが、まあ、削除したし、あまり深く考えないでおこう。
  • DTIサーバー構築18 「ここと〜、ここに、ご記入お願いします。」

    証明書を認証局に頼んで作ってもらうために、申請用のファイル(CSR)を作ります。
    とりあえず、申請書用のフォルダを作りましょうかね。

    $ sudo mkdir /etc/pki/tls/csr
    $ sudo chmod 700 /etc/pki/tls/csr
    さて、申請書を作ります。

    $ sudo openssl req -new -key /etc/pki/tls/private/domain.pem -out /etc/pki/tls/csr/domain.csr
    Enter pass phrase for /etc/pki/tls/private/neo.sin-cos.com.pem: ←ここで秘密鍵を作るときに利用したパスワードを入力You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter ‘.’, the field will be left blank.
    —–
    Country Name (2 letter code) [XX]:JP
    State or Province Name (full name) []:都道府県
    Locality Name (eg, city) [Default City]:市町村
    Organization Name (eg, company) [Default Company Ltd]:会社名
    Organizational Unit Name (eg, section) []:部署名
    Common Name (eg, your name or your server’s hostname) []:yourdomain.com
    Email Address []:
    Please enter the following ‘extra’ attributes
    to be sent with your certificate request
    A challenge password []:
    An optional company name []:

    ちなみに、CAcertだと、Common Nameしか利用されません。
    さて、生成したファイルを表示して、コピーしたりして使いましょう。

    $ sudo cat /etc/pki/tls/csr/domain.csr

  • DTIサーバー構築17「人に見せるもんじゃないだろ!」

    SSL証明書を作る前に、秘密鍵(domain.pem)を作りましょう。
    さらに鍵を作る前に、乱数の種(seed.dat)を作りましょう。
    さらにさらに乱数の種を作る前に、、、いや、もうありません。

    $ sudo openssl md5 /var/log/* > seed.dat
    ログフォルダのハッシュ値を種として使います。

    次のコマンドで秘密鍵が生成されます。とても大事な誰にも見せてはいけない物です。

    $ sudo openssl genrsa -rand seed.dat -des3 -out /etc/pki/tls/private/domain.pem 2048
    1492 semi-random bytes loaded
    Generating RSA private key, 2048 bit long modulus
    ……………………………..+++
    ……………………………………………………………….+++
    e is 65537 (0x10001)
    Enter pass phrase for /etc/pki/tls/private/domain.pem: ←ここで秘密鍵自体を暗号化するためのパスワードを入力
    Verifying – Enter pass phrase for /etc/pki/tls/private/domain.pem: ←更に同じパスワードを入力(忘れるとどうにもなりません。)

    さらに、rootしか見れないように、権限も厳しくしておきます。

    $ sudo chmod 600 /etc/pki/tls/private/domain.pem

    さて、秘密鍵の作成は完了です。
    次はこれを元に証明書作成のためのファイルを作りましょうか。

  • DTIサーバー構築16 「報告します!」

    ビッグデータが流行っているが、サーバー内にもそれは眠っている。
    ログファイルがそれである。
    そのままエディターで調べるなんて、ほぼ不可能。
    なので、お手軽にLogWatchを使う。

    まずは、インストール

    $ sudo yum install logwatch
     :(なんだかんだ表示されて)
    Installed size: 11 M
    Is this ok [y/N]: y
     :(なんだかんだ表示されて)
    Installed:
      logwatch.noarch 0:7.3.6-49.el6
    Dependency Installed:
      perl-Date-Manip.noarch 0:6.24-1.el6                 perl-YAML-Syck.x86_64 0:1.07-4.el6
    Complete!
    設定ファイルがそのままでも、root宛に1日1通メールでまとめを送ってくれます。
    でも、念の為、見ておきましょう。

    $ sudo vi /usr/share/logwatch/default.conf/logwatch.conf
    メールが来るのが待てないので、強制的に実行

    $ sudo logwatch

    こんな感じのメールが来ます。

     ################### Logwatch 7.3.6 (05/19/07) ####################
            Processing Initiated: Fri Aug 23 19:50:43 2013
            Date Range Processed: yesterday
                                  ( 2013-Aug-22 )
                                  Period is day.
          Detail Level of Output: 0
                  Type of Output: unformatted
               Logfiles for Host: yourdomain.com
      ##################################################################
     ——————— Disk Space Begin ————————
     Filesystem            Size  Used Avail Use% Mounted on
     /dev/d1             50G  50G   50G   99% /

     ———————- Disk Space End ————————-

     ###################### Logwatch End #########################
     さて、この情報を基に、どうするか?
    それは、あなた次第です。