Amazon EC2でクライアント証明書認証のVPNを構築

構成図

高いセキュリティが要求されるLAN内のサーバに自宅などのリモートからSSHログインしたい場合、VPNが有効です。
VPNを使うと、リモートからLAN内に仮想的に参加することができるので、プライベートIPアドレスのみが割り振られたサーバにもSSHログインできるようになります。

VPNには色々な認証方式がありますが、SSL-VPNプロトコルでクライアント証明書方式の認証を行えば、誰がいつVPNに参加したのかを高い信頼度でログに記録することができます。

本記事では、OpenVPNを使ったSSL-VPNの構築方法をAmazon EC2での構築も踏まえ詳しく紹介します。

続きを読む


はてなブログからgithub.ioに移転しました

http://laysakura.hateblo.jp から移転しました。

今後は Hexo を使って github.io 上に記事を掲載していきます。

過去の人気記事

はてブの比較的多かった過去の記事をピックアップしました。

これらの記事はこちらのブログに転載し、元のはてなブログの記事からもこちらのブログへのリンクだけを残します。


速いしスケールする並列CSVパーサ作った紆余曲折話

年の瀬にどうしてもCSVを並列にパースしたくなって、PartialCsvParserというC++のライブラリを作った。

  • 1スレッドでも高速だし複数スレッドで使うとちゃんとスケールする
  • ヘッダファイルだけインクルードすればコンパイルなしで使える
  • パブリックドメインなので自分のリポジトリに git add とかしてもおk

という3拍子揃ったやつです。

細かいことはプロジェクトのページを見ていただくとして、ブログには頑張ってベンチマークとった話と、全然スケールしなかったのに2行追加しただけでグンと並列性能が上がった話を書く。

続きを読む


MySQLite: SQLiteデータベースを読み書きするMySQLストレージエンジン

第2回 MariaDB/MySQL コミュニティ イベントで、以前作っていたMySQLiteというMySQL/MariaDBのストレージエンジンの発表をしました。

スライドはこちらです。

MySQLite: SQLiteデータベースを読み書きするMySQLストレージエンジン

他の方の発表も楽しめました。
懇親会でMariaDB開発・セールスのおじさま方に「You look so cool!」って言われたのが一番嬉しかったです。

お話を持ちかけてくれたり会場を提供してくださったDeNA様、ありがとうございました。



Perlで日本語全文検索できるCPANモジュール作りました

Perlで全文検索を手軽にできるようにするCPANモジュール,Search::Fulltext をリリースしました.
これ単品だと英語での全文検索ができるのですが,これまた拙作の Search::Fulltext::Tokenizer::MeCab と組み合わせて使うと 日本語全文検索 ができるようになります.

ここでは日本語全文検索をするためのインストール方法と簡単な使い方などについて記述します.
尚,この記事を書いている時点での最新版は Search::Fulltext-1.02, Search::Fulltext::Tokenizer::MeCab-1.04 です.
最新の情報についてはperldocで確認するようにしてください.

続きを読む


MySQL 5.6 で動くストレージエンジン・テンプレート

MySQL 5.6 で動く Skeleton Engine, Yet Another Skeleton Engine を Github で公開してます.
https://github.com/laysakura/mysql-YetAnotherSkeletonEngine

Skeleton Engine は MySQL のストレージエンジンを作成するためのテンプレートです.
オリジナルのものは
http://www.sourcefiles.org/Databases/Utilities/
の skeleton_engine-0.7.tar.gz でダウンロード可能でした(2013/02/10 現在)が,古いバージョンの MySQL を前提としており,MySQL 5.6 にオリジナルのままの Skeleton Engine を組込むことはできません.
オリジナルのものが MySQL 5.6 で使えない理由は最後の節に記載します.

そこで Yet Another Skeleton Engine と名付けまして,MySQL 5.6 で動くストレージエンジンのテンプレートを公開しました.
本エントリでは,まず Yet Another Skeleton Engine の使い方を記し,次にメモ程度にリポジトリ作成作業のログを記します.

続きを読む


真・SSEを使って8flops/clockを実現する

カーネル/VM Advent Calendar の34日目として書きます.
記事の内容自体はこのイベントと関係ありませんので,どなたでもお楽しみ下さいませ.

今回は 自分の前回の記事 で見つけた誤りを訂正しつつ,
Intelの一部CPUがサポートするSSE(Streaming SIMD Extensions)命令により1clockで8個の単精度浮動小数点演算を行なう方法を紹介します.

なるべく前回の記事とは独立した記述を心がけます.

続きを読む



perf stat でパフォーマンスカウンタの値を直接指定し表示

perfについて少し

最近のLinuxでは,perfという便利なパフォーマンス解析ツールが使えます.
aptやyumなどのパッケージ管理ツールで入れられると思いますが(Debian系だとlinux-tools*って名前のパッケージのはず),詳しい使い方はここでは解説しません.

さて,このperfには色々な使い方がありますが,中でもperf statはプログラム実行中に起こるハードウェア的なイベントを取得できるものです.
使用例はこんな感じ.

続きを読む