Dosa KingにてDosaとPaneer Kebab 2015年11月30日

IMG_20151129_122217

日曜日の恒例青空ヨガの帰り、どこで昼飯食って帰るかなーとひとしきり悩んだ後に久々のインド料理、ドーサを食って帰ることに決定。

んで、スクンビットのNanaの駅のすぐ近く、以前も来たことのある「Dosa King」へ。

できるだけ炭水化物を避けてDosa Mix Vegetable Filling、ドーサの中身がマサラ味のじゃがいもではなく、ミックスベジタブルになってるやつ。んで、なんかチーズが食いたくて勢いあまってPaneer Seekh Kababも頼んだ。

IMG_20151129_121607
↑ どーん!チーズのシークケバブ!

IMG_20151129_122208
↑ どどーん!ドーサ!視覚効果十分。でかい!

チーズのシークケバブってどんなんだ??と思って注文してみたけど、フレッシュチーズを細かく刻んで一番外側は春巻きになってました。やっぱチーズだけだと崩れるわな。フレッシュチーズなので特段クセもなく食いやすい。この料理はなぜかマサラの香りも薄めで非常におとなしい味の料理でした。

んで、メインのドーサ。相変わらずここのはフルサイズのドーサでその大きさに満足。ちゃんとココナツとコリアンダー(パクチー?)のチャツネもついてきて、当然ながらサンバルもついてくる。このサンバルがなんかめちゃ濃厚でとても辛かった。サンバルが辛いというのは始めて。。。

いやー、しっかり2品平らげて腹パンパン。お値段は合わせて380THB。高い!うまかったけどちょっと高いなあ。インド飯がどこでも安かったKLが懐かしい。。。インドもいいけど、KLも行きたいなあ。。。そうだ!退職後のビザ更新はインド飯食いにKL行くか??

探偵ナイトスクープをおさらい 2015年11月29日

偶然にも探偵ナイトスクープのVTRがyoutubeのおすすめ動画に上がってきて懐かしくて長々と見てしまった。久しぶりに見るけどこれはやっぱいい番組ですな。


↑ 電子レンジで卵はダメ!この卵の爆撃食らって倒れてる学生さんの姿をずっと覚えている。探偵は絶対関西の人間でないと知らないだろう桂小枝。最初の頃は話し方が超クドいのでなんやこいつと思ってたが人間慣れるもの。


↑ 懐かしのジミーちゃん。


↑ 北野誠氏がまだまだ元気な時。てか自分の屁をしてるところを電波に乗せて流す芸能人もなかなか居ない。


↑ これもよく覚えてる。金曜の晩に家族で見てて全員で腹抱えて笑うてました。


↑ これもありましたなー。しかし、子供の頃にこんなので育ってるから日本の神前の結婚式に出たら毎回この頭に長靴乗せた桂小枝を思い出して全然ありがたくないのが困ります。


↑ でもなんと言ってもこれ!ホーミーはこれで始めて見て、その後自分で練習もしたし、CDも買った。そしてやっと2002年ぐらいに大阪の四天王寺のイベント会場でモンゴル民族博みたいなものでホーミーの生演奏も聞いた。自分のホーミーへの興味はここから始まっております。

というまた日曜日にダメな時間の使い方をしてしまってますが、今の御時世のテレビ番組と比べると真面目に丁寧に作ってますな。この当時東京の番組よりも大阪のテレビ番組のほうが断然面白いと思ってましたが、今は大阪の番組も全然おもしろいのがないですな。(一時帰国の際に家族が見てるのをながら見してる。)

あとやっぱり北野誠の元気な姿をみたいもんです。

Microsoft Azure Backup Toolでクラウドバックアップの実測 2015年11月28日

000

ちょっと仕事で話が出て来たので今までMicrosoft系ということで苦手意識があり、触ってなかったAzureを触ってみる。

見てみると、、ストレージなどの並びにRECOVERY SERVICES、バックアップコンテナーなんてメニューがある。

Microsoft Azure

Microsoft Azure 自習書シリーズの公開 – Microsoft Azure Japan Team Blog (ブログ) – Site Home – MSDN Blogs

Cloud Platform 関連コンテンツ | マイクロソフト クラウド プラットフォーム

MSの出してるマニュアルなども見てみるとオンプレミスのサーバーのデータバックアップをAzureで、というものがあり、MSがクライアントツールも用意しているようです。Azureの新しいアカウントを作成すると一ヶ月間200USDまでのクラウド使用料が試用分として無料で使えるらしいので一度テストしてみることに。

手順に関しては上のリンク先のMSの出してる自習書を見れば書いてあるのでその辺は端折るとして、バックアップのクライアントツールはWindows8や10にも対応してるので自宅のデスクトップ機にクライアントツールを入れて電子書籍などの保存フォルダ40GBをバックアップしてみることに。中身はだいたい50MB~100MBぐらいのファイルがいっぱい入ってるフォルダになります。

ちなみにこのWin10のデスクトップ機のざっくりとしたスペックは

Win10Pro
第三世代Intel i5
RAM 16GB
C:ドライブは120GBのSSD
D:ドライブは2.0TBでHDD

となっており、Azure Backupのクライアントを入れてバックアップ設定。Windows ServerのWindows Backupツールと似たようなインタフェースで扱いやすい。

バックアップの対象、バックアップ除外対象、保存する世代の設定、バックアップ通信の帯域設定なども可能。作業時間と作業時間外を指定してそれぞれ帯域設定可能。この作業時間は何時から何時と1時間単位設定が可能、作業日時も日曜ー土曜のように曜日で設定。

んでバックアップストレージを作成して土曜日の20:57にまず手動でバックアップスタート。で、結果。

2015/11/28 20:57 バックアップ開始
2015/11/29 17:45 バックアップ終了
総データ量:41,794MB
バックアップサーバーの物理配置:バンコク市内
バックアップ先ストレージリージョン:東南アジア
バックアップ使用回線:AIS Fibre DL/UL 15Mbps/5Mbps
所要時間:20:48 > 1248分(帯域制限などの設定はなし)

41,794/1248*60=
2009.3269
約2,009MB/h

というような結果。

ちなみにちゃんと他のPCやサーバーで別ロケーションからでもバックアップストレージ作成の際の証明書とバックアップ作成時のパスフレーズさえ揃っていれば簡単にファイルを取り出せるので中々扱いやすいです。

socksサーバーをConohaのVPSにインストールする その2 2015年11月27日

google-mini-server-porn_22aug2008_7324

さてsocksサーバー構築の続きです。

しかしまた、socks5のセットアップ情報も日本語では少ない。当然使ってる人が少ないからだろう。とりあえずsocks5のサーバーとしてはdanteというパッケージが有名らしく、それを入れることにする。

Dante – A free SOCKS server
↑ Danteの本家サイト

通常CentOS6でバイナリをインストールする際に使うyumにもdanteは用意されていない。調べてみるとrpmでならバイナリが用意されているようでrpmforgeというrpmのレポジトリをyumに追加してそこからインストール。

[root@localhost ~]# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
[root@localhost ~]# rpm -ivh rpmforge-release-*.rpm
[root@localhost ~]# yum -y update

% vi /etc/yum.repos.d/rpmforge.repo
### Name: RPMforge RPM Repository for RHEL 6 – dag
### URL: http://rpmforge.net/
[rpmforge]
name = RHEL $releasever – RPMforge.net – dag
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge
mirrorlist = http://mirrorlist.repoforge.org/el6/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1

yum -enablerepo=rpmforge info dante*
yum -enablerepo=rpmforge install dante*

これでとりあえずdanteのパッケージはインストール完了。

あとは設定ですが、設定ファイルの構成はシンプル。基本的には/etcの下のsockd.conf と socks.confの2つのファイルをviなどで編集するだけ。さらに今回みたいにインターネット上にサーバーを配置するならユーザー認証で認証されないと接続できないようにすると思うが、基本的にsquidのbasic認証のようにユーザー名とパスワードをsocks用に別途用意するのではなく、ホストに登録されているユーザー名とパスワードを利用するのでsocksを利用するユーザーを新たに用意して、ログインシェルをnullか/sbin/nologinを割り当てておく。

基本的にsocks.confでは

route {
from: 0.0.0.0/0 to: 0.0.0.0/0 via: direct
proxyprotocol: socks_v5 # server supports socks v5.
}

このように from: x.x.x.x/x to: x.x.x.x/x でACL指定(このサーバーはインターネット上にあり、アクセス元もGlobal IPがDHCPで変更されるので特に制限はしない記述)とサーバーでサポートするプロトコルの指定。基本的にこれだけで記載した。

sockd.confは

logoutput: /var/log/sockd.log

ログの出力をファイルに指定して、

internal: x.x.x.x port = 1080
external: x.x.x.x

でPCから接続を受け付けるIP→internal、socksサーバーから出て行く通信の送信元IPアドレス→ externalで指定する。今回はinternal = external というように同じIPになった。仮想IPを割り振ってサーバーを運用してる場合でもこのinternalとexternalに同じようにどんどん併記していけばちゃんと1のアドレスから入った通信は1から出ていき、2のアドレスから入った通信は2から出て行くように動作していた。

# methods for socks-rules.
socksmethod: username none #rfc931

# methods for client-rules.
clientmethod: none

ここに後述する詳細ポリシー設定の際に使用するアクセス方法を記載しておく。ここに書いていないと後のポリシーの記述内で指定しても有効化されない。ちなみにclientmethodの記載はPCからsocksサーバまでの通信、socksmethodに関してはsocksサーバーから外部の宛先までの通信に適用される。

user.privileged: root
user.unprivileged: nobody

これらはsocksのサービスが稼働する際のユーザー権限の設定。でいいはず。

client pass {
from: 0.0.0.0/0 port 1-65535 to: 0.0.0.0/0
log: connect disconnect error
}

socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
protocol: tcp udp
user: AAAA
log: connect disconnect error
}

後はこれらのポリシーの設定をしてあげる。先も言ったようにclient passがPCからsocksサーバーまでの通信のポリシー、socks passがsocksサーバーからアクセス先サーバーまでの通信のポリシーとなる。上記ではclient passではすべてのアドレスからすべてのアドレスへすべてのポート番号で許可して、通信のログをちゃんとファイルに出力しますという指定だけしている。

socks passも同じく通信の制限はほとんど課さず。サポートするプロトコルをtcp、udpと指定して同じくログ出力の記述。登録されたユーザーだけが使えるようにsocks pass内にmethod: username を追記して終わりかと思ってたが、なんでかうまく動作しない。数時間トライしたが、最終的にmethod: usernameではなく、user: <ユーザー名> というふうに記載したらとりあえずユーザー認証が正常に動作してくれた。

ffftpでsocksの指定をしてユーザー名、パスワードを設定してちゃんとftpサーバーに接続出来た。socksサーバーのユーザー名、パスワードを削除して接続しようとしても接続失敗するのも確認してとりあえず設定完了。

多分こんな感じでいいはずだ。。。

で、結局テストのみで最終的に使うことなく終わる。勉強する機会を与えて頂いてありがとうございました。。。これがなければ触る機会はなかったな。。。

以下参考にさせてもらいました。

danteでSocks Proxy — command not found:
SOCKSサーバ Dante インストール – moremagicの日記
↑ インストールに関して。日本語サイト。

sockd.conf(5): Dante server config file syntax – Linux man page
↑ 英語サイトだけどconfファイルのオプションの説明詳細が豊富。本家サイトのドキュメントより役に立つ。

socksサーバーをConohaのVPSにインストールする その1 2015年11月26日

server room

今月は自分でやってるVPN・プロキシ関連でインターネット経由での問い合わせがバンバン来た月だった。その中でとある方からのリクエストでクラウドのサーバーにsocks5のプロキシを立てれないか?というご要望。

「socks5?socks5?。。。そういえばブラウザのプロキシ設定の中でそのような言葉を見かけたような。。。」

SOCKS – Wikipedia

そう、個人的な記憶ではWindows / Internet Explorerのプロキシ設定や古くはNetscape、今はMozilla Firefoxなどのブラウザのプロキシ設定の項目で90年代からsocksはすでにあったように思う。20年弱インターネットに触れてきて始めてsocks5の単語を人が話しているのを聞いた(見た)。「こんなもの、誰が使ってんだ??」と思ってたがやっぱり少なからず使ってる人は居るのね。

で、ものの試しにセットアップ。Conohaというこれまた格安でVPSのインスタンスを貸し出してくれるサービスで手馴れているCentOS6.6のVPSを1つ借りてセットアップスタート。

ConoHa

しかし問題は、socks5、自分は今まで使ったことがないだけでなく、全く使い方がわからない、一般的にもどう使われてるのかわからない、という問題が。つまりどのような機能が実現されればOKなのかすら分からなかった。。。

んで、それもまたいろいろ調べて行ったらどうもsquidのようにHTTP/HTTPSのみではなくいろんなプロトコルをこのサーバーが中継してくれる。

[ PC ] <- 1 -> [ SOCKS ] <- 2 -> [ アクセス先サーバー ]

このように1と2の通信は別セッションになってて1はPCとSOCKSサーバー間、2はSOCKSサーバーとアクセス先サーバーの通信となってるところを見ると動作はsquidみたいな感じだが、役割的にはこのSOCKSサーバーを企業LANとインターネットの境界においてFirewallのような役割を持たせるようだ。昔の「アプリケーションゲートウェイ型のFirewall」のイメージか?SOCKS自体は中継のプロトコルとして定義されていてレイヤー5で動作するみたい。通信を行うクライアントのプログラムはSOCKSのプロトコルを実装している必要があるとのこと。

ファイアウォール(パケットフィルタリングとアプリケーションゲートウェイ)、DMZの仕組みや特徴について

んで調べてみるとどうやらWindowsのFTPクライアントであるffftpはFirewall経由でのFTPをサポートしていてそのFirewallにsocks5サーバーを指定できる。なのでとりあえずffftpでこのsocks5サーバーを経由して問題なくFTPでputやgetができればとりあえず動作確認完了ということにしてセットアップを試みるのであります。

長くなったんで ~その2~ へ続く。