MacBook Air 13″ Mid2013 を触っていろいろと 2013年06月26日

MacBook Air
“MacBook Air” photo by Kazuho Okui

今週物欲に負けて2013年の新型Macbook Air 13”を購入してしまい、仕事にプライベートにと使っております。その中で気づいた点を。

・Firefox 22 for Mac

最近はGoogle Chromeから抜けだしてFirefoxをメインブラウザに使っています。なんかChromeは重い印象があるのと(Macだけ?)、Google Readerの処分に現れているように、依存してるとGoogleの大きな仕様変更の際に自分の作業が大きく影響を受けてしまう可能性があるのでちょっとGoogleアンダーから外れることを考えました。んでfirefox。そういえば職場でのメーラーは2006年の現在の会社入社時からずっと頑なにThunderbird使ってますな。他のマシンへの移行やバックアップがめちゃくちゃ簡単なので使い続けております。

話それましたが、Firefox 22。これをMBA13″に入れて使ってたがなんかどうもRemember the milkのFirefoxプラグインの”A Bit Better RTM”がなぜかうまく動かない。。。いろいろ試してもダメだったので、自宅のMac miniでちゃんと動いている環境と同じく、Firefox21にバージョンを落としたら動いた。多分22だとA Bit Better RTMが動いてくれません。。。

・ntlmaps

前のWindowsマシンではDropboxで会社のファイアウォール超えるときにNTLM認証がうまく通らず、Python+ntlmapsを入れていた。これはISA Serverなどのマイクロソフト製のFirewall製品で使われるNTLM認証でのユーザ認証を肩代わりしてくれるPythonスクリプト。今回のMBA13″も当然、ntlmaps入れて使うことを考えていたが、OSのプロキシ設定に会社のプロキシを入れるだけでEvernoteも動くし、ブラウザも他のツールも意外や意外でちゃんと動いてくれる。で結局インストールしたものの出番がない状態。。。しかし、さすがMacは純正Unixで標準でPythonもインストールされているからインストールが楽でいいね。起動時に常に立ち上がるようにしたければコマンドの内容をテキストファイルに書いて”ファイル名.command”を作成して自分のアカウントのログイン項目にひもづけておけばログイン時に毎回起動してくれる。

いやー、しかし各動作ほんとにきびきび早い。実に使っていて気持ちいい。そして生まれて初めてMacの動くコンピュータを同時に2台所有することになったので母艦のMac miniはRemoteでMBAから接続できるようにして操作してみたが、MacのRemoteツールも安定しててそれなりによくできてる。

ホント、5,6年前から比べて成熟してきたねえ。

とりあえず仕事用にVISIOだけは使えないと問題出るのでParallels Desktopにあと一年はWindows XP入れて必要な時だけWindows XP使う。あとプライベートは少なくともMBA13″が引退するまではMacオンリーですな。多分何も問題ないはず。

あとやっぱ13”ってちょっとでかいかも。ちょっとだけ11”の256GBでもよかったかな?とか思います。でもXcode触ったり、エディタでhtmlいじったりするときは13”のほうがアドバンテージ高いと思うので、ちゃんとその辺の作業もやろうと思ってます。。。

ちょいとクセのあるntlmapsを入れるには 2013年04月08日

firewall
“firewall” photo by ukaszSie

今回、ソンクラン休暇の作業として仕事用の自前PCの再セットアップを行ったが、初めてWindows8環境をインストール、いろいろ四苦八苦やってますが、その作業のひとつでntlmapというツールのインストールがあった。

このntlmapsというのは「NTLM Authorization Proxy Server」と言いまして、会社のネットワークなどでFirewallやプロキシがMicrosoft Forefront Threat Management Gateway(旧ISA Server)で組んである時などにDropboxやその他、HTTP/HTTPSでバックセッションを張るアプリがことごとく繋がらず、せっかくの便利なウェブサービスのいくつかが使えなくなってしまうことが多い。

それをこのプログラムがForefrontとの認証部分を肩代わりして行い、バックセッションはこのntlmaps経由で認証を必要としない通信経路で通信が可能になるというもの。これをセットアップするのだ。

とりあえずこのntlmaps、プログラムの実態はPythonスクリプトなんでPythonの実行環境をインストールしないといけない。なのでPythonのページからとりあえずインストーラーをダウンロード、インストール。その際必ず2.xのバージョンのものを。3.xでインストールしてntlmapsでエラーが出まくり、原因切り分けにすごい時間かかったが結局僕の環境の場合2.7でちゃんと動きました。Pythonは1.5.2 or higherで動くと書いてあるのに。。どこまでテストしてるんだろう?

その後、ntlmapsをダウンロード。ntlmapsは.exe形式のインストーラーパッケージもあるんだが、これはPythonを使ってないのかPythonのインストールを必要とせず、単体で動く、、、はずなんだが、MSVCR71.dllが見つかりませんというエラーが出る。どこかからこのMSVCR71.dllをコピーしてきてインストールしても、エラーは出続ける。。というわけでこちらは使えません。

んで本来のスクリプトで配布されているものは基本的にスクリプトなのでzipかtar.gzで提供されていて、インストーラーはない。なので解凍後、フォルダをまるごとProgram Filesなどの中にコピペし、server.cfgファイルを編集。ほとんどの環境は以下のNTLM_AUTHの項目の修正だけで動くんじゃないかな。

PARENT_PROXY_PORT: プロキシサーバーのポート番号
NT_HOSTNAME: PCのコンピュータ名
NT_DOMAIN: 参加しているドメイン名(FQDNではなくNTドメイン名)
USER: ログインユーザ名
PASSWORD: パスワード(平文で保存されるので注意。ここに記入しなければ立ち上げ時に毎回手入力することになる)

んで、main.pyを実行するんだが、runserver.batが用意されている。中身は

@echo off
“C:\program files\python\python.exe” main.py

という単純にmain.pyをPythonに読み込ませるだけのスクリプトだが、Pathが間違っている。これを

@echo off
C:Python27\python.exe” main.py

という風に入れたPythonのモジュールのパスに合わせてノートパッドはその他のテキストエディタで修正。この条件でとりあえず動くはず。後は毎回PC起動のたびに自動起動してくるようにstartupのメニューの中などにこのrunserver.batのショートカットを放り込んでおけばとりあえず完了。

という手はずをよくよく考えたら半年ほど前にOSインストールしなおした際にやったはずなのにすっかり忘れてて1日なぜ動かないのかと悩みまくりました。。なのでちゃんと備忘録をココに。


※ 2013/04/09 update!
上記でセットアップしてもちゃんと外部とつながらないという人は以下の部分を編集してみるといいかも。

# These two options replace old FULL_NTLM option.
# NTLM authentication consists virtually of two parts: LM and NT. Windows95/98 use
# only LM part, WindowsNT/2000 can use NT and LM or just NT part.
# Almost always using just LM part will be enough. I had several reports
# about LM and NT requirement and no about just NT.
# So try to setup 1, 1 only if you have enough reasons to do so and when you understand
# what you are doing.
# 0, 0 is an illegal combination
# NOTE: if you change these options then you have to setup flag option accordingly.
LM_PART:1
NT_PART:0

# Highly experimental option. See research.txt for details.
# LM – 06820000
# NT – 05820000
# LM + NT – 07820000
NTLM_FLAGS: 06820000

こちら、Windows95/98の使ってた方式だとLM、WindowsNT/2000からだとNTで認証を行うようです。ISA Serverなどのバージョンの古いものだと、ntlmaps標準のLM_PARTのフラグが立っている状態で通信できるんだろうけど多分ForefrontTMGぐらいのバージョンになるとLMの方式を切り捨ててるのじゃないかと推測。なのでNT_PARTのフラグを立てたり、両方立てたりで試してみてうまく動作しないかの確認をするのが吉だと。

ちなみに上のLM_PART、NT_PARTを編集したら下のNTLM_FLAGSも一緒に変更すること。書いてあるようにLMだけ1にしてフラグを立てた時は06820000、NTだけ1にした場合は05820000、LM+NTの両方の場合は07820000を書いておくこと。繋がらない時はこれを全部の組み合わせで一度試してみる事をオススメします。