ブログ

  • そろそろSource Treeを使ってみようか? 3

    Mercurial(Gitも同じだろう)を使ってみて、
    「なぜ、使うまでにこんなに時間がかかったのか?」
    と感じた。
    SVNとの大きな違いは、PUSH,PULLが有る事だと思うが、やはりそれが敷居を高くしていたのだろう。
    だが、一旦その意味を理解した時点で、チーム作業に無くてはならない、もう戻れない機能だと感じた。
    チーム内の履歴管理を勝手に変えられないあなたに朗報。
    SVNとMercurialは、同時に同じフォルダで使用可能だ。
    個人的にはMercurialで管理し、最終的にチームのレポジトリにはSVNでコミット。
    なんて事が可能なのだ。

    SVN止まりのあなた!
    先延ばしにする?今から使いはじめる?
    考えて答えを出そうよ。

    「いつ使うの?」

  • 光栄です。でも、、、の続き

    光栄です。でも、、、の続き

    Googleに著作権侵害の報告をした結果。
    Googleから返信がきました。

    Googleへご連絡いただきありがとうございました。
    Googleへご連絡いただきありがとうございました。

    で、そのページに行ってみると、
    いきなり転送され、次のようなページに。

    サイトを無効化
    サイトを無効化

    多分、申し立てた結果正規のページだと分かった時に、もとに戻せるようにかと。
    これで、この世から1つ著作権侵害がなくなったのでした。

  • DTIサーバー構築27 「コソコソ」

    Postfixで、SASLを使おう。
    SASLとは、
    http://www.ipa.go.jp/security/rfc/RFC2222JA.html
    文章だけでは理解するのに一苦労。

    まず、Postfixがdovecotを使ったSASLに対応しているかを確認。

    $ postconf -a
    cyrus
    dovecot
    postconfのマニュアルを一部コピっとく。

           -a     List  the available SASL server plug-in types.  The SASL plug-in
                  type is selected with the smtpd_sasl_type configuration  parame-
                  ter by specifying one of the names listed below.
                  cyrus  This  server  plug-in  is available when Postfix is built
                         with Cyrus SASL support.
                  dovecot
                         This  server  plug-in  uses  the  Dovecot  authentication
                         server,  and  is available when Postfix is built with any
                         form of SASL support.
                  This feature is available with Postfix 2.3 and later.

    ということで、dovecotが表示されたので、対応可能ということで。

    Dovecot SASLを使う場合は、Cyrus-SASLを停止させて問題ない。

    $ sudo service saslauthd stop
    saslauthd を停止中:                                        [  OK  ]
    自動起動もしないように変更。

    $ sudo chkconfig saslauthd off

    Postfixの設定に追記して、SASLを可能に変更。

    $ sudo vi /etc/postfix/main.cf
    以下を追加する。

    smtpd_sasl_auth_enable = yes
    smtpd_sasl_authenticated_header = no
    smtpd_sasl_type = dovecot
    smtpd_sasl_path = private/auth
    smtpd_sasl_security_options = noanonymous
    smtpd_recipient_restrictions =
        permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination

    broken_sasl_auth_clients = no
     broken_sasl_auth_clients

    broken_sasl_auth_clients (デフォルト: no)
    古いバージョンの AUTH コマンド (RFC 2554) を実装した SMTP クライアントとの相互運用性を有効にします。このようなクライアントには MicroSoft Outlook Express バージョン 4 や MicroSoft Exchange バージョン 5.0 といった例があります。
    標準的でない方法の AUTH サポートを Postfix に案内させるには、 “broken_sasl_auth_clients = yes” を指定します。

    SASLとは関係ないが、セキュリティ上、以下の設定も追加。

    disable_vrfy_command = yes
    smtpd_helo_required = yes

    次に、Dovecot側の設定を変更。

    $ sudo vi /etc/dovecot/conf.d/10-master.conf
    unix_listener部分を変更。

    service auth {
      # auth_socket_path points to this userdb socket by default. It’s typically
      # used by dovecot-lda, doveadm, possibly imap process, etc. Its default
      # permissions make it readable only by root, but you may need to relax these
      # permissions. Users that have access to this socket are able to get a list
      # of all usernames and get results of everyone’s userdb lookups.
      unix_listener auth-userdb {
        #mode = 0600
        #user =
        #group =
      }
      # Postfix smtp-auth
      unix_listener /var/spool/postfix/private/auth {
        mode = 0666
        user = postfix
        group = postfix
      }
      # Auth process is run as this user.
      #user = $default_internal_user
    }

    続いて以下のファイルも編集。

    $ sudo vi /etc/postfix/master.cf

    コメントを外す!

    submission inet n       –       n       –       –       smtpd
    #  -o smtpd_tls_security_level=encrypt
      -o smtpd_sasl_auth_enable=yes
      -o smtpd_client_restrictions=permit_sasl_authenticated,reject
    #  -o milter_macro_daemon_name=ORIGINATING
    smtps     inet  n       –       n       –       –       smtpd
      -o smtpd_tls_wrappermode=yes
      -o smtpd_sasl_auth_enable=yes
      -o smtpd_client_restrictions=permit_sasl_authenticated,reject
    #  -o milter_macro_daemon_name=ORIGINATING

    最後に、サーバーを再起動。

    $ sudo service dovecot restart
    Dovecot Imap を停止中:                                     [  OK  ]
    Dovecot Imap を起動中:                                     [  OK  ]
    $ sudo service postfix restart
    postfix を停止中:                                          [  OK  ]
    postfix を起動中:                                          [  OK  ]
    次は、STLかな。

  • そろそろSource Treeを使ってみようか? 2

    そろそろSource Treeを使ってみようか? 2

    レポジトリができたとしてのお話。
    それでは、テキストファイルをレポジトリ内に1つ作ってみましょうか。
    テキストエディットを起動して、新規書類を作成、[フォーマット]-[標準テキストにする]を選択。

    テキストエディット
    テキストエディット

    とりあえず、次のような文章を書いてみる。

    sample.txt
    sample.txt

    sample.txtファイルをレポジトリ内に保存する。前回作ったレポジトリだと、

    /Users/[あなた]/Repogitory/Test/sample.txt
    となる。
    この状態で、Source Treeを起動して、Testレポジトリを開いてみる。

    Test (Mercurial)
    Test (Mercurial)

    今作ったファイルが表示されている。
    選択すると、右側に中身が表示される。
    ファイル名の左側のアイコンが「?」の状態だと、まだレポジトリで管理された状態ではない。
    管理してもらうには「追加」が必要。「追加」アイコンをクリックしよう。

    追加
    追加

    もし、ファイルの表示が消えたなら、それは表示するファイルが絞られているから。
    「すべて表示」に変更しよう。

    追加予定
    追加予定

    ファイル左のアイコンが、今度は「+」になっているはず。
    このファイルは追加する予定という事。
    予定ということは、この状態ではまだ追加されていない。
    変更を確定するには、コミットが必要。「コミット」アイコンをクリックしよう。

    コミット
    コミット

    すると、コミットされていない変更が一覧表示される。今回はファイル1つの追加だけ。
    ファイルを選択すると、右側にはそのファイルの変更点が表示される。今回は、2行の追加。

    コミットメッセージ
    コミットメッセージ

    コミットメッセージには、未来の自分や、一緒に作業をしている人のために、変更内容を書いておく。
    なお、このコミットの作業は、変更内容ごとに分けて行うほうが良い。
    「コミット」ボタンをクリックすると、初めてレポジトリにファイルの追加が完了された状態となる。

    プッシュ
    プッシュ

    ファイル名の左に「√」が表示されているはず。
    なお、「プッシュ」アイコンに①と表示されるが、他のレポジトリと接続して、変更を送ることができる。今はとりあえずローカルレポジトリのみなので、また今度。

    では、ここからが本領発揮。
    ファイル名をダブルクリックして、ファイルを次のように変更してみる。

    変更後
    変更後

    保存してSource Treeに戻ると、次のようにファイル名の左に、「…」アイコンが付く。

    …
    右側には、変更内容が表示される。
    2行目が削除されて、同じく2行目に追加されたという内容だ。
    追加の時と同じく、変更を「コミット」しよう。コミットメッセージも忘れずに。

    2行目変更したよ
    2行目変更したよ

    コミットが終わったら、ファイルのメニューから「選択したファイルのログ…」を選択してみよう。

    選択したファイルのログ...
    選択したファイルのログ…

    2回のコミットの変更内容が、ログとして閲覧可能だ。

    Log: sample.txt
    Log: sample.txt

    レポジトリ内の全ての変更を見るには、ブランチを見てみよう。

    ブランチ
    ブランチ

    あとは「アップデート」が必要かな。
    特定のブランチやリビジョンにローカルの状態を更新できる。
    その他いろいろな機能があるが、ほかのサイトに任せようかな。。。

  • DTIサーバー構築26 「まだ信用してもらえないなんて」

    DTIサーバー構築26 「まだ信用してもらえないなんて」

    信用されていない証明書を使っていると、不都合が起こる。
    Google様に信用してもらえずに、Google AppsのメールでPOPしてもらえないのがその一例。
    Dovecotで、サンプルの証明書をそのまま使っていると、

    Unable to establish secure SSL connection
    Unable to establish secure SSL connection

    Unable to establish secure SSL connection to YOURDOMAIN.COM [ Help ]
    Server returned error: “SSL error: self signed certificate”
    と、怒られる。まあ、これは仕方ない。
    設定を編集して、StartSSLで取得した証明書を使うように変更する。

    $ sudo vi /etc/dovecot/conf.d/10-ssl.conf
    と設定ファイルを開いて、次の部分を編集する。

    #ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
    #ssl_key = </etc/pki/dovecot/private/dovecot.pem
    ssl_cert = </etc/pki/tls/certs/domain.pem
    ssl_key = </etc/pki/tls/private/domain.pem

    あと、秘密鍵にパスワードがかかっているので、以下の部分にそのパスワードを入れる。

    ssl_key_password = PASSWORD
    保存して再起動すれば、もう怒られないはず、

    $ sudo service dovecot start
    だった。
    だが、HTTPSで成功したStartSSLの証明書を使っていても、

    Unable to establish secure SSL connection
    Unable to establish secure SSL connection

    Unable to establish secure SSL connection to YOURDOMAIN.COM [ Help ]
    Server returned error: “SSL error: unable to verify the first certificate”
    と、怒られる。
    で、対処法は、自分の証明書にStartSSLの証明書をくっつける。
    まず、
    http://www.startssl.com/certs/ca-bundle.pem
    からStartSSLの証明書をダウンロード。
    適当なフォルダにファイルをアップロード。
    面倒なら、エディタでペースト。

    $ sudo vi ca-bundle.pem
    その後に、自分の証明書と、StartSSLの証明書をくっつける。

    $ sudo cat /etc/pki/tls/certs/domain.pem ca-bundle.pem > domain.bundled.pem
    続いて設定ファイルの編集。

    $ sudo vi /etc/dovecot/conf.d/10-ssl.conf

    次の部分を少し変える。

    #ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
    #ssl_key = </etc/pki/dovecot/private/dovecot.pem
    #ssl_cert = </etc/pki/tls/certs/domain.pem
    ssl_cert = </etc/pki/tls/certs/domain.bundled.pem
    ssl_key = </etc/pki/tls/private/domain.pem

    以上で、再起動後はGoogleさんも認めてくれるはず。

    $ sudo service dovecot start
    これでもダメなら、、、わかりません。