Tweet
こんにちは、naoya です。 前編からすこし間が空いてしまいましたが、後編のレポートをお送りします。 シリコンバレー風景 posted by (C)フォト蔵 シリコンバレーツアーの最終日は、渡辺千賀さんやGoogleやAdobeで活躍されているエンジニア、フリーランスとして活躍されているエンジニアの皆さんによるパネルディスカッションが開催されました。 まず、各自の自己紹介があったのですが、もともと営業職だったり、英文学の専攻だったり、機械工学だったりと、もともとエンジニアとはまったく関係のない職種や専攻だったことに驚きました。 シリコンバレーにきた経緯もさまざまで、単身でシリコンバレーに来たり、交換留学でアメリカに渡ってシリコンバレーに来たり、スタンフォード大学に留学してと、経緯もさまざまでした。 その中で、「自分を肯定してくれない場所にいても無駄」、「自分の環境を変えるために、そこで頑...
Tweet
こんにちは、naoya です。 先日、パソナテック10周年記念イベントとして開催された第1回シリコンバレーツアーに参加させていただきました。 今回は、前編と後編の二回にわけて一人のエンジニアからの視点でシリコンバレツアーのレポートしたいと思います。...
Tweet
こんにちは、naoya です。 先日、社内の勉強会で MacPorts の使い方から Ports の追加方法まで幅広く紹介しました。MacPorts は、FreeBSD の ports が元になっていると聞いていましたが、バイナリバッケージまで作れるとは知りませんでした。 詳しくは、資料を参照してください。 なお、資料の中で Ports で追加している bat というプログラムは、Global standard programming with GNU Autotoolsで紹介されているプログラムです。 document.write(''); Read this doc on Scribd: MacPorts var scribd_doc = new scribd.Document(2674173, 'key-lj2b9kntskcxvqvici1');...
Tweet
naoya です。最近、とうとう花粉症の季節に入ったので、生まれて初めて空気清浄機を購入しました。 さて、今日は Apache HTTP サーバの MPM (Multi Processing Module) について解説したいと思います。普段、ウェブサーバを構築するとき、Apache HTTP サーバを使うことが多いと思いますが、Apache HTTP サーバを使う上で MPM について理解しておくことは大事です。 この MPM ですが、Apache HTTP サーバではリクエストを処理する部分のことをさします。MPM は、Apache HTTP サーバ 2.0 系から採用されています。Apache HTTP サーバの MPM には、次の種類があります。 prefork worker perchild winnt それぞれの MPM について解説します。まずは、一番代表...
Tweet
こんにちは、naoya です。 昨日の社内勉強会で、OAuth について行いましたので、そのときの資料を公開します。 OAuth プロトコルの解説のあとに、Twitter の OAuth 経由でステータスを更新するクライアントを作ってみたので、そのソースコードをおいておきます。サンプルでは、現在時刻をステータスとして更新しています。ダウンロードは、こちらからどうぞ。ちなみに、OAuth の仕様書では、Authorization ヘッダに埋め込む方法が書いてありますが、Twitter では対応していませんでした。実際に動作を見てみたい人は、サンプルコードを設置してみてください。 サンプルコードに含まれているファイルは、次の通りです。 oauth_twitter.php: まずこのファイルを開きます、Request Token リンクをクリックすると認証トークンを取得開始します oauth_t...
Tweet
こんにちは、naoyaです。2007 年も残りわずかとなりました。年末は何かとあわただしくなるものですが、普段業務などで使用しているノートPCのセキュリティ設定には気をつけたいものです。 そこで、今日は「無料の暗号化ディスクなどで実現するノートPCのセキュリティ設定Tips」と題して、ノートPCにフォーカスしたセキュリティ設定をいくつか紹介します。 1) 暗号化ディスクを導入する 暗号化ディスクを使うことで、機密性の高いデータを暗号化することができます。暗号化ディスクは、起動するときにパスワードを入力することで、はじめて使うことができるので、機密性の高いデータを守るために暗号化ディスクを導入しておくと便利です。 無料で使える暗号化ディスクで有名なものには、PGPdiskがあります。ウノウではしばらくの間PGPdiskを使っていたのですが、Windows Vistaには対応していません。 そ...
Tweet
こんばんは、最近自転車のライトを交換した naoya です。 今日は、Apache で特定のコンテンツへのアクセスに対して帯域制限する方法を紹介したいと思います。まず、特定のコンテンツの帯域を制限しようと思った背景から説明したいと思います。フォト蔵では、写真と動画をサポートしています。そのため、動画へのアクセスが増えると他の写真などへのコンテンツに対するレスポンスが悪くなってしまうことがあります。動画は、FLV 形式ですが比較的ファイルサイズが大きいものが多いため、FLV のみ帯域制限を行ってみることにしました。 まず、Apache で帯域制限できるモジュールについて調査しました。調査には、Software Design 2007年9月号をおもに参考にさせていただきました。 Software Design (ソフトウエア デザイン) 2007年 09月号 [雑誌...
Tweet
こんにちは、naoyaです。 今日は、Postfix 2系で有効なSMTP EHLOコマンドで送るドメイン名を変更する方法を紹介したいと思います。 最近、メールサーバのスパムチェック強化によって、SMTP EHLOコマンドで送るドメイン名が正引きできないとスパムメールと判定して受信を拒否するメールサーバが増えてきました。このようなメールサーバの場合、通常の設定で内部のメールサーバからメールを送信すると受信を拒否されてしまうことがあります。 Postfix 2系では、このEHLOコマンドで送るドメイン名を変更することができるようになっているので、さきほどのようなメールサーバでも対応することができます。 設定方法は、とても簡単でPostfixの設定ファイルmain.cf(Fedora Coreの場合は、/etc/postfix/main.cf)に、次の行を追加するだけです。 smtp_helo...
Tweet
こんにちは、naoyaです。 先日、フォト蔵のサーバのハードディスク空き容量が減ってきたので、ハードディスクを500GBx4から1TBx4のハードディスクに交換しました。 フォト蔵のサーバでは、以前satoが紹介したようにDRBDを使って写真や動画のデータを相互バックアップしています。 フォト蔵のサーバのハードウェアとソフトウェア環境は、次のとおりです。 HDD: 1TB x 4 OS: Fedora Core 5(2.6.20) DRBD: 0.7.24 ハードディスクは、二本ずつソフトウェアRAID0で組んでいます。 # cat /proc/mdstat Personalities : [raid0] md1 : active raid0 sdb1[0] sdc1[1] 1953519872 blocks 64k chunks md0 : active raid...
Tweet
こんにちは、naoya です。 先日、ウノウが公開しているサービスの中にいくつかの脆弱性が見つかったため、社内で「脆弱性発見大会」を開催しました。この大会は、二人一チームに分かれてウノウが公開している各サービスの脆弱性を見つけることを目的とした大会です。結果は、いくつか各サービスに脆弱性が見つかり、すぐに修正することができました。 僕のチームは、ウノウのホームページやラボブログなど細かいサービスを担当しました。その中で、いくつかのウェブサーバにセキュリティ上あまい設定がありました。 今日は、ウェブサーバのセキュリティ向上のための設定方法についてエントリします。なお、ウェブサーバはApache 2.2系を前提としています。 サーバ情報の表示しない ウェブサーバ(Apache)で、404などのエラーページを表示したとき、ヘッダやページの下にApacheやOSのバージョンが表示されます。こういっ...
Tweet
naoya です。 フォト蔵などのサービスは、社内にあるサーバ群で運用しています。現在、サービスの規模が成長するにつれて、サーバの台数も約20台強くらいになってきました。 すべてのサーバには、Fedora Core 5がインストールされていて、すべてのサーバにまったく同じパッケージがインストールされています。パッケージの更新には、Fedora Core 5に付属しているyumを使ってすべてのサーバを定期的に更新をしているのですが、yum-fastestmirrorをインストールしている状態でもパッケージの更新に時間がかかるようなってきました。 そこで、一台のサーバにyumのローカルミラーリポジトリを構築してパッケージのダウンロード時間を減らしてみました。今日は、yumのローカルミラーリポジトリを構築する手順を紹介します。 1.必要なパッケージのインストール yum-utilsとcreate...
Tweet
最近、雨の日が続いて自転車通勤ができていない naoya です。 今日は、先週ぐらいからフォト蔵に導入した Apache で mod_expires と mod_rewrite を使ったウェブサーバへのアクセスを減らす方法を紹介します。 通常のウェブサーバは、更新されていないリリースに対してアクセスすると、ステータスコード 304 とIf-Modified-Since ヘッダをつけて応答データを返しますが、CSS や JavaScript など比較的更新頻度の少ないファイルに対して、毎回応答を返すのはウェブサーバから見ると無駄なアクセスです。 Apache の mod_expires と mod_rewrite を使うと、この無駄なアクセスをブラウザキャッシュを有効活用にすることにより、静的なファイルに対するアクセスを減らすことができます。 まず、仕組みから説明すると、とても単純で mod...
Tweet
今日もあいにくの雨で、最近めっきり自転車通勤が減っている naoya です。 今日は、前回の続き「 ベンチャー流のスパムメール対策術」と題した後編のエントリです。前編では、オープンソースで提供されているスパムフィルターの設定方法を紹介しました。 前編の設定を行った後、約2週間ほど僕宛に届く全てのメールでスパムの学習をさせるため、受信したメールをスパムフィルターに通して、スパムメールは spam ディレクトリに、スパムではないメールは Inbox のディレクトリに残しておきました。 この手作業の後、さっそくスパムフィルターの選定をするため、それぞれのスパムフィルターがどの程度効果があるのか測定することにしました。 測定する方法は、僕宛のメールに対して3種類のスパムフィルターをかけて、それぞれのスパムフィルターでスパムと判定されたメールを、どのスパムフィルターにかかったのか分かるようにそれぞれ...
Tweet
先週まで風邪や雨の多い日が続いていてなかなか自転車通勤ができませんでしたが、今日から自転車通勤を再開したnaoyaです。 今日は、僕がメールサーバを新しく構築するにあたって新たにスパム対策を施したので、その内容について紹介します。 まず、メールサーバですが、次のようなオープンソースソフトウェアで構成されています。 OS: Fedora Core 5 MTA: Postfix MUA: Dovecot(IMAP & POP3) それぞれ yum で最新版をインストールしていました。さらにウノウではメーリングリストを使っているのですが、メーリングリストの配送プログラムには mailman を使っています。mailman も yum で最新版をインストールしました。 さてスパムメールですが、よくメーリングリスト宛にたくさん送られてくるのに対して個人宛にはまったく送られてきません。 そこで、メーリ...
Tweet
こんばんは、naoya です。 ウノウラボは、やっと無事一周年を迎えて一歳になりました。 さらにその上、本日ウノウ株式会社があのムノウ株式会社に買収されることが発表されました。詳しくは、プレスリリースをご覧ください。 この買収に伴い、ウノウラボという名称ではあわないということで、ウノウラボもムノウラボに装いも新たにリニューアルいたしました。 なお、ムノウラボは、ムノウエンジニアが大小のアウトプットを行う場として情報を配信していきますので、今後も期待してください。 今後ともムノウラボをよろしくお願いいたします。 4月2日追記 エイプリルフールネタです。...
Tweet
ムノウラボをご覧の良い子の皆様、こんにちは。 以前フォト蔵サーバをホスティング業者から自社サーバに移民させたことは記載せていただいたと思いますが、今回はフォト蔵サーバ内でどういう処理を、どう効率よく進めているか?を写真を交えながらご紹介したいと思います。 非常に高効率なマルチスレッド処理なので、サーバ構築の際は是非参考にしてみてください。 まず、処理のノウハウに先だちまして、フォト蔵のサーバをホスティング業者から自社サーバに移民させた理由を説明します。 【移民させた理由】マシンの増員に時間がかかり、フレキシブルに対応できないフォト蔵のような写真系のサービスの場合、十分広い暗室を確保する必があるが、暗室を確保するにはコストがかかる。フォト蔵のような写真系サービスの場合、大容量の現像液・現像停止液必要になるが、大容量の現像停止液を搭載したマシンは酢酸臭くなり、ホスティグ業者に迷惑がかかる。 と...
Tweet
こんばんは、naoya です。 今日は、献本でいただきました「こんな僕でも社長になれた」を読みましたので、レビューさせていただきます。 この本は、家入さんの自伝書です。家入さんは、現在格安で好評のレンタルサーバロリポップ!などを運営されている(株)paperboy&co.の社長さんです。 あらすじを紹介すると、家入さんの幼年期から起業されるまでの家入さんご自身の人生体験が細かく書かれています。一度この本を読み始めると、とにかく面白くて一気に読んでしまいました。ところどころ僕の幼年期の体験と近い体験があったので、共感しつつそのときの家入さんの気持ちをすこしだけかもしれませんが理解できたような気がしました。 家入さんが起業された後の体験記も、とても興味深く読みました。これから起業する人、起業したばかりの人は必読だと思いました。 ウノウでも、ロリポップ!と同じようにこれからユーザの皆さんに楽しん...
Tweet
こんばんは、最近寒い夜が続いていて自転車通勤がつらくなってきた naoya です。 ウノウでは、フォト蔵や社内システムなどは、すべて専用サーバを構築して運用をしています。 今日は、専用サーバを構築するときに、僕がウノウで学んだ専用サーバでまず行う4つの設定を紹介します。 なお、今回の設定はすべて Fedora Core 5 をもとにしています。 (1) sudo を使えるようにする sudo コマンドを使えるようにします。sudo コマンドは、別のユーザとしてコマンドを実行できるコマンドです。 sudo コマンドを使えるようにするには、/etc/sudoers に sudo を許可するグループを追加します。次の例は、unoh グループを追加する例です。 %unoh ALL = (ALL) ALL, !/bin/su, /bin/su postgres, /bin/su * postgr...
Tweet
naoya です。 今日は、「社内ブログ革命」という本をウノウにいただきましたので、書評させていただきたいと思います。 この本は、サブタイトルに「営業・販売・開発を変えるコミュニケーション術」とあるとおり、社内ブログを開設することによってスムーズな情報発信や共有をすることがテーマになっています。 前半には社内ブログを開設にするにあたって重要となるポイント、後半には実際に社内ブログを開設している具体的な企業の例が書かれています。 ウノウでもさっそくこの本を読んで、今月から社内ブログを開設してみました!社内ブログに開設にあたっての技術的な内容は、まだ手探りなところがあるのである程度まとまったところで、このブログに書きたいと思います。 この本を読んで特に印象に残ったところは、次のポイントです。 ブログを書く人の中で、モデルとなるモデレーターを作成する ブログを開設する前で、社内の説明会を...
Tweet
naoyaです。 今日は最近見つけました”ウェブデザインに不可欠なツールサイト”を紹介します。その名前も「Web Design Tools - thePeoplesToolbox」です。このサイトはウェブデザインの使われるさまざまなサイトをまとめたサイトです。 それでは、さっそく使ってみることにしましょう。 まず、最初にユーザ登録した方が自分のツールボックスにできるので登録してみましょう。 登録するには、右上の"login"リンクから、必要な情報を入力するだけでその場で登録完了となります。"Enter Code"には、"Authentication Code"と同じ文字を入力します。 ウェブデザインサイト1 posted by (C) フォト蔵 ログイン後、"home"リンクからトップページを表示すると、ウェブデザインに使えるサイトの一覧がカテゴリ別に表示されています。 この中から、好き...