タグ: cloud

日本への引っ越し準備とアカウント切替準備 2017年09月08日

2 billion USB equipped devices ship each year

15日の飛行機で日本に移動するのでいろいろと引越し準備をしております。とりあえず彼女がバンコクには残るので家電などはそのままにして自分のもの(主にガジェット系)は断捨離して基本的に日本に行く際にはバックパック + スーツケース20kg のみにするつもり。後はまた日本で買えばいい。

しかしもうひとつ大きな引越し作業があります。それがApple IDのタイ>日本への引越し作業。所得の多くを日本に頼ることになるので日本に戻ったタイミングでアカウントの所属してる国をタイから日本へ切り替えたい。ただ、国を切り替えたところでどうも今まで購入したアプリは引き継げないようなので、それなら新しく日本のApple IDを作成してしまったほうがいいかと考えてます。

しかしアカウントを変えるとなるとiCloudバックアップされてるアプリデータも引き継げないし(LINEのメッセージ履歴とか)、iTunes Matchでmp3は全部クラウド化してるんだけど、当然それも引き継げない。今までの写真データも手元に持っておかないとインポートできない。

というわけでとりあえず消えるとホントに困る写真データとmp3を手元の2TBのHDDにバックアップしようというわけでございます。

写真データ
こちらはMacBook Proの写真アプリに入っている過去写真にiPhoneに入っている直近の写真データをインポートして最新版にしたところでその写真アプリデータを外付けHDDにコピー。データサイズは約130GB。iPhoneの写真インポート+外付けHDDへのコピーで約4時間。これぐらいならまだ大した時間ではないね。

音楽データ
こちらが問題。データのほとんどはタイのApple IDに紐付いたクラウドの中にあるので一度ダウンロードして外付けHDDにコピーしないといけない。予めiTunesのデータ格納場所を外付けHDDに変更した上で全楽曲データをダウンロード開始。。。
ダウンロード開始時点から約15時間でFinder上ではmp3のフォルダのサイズが30GB。うーん、ということは全体では75時間かかる??まあとりあえず金曜日の出国の時間には間に合うか。。。ただ作業が終わるまではMacBook Proが外に持ち出せないようになってしまった。。。

さらに言うと外付けHDDをバックパックにつめて飛行機で移動ってのは衝撃や磁気が心配なので別のOneDriveなどのクラウドにデータコピーしておくかSSDにコピーして持ち帰りたい。時間的に別のクラウドへアップロードする時間はなさそうなので512GBのSSDぐらい買うかなあ。。。

これで日本に帰って日本のApple ID作ったらこれらの大量のデータをインポートするわけですが、よくよく考えたら別のクラウドにデータをバックアップしておくという場合も新しいアカウントにデータをインポートする際に再度該当PCにデータをダウンロードしてくる必要があるし、そこがまためっちゃ時間食いそう。なのでやはりSSDか。

いや、あまりプラットフォームに依存しないものにそれらのデータを持っていったほうが以降楽そうな気もするな。日本で数年過ごした後また海外に、という場合はまたそこで新たなApple IDにデータインポートするダル作業が待っている。

写真は現状有料アカウント持っているFlickrかGoogle Photo(タダだし)でいいかとも思うけどmp3の管理がイマイチいいとこがなくてやっぱりiTunesになってしまう。。。

というわけで引っ越し+財布紛失+データ整理で大変です。

WithingsのWiFiスケール Body 2016年12月18日

image

自動記録、自動グラフ作成の体重計

毎朝毎朝ちゃんと体組成計に乗っていてきっちりとスマホで結果を記録してます。

定型文アプリで体重計の表示を見ながら全データを手打ちして最後に全部コピーしiPhoneのメモ帳に保存してます。手間はそれほどかからないけど、何年もやってるとやっぱり多少の手間が億劫。

んで、WIFIでクラウド上にデータを保存してくれる体重計を買ったわけです。

これで一日何回体重を測ってももれなく記録。さらにいいのはちゃんとグラフを作ってくれる。ま、コンピュータ使うんだから数字を分析してグラフを表示するのは当たり前ですわな。

以前15kg落とした時にモチベーション管理でグラフ作ってましたが、通常時にメモアプリでメモって、それをまた表計算ソフトに取り込むなんてめんどくさくて到底出来ない。

でもWithingsは自動。これが良い。

1日の時間帯ごとに計測してどの時間帯が一番体重が増えるかなどを確認することも簡単で目立たないけど何気にいい機械です。

こう言った身体データこそ本当にライフログとして長々と記録していく価値があると思います。

開封

image

image

image

開封して、Withingsの電源入れてみたらAppleで最近はあまり見られなくなったHELLOのグリーティング表示が。

この体重計、酒飲み始めたのでちゃんと体重の推移見ながらやってかないと簡単に太ってしまうなと思ってましたが、すでにビール飲み始めてから2kg程肥えました。効果てきめん。危ないね。

こんな元々の昨日は単純な家電ですがお値段は結構します。5,780THBしました。でもまあいいかな。自分では絶対テキストメモまでで推移見たり、グラフ出したりはしないから。。

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~ へ続く。