URLデコードをワンライナー(one liner)で

wordpressのパーマリンクをタイトルにしてしまった関係で、apacheのログがURLエンコードされた状態で出力され非常に可読性が悪い。

そんなに気にしてなかったが、やっぱりどの記事を見てるのかわからないので、簡単なワンライナー無いかなと調べた。

ワンライナーならperlだろうと思っていたが、簡単そうで行き着いたのは、rubyだった。

以下

ruby簡単だけど覚えられるか・・・

 

さらに調べると、nkfが対応していた。

メッチャ簡単。

これなら覚えられる。

 

因みに、perl

意外と簡単。

 

折角なのでpython

 

うーん。まー入っていればnkf一択ですね。

中国からの通信を他サーバに誘導

前回中国からの通信をiptablesで全ブロックする方法を書いたが、それじゃあんまりだということで

中国からの接続は、他のサーバを見てもらえばいいんじゃね。という発想になった。

bindのview機能は、接続元のIPによって返すレコードを変える機能だが、普通は社内と社外とで切り替えるために使われていると思う。

今回このview機能で、中国の方には、他に用意したサーバをご利用いただくという方針を考えてみた。

ただ、問題はある。

  • 別途WEBサーバの用意が必須。
    中国の方々専用。本番WEBで動的処理とかやってたら、そういったものは無くし静的なページにすればいいと思う。
  • DNSはセカンダリも管理してること必須。
    キャリアとかのセカンダリだと、外部向けに公開されているレコードだけ同期されるので
    細かいviewの設定とかは無理。

ということで、実現できる環境は少ないとは思うが、view内に記述する match-clients 形式で、作ってみた。

中国用match-clients (cn-match-client.txt)

韓国用match-clients (kr-match-client.txt)

毎日更新 (2015年以降更新されておりません)

別途用意するサーバでは、ガチガチなセキュリティが普通だと思うけど、あえて脆弱にしてハニーポット的な使い方しても面白いと思う。

まー。まず実現できる環境は少ないと思うけど。。。

linuxで中国からの通信を遮断

ニュースを見ていたら、9月18日は、中国からのサイバー攻撃が増えるらしい。

参考

理由は歴史的な背景にあるようだが、システム管理屋としては、攻撃に対しては何らかの防御策を準備しなくてはならない。

理想は全てのシステムを、脆弱性など無い万全のものにしておくことだが、なかなかそんな理想なんて言ってられない。

ということで、手っ取り早くやるとなると、中国からの通信をブロックしてしまえばいいんじゃん。という安易な考え。

国別のIPアドレス割り当て情報は、apnicのサイトでわかるので、そちらを元にiptablesでブロックするようにした。

実際に攻撃を受けて、どうしょうもない時に、以下のファイルをダウンロードして、rootで実行

中国フィルタ用iptables(cn-filter.sh)

毎日更新 (2015年以降更新しておりません)

ダウンロードして、以下のように実行

ファイルの中身

有無を言わさずINPUTの一番目のポリシーに差し込むので、どんな環境でも使えるはず。

一応iptablesを設定するので、出来ればリモートじゃなくコンソール画面で!

最悪通信出来なかった場合を考え、cronで数分後に無効にする設定もおすすめ。

コマンドで入れ込むので、保存はされません。起動時に有効にしたい場合は、各OSの設定にしたがってください。

一度作れば簡単だったので、韓国版も

韓国フィルタ用iptables(kr-filter.sh)

androidでギタータブ

Nexus7を買ってから、普通のPC(ubuntu)を使う頻度が確実に減ったが、ギターのタブを見たい時には、どうしてもPCを起動してtuxguitarで見ていた。

ギタータブもNexus7で見れれば、もっと便利なのにとは思っていたが、別段緊急性も無いので放置していた。

んで、ちょって気になったので調べてみたら、さすがAndroid!結構あるもんですね。

2つほど試してみたが良さそうなのがこいつ

Guitar Tab Viewer

再生もしてくれるし、楽譜も再生中の箇所だけじゃなくて、結構広い範囲で見れるのでかなりよさそう。

スマホだとちょっと小さくて見辛いかも。ただズームの調整は可能。

対応形式は、

  • Guitar pro 1 (gtp)
  • Guitar pro 3 (gp3)
  • Guitar pro 4 (gp4)
  • Guitar pro 5 (gp5)
  • Guitar pro 6 (gpx)
  • PowerTab tab files (ptb)

と、まーまず間違いない。

これでまた、PC不要になるかもー。

続・山中慎介選手のトランクスに秘められた名前

以前、山中慎介の試合直後に、こんな記事を書いた。

 

試合後結構時間が経ったので調べてみたら、関連記事を発見。

 

ボクシング:WBCバンタム級世界戦 山中選手、3度目防衛 大津で祝勝会、支援者らと喜び /滋賀
毎日新聞 2013年04月29日 地方版

◇「V4も必ず達成」

東京・両国国技館で8日行われた世界ボクシング評議会(WBC)のバンタム級世界戦で3度目の防衛を果たした山中慎介選手(30)=湖南市出身=の祝勝会が28日、大津市内で開かれた。約400人のファンや支援者が駆け付け、改めて勝利の喜びを分かち合った。

防衛戦では、フィリピン出身のWBCフライ級元王者、マルコム・ツニャカオ選手と対戦。山中選手が得意の左ストレートを決め、最終十二回1分57秒でTKO勝ちした。山中選手は「相手は本当に気持ちが強く、途中から判定になるかもしれないと思ったが、最終ラウンドでKOで勝つことができて良かった」と振り返った。

幼少の頃から山中選手を支え、後援会副会長を務めた上西孝幸10+件さん(享年54歳)が今年2月に亡くなり、山中選手はトランクスに上西さんの名前を刺しゅうしてリングに上がった。「孝幸のおっちゃんもすごく喜んでくれたと思うし、力を貸してくれた。(防衛)V4も必ず達成するので声援をお願いします」と述べ、上西さんの長女桃子さん(25)からは花束が贈られた。

谷畑英吾・湖南市長は、日本ボクシングコミッション(JBC)が今月新たに二つの国際団体に加盟し、世界主要4団体の王座統一戦が可能になったことに触れ、「大舞台に立つ山中選手を見せてほしい」とエールを送った。【石川勝義】

後援会の副会長の方だったようですね。うーん。やっぱりいぶし銀。

Windows Server 2008 R2 で無料のSMART-UPS監視ソフトを使う方法

linux界隈では有名な、apcupsdを使います。

接続はUSBケーブルです。
なんか最近のSMART UPSはLCD付きになってから
付属のRS-232C->RJ-45のケーブルが使えません。

とりあえず以下をダウンロード

libusb-win32-bin-1.2.6.0.zip
winapcupsd-3.14.10.exe

UPSとServerはUSBケーブルで接続しておきます。
何もしていない時の、デバイスマネージャはこんな感じです。

libusb-win32-bin-1.2.6.0.zipを解凍してそのなかの
bin以下にある、「inf-wizard.exe」を実行します。

・Device Selectionで対象のUPSを選択します。

・infファイルを作る場所を聞かれるので、任意の場所を指定します。

・infファイル作成後、「Install Now..」で作成したlibusbのドライバをインストールします。

この時点でのデバイスマネージャはこんな感じになります。

次にapcupsdをインストールします。

winapcupsd-3.14.10.exeを実行します。

普通にNextを押すだけで終わります。

他のサイトだと、ここでドライバもインストールされて使えるようになっているような
記載を見るのですが、私の環境では使えず、結構ハマりました。

私の環境では、別途apcupsdのドライバを、インストールする必要がありました。

デバイスマネージャにて、libusbで作られたデバイスを右クリックし、
「ドライバーソフトウェアの更新」を表示します。


「コンピューターを参照してドライバーソフトウェアを検索します」を選びます。
※自動検索だと見つけてくれませんので、完全に手動で指定する必要があります。

「コンピューター上のデバイス ドライバーの一覧から選択します」を選びます。

「ディスクを使用」を選びます。

手動でinfファイルを指定します。
指定するinfファイルは、apcupsdをインストールしたディレクトリにある。apcupsd.infです。

c:apcupsdにインストールしていた場合は、

C:\apcupsd\driver\apcupsd.inf

になります。

ドライバの署名エラーが出ますが無視して進めます。

最終的にデバイスマネージャでこうなって入れば、apcupsdからupsdにアクセスが可能なはずです。


apcupsdが起動していない状態なら、「apctest.exe」で
起動している場合は、「apcaccess.exe」でステータスが取れます。

linuxでUSB LANカード

2014/3/7追記 こいつは壊れました、こっちがおすすめです。

検証や、環境構築で自分のPCに追加のNICが欲しくなったので、新規で購入してみた。今更PCI-EのNIC買うのもアレだし、使い勝手の良いUSBタイプで選定することにした。

色々と調べてみると、USB3.0では、ギガビットイーサネット対応の製品がチラホラあるようだが、まだ高いし、検証目的なら100Mbpsでも問題ないし、どうしても1Gbps必要ならオンボード使えばいいし、ということでUSB2.0のものにした。

アキバ散策してたところ、2個ほど候補を発見したが買ったのはこれ。アキバオーで売ってた。735円

中国製で、製品名はよくわからないが、型番は、 「KY-AX88772ALF」らしい。

多分amazonのこいつが同一製品。

amazonの方が安い。もはや実店舗で買う利点は無いですね。

肝心の動作だが、自分の環境(ubuntu 13.04 x86_64)では、挿すだけで簡単に認識した。NICなら大丈夫とは思っていたが拍子抜けするほどだった。

ロードされているモジュールは、

asix というやつ。

他の環境の、12.04でも同じモジュールは存在するので、最近のLinuxならまず問題ないと思う。

ちょっとしか使ってないので(認識してping疎通確認)なんとも言えませんが、
普通には使えると思います。

ただちょっと気になるのが、そこそこ熱い。長持ちはしないかも。。。

Linuxでハイフン(-)で始まるファイルを消すとき

あまりあるケースでは無いが、何かの拍子にハイフン(-)で始まる、ファイルが出来ちゃったりする。

当然ミスって作ったファイルなので、消そうと思うのだが、ハイフンで始まるとオプションと解釈されてしまい

クォートしようと、エスケープしようと消せない。そんな時の消し方は、

  • 相対パスで指定する

    カレントからのパスを指定してやれば、オプションと解釈されません

  • オプションの終わり(--)(ハイフン2つ)を宣言する

どちらでも消せるのでどっちでも良いが、オプションの終わり(--)は、たまに役に立つ時があるので覚えておくと良いと思う。

--を解釈してくれないコマンドも結構ありますが:-P

centos6のproftpdにログイン出来ない。

素のままのcentos6では確認してないので、remiレポジトリを追加してupdateした環境だけかもしれないが、
proftpdに普通のunixアカウントでログイン出来ない。

 

ログにはこんなエラーが出ている。

ネットで調べたところ、proftpdのpam設定を変更すれば良いらしい。

  • 変更前

  • 変更後

 

required pam_stack.so を include system-auth にして

 

session はごっそり変更する。

ssh多段ログイン時のチルダ

sshで何個かホストを経由してるとき、~.(チルダ ドット)で切断しようとすると、一番手前のセッションが切断されてしまう。
その場合チルダを複数入力すれば、切断したいホストに送ることが出来る。


mypc -> A -> B
にログインしてる場合

 

 

 

チルダの使い方は、manを見れば詳しく書いてあるので、
ここでは簡単な説明だけします。

  • チルダの前に一回Enterを押す
  • チルダの後ろに実行したいコマンドを渡す
    ~. 切断
    ~C コマンドライン(ポートフォワードでよく使う)
    ~? ヘルプ