エンコードされた文字列をデコードするサービス

土曜日に、会社でもくもく会があり、その時つくったWebサービス。

「文字化けデコーダー」

http://tkn.jp/mojibake/

以下のエンコード形式の文字列のデコードに対応しています。

  • URL Encode
  • HTML文字参照
  • HTML実態参照
  • Base64 Encode
  • MIME Encode
  • uuencode
  • PHP serialize
  • PHP hex2bin
  • Quoted Printable
  • JavaScript String
  • Json 整形

システム開発やっていると、ログとかエラーメッセージとか、マルチバイト文字がデコードされずに表示される場面にたまに出くわすので、その時にスマートに解読できるのを作ってみました。

これから地味に少しずつ育っていくと思っています!

ま、エンコードマニアックス(http://encodemaniax.com/)という、定番サイトのほうが機能豊富で使いやすいので、オススメです!

WPのxmlrpc.phpを狙った攻撃

WordPressは世界中でかなり使われていることからいろいろな攻撃を受ける可能性が高いようです。

本日、サーバのロードアベレージが170近くまで上がっていたため、全く反応がなくなってしまいました・・・

ログを見てみる(ログイン~ログ参照まで15分位・・・(泣))と、xmlrpc.php にひたすらPOSTし続ける輩が・・・

85.159.237.219 – – [10/Jan/2016:15:35:10 +0900] “POST /xmlrpc.php HTTP/1.0” 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
85.159.237.219 – – [10/Jan/2016:15:35:20 +0900] “POST /xmlrpc.php HTTP/1.0” 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
85.159.237.219 – – [10/Jan/2016:15:35:20 +0900] “POST /xmlrpc.php HTTP/1.0” 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
85.159.237.219 – – [10/Jan/2016:15:35:11 +0900] “POST /xmlrpc.php HTTP/1.0” 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
85.159.237.219 – – [10/Jan/2016:15:35:12 +0900] “POST /xmlrpc.php HTTP/1.0” 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
85.159.237.219 – – [10/Jan/2016:15:35:21 +0900] “POST /xmlrpc.php HTTP/1.0” 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”

まずは、Apacheを止め(こちらも止まるまで5分位かかった・・・)、httpd.conf で、xmlrpc.phpを403にするFiles設定を行い、Apacheを起動。さらに下記をインストールしました。

https://ja.wordpress.org/plugins/disable-xml-rpc-pingback/

攻撃自体は止んでいませんが、Apacheプロセスが生成されなくなった為、問題なく動作するようになりました!!

ワンタイム年賀状

年賀の挨拶といえば年賀状、ワンタイムで年賀状メールを作成するサービスを開始しました。

今回は、日頃のご利用を感謝し、お年玉くじ付き年賀状のコンセプトで制作しました。

http://www.onetime-mail.com/nenga

是非、ご利用ください。

Orange PI PC でペット監視

先日我が家にやって来た、にゃんこ2匹を、リモートで確認できるようにしたのでメモ。

ポイント

  • 激安&低電力PC、OrangePiを使う (おなじみ$15 PC)
  • Webカメラ Logitech WebCam C270 (Amazonで1200円位)
  • OSは、OrangePI_Lubuntu_Vivid.img を使用

はまった点

  • Lubuntu起動後の挙動がおかしかった。低解像度、ネットつながらない、USBが1ポートしか動かない等。
    ⇒ SDカードをWinで開き、script.bin_xxxxx[解像度]xxxx、uImage_OPI-2 をRename ⇒ 再起動で解決 
  • WebCamをキーボードのUSBハブに接続して中途半端に認識 ⇒ /dev/video0 が見つからない
    ⇒ 本体USBに直接接続で解決
  • motion -n で起動するも、セグメント内の別PCから画像が見えない 
    ⇒ motion.conf  で、stream_localhost off  ⇒ localhost 以外からアクセスできる
  • LubuntuのChromeからだとうまく表示されなかった 
    ⇒ spt-get install midori で解決
  • Lubuntuで日本語化したくてLanguageSupportを実行するも何故かGUIが落ちる
    ⇒ apt-get install zenity  を実行し解決

motion.conf 変更点

  • width 1024
  • height 768
  • framerate 2
  • output_pictures off
  • ffmpeg_output_movies off
  • text_double on
  • stream_localhost off

実際の映像

http://nanopico.club

15$ Orange PI PC でUbuntu-Mate

Orange Pi のコミュニティーの人が非公式で公開しているOSイメージのUbuntu-Mate をインストールした後に行った作業を記します。

  • ルートパーティション容量の拡張
    1. df    で / が使用している容量確認⇒97%だった
    2. sudo fs_resize
    3. y キーを押下
    4. sudo reboot
    5.  df で / が使用している容量確認⇒2%になった
  • 日本語表示化(調査途中)
    1. Systemから、Control-Centerを開き「Language Support」を開く
    2. Updateするか聞いてくるのでUpdate⇒そこそこ時間がかかった
    3. 「Install/Remove Language…」ボタンをクリックしてJapaneseをインストール⇒こちらもそこそこ時間がかかります
    4. ※日本語が選択可能になり、一覧の一番上に持ってくればOKなはずだが、一覧の選択肢に出てこない・・・
    5. rebootしてChromeを開いたら、Chromeについては日本語が表示されるようになった
  • 日本語入力化
    1. コンソールを開く
    2. sudo apt-get –install-recommends install fcitx-mozc  を実行
    3. ※今日はここまで
    4. sudo apt-get –install-recommends install fcitx-mozc fcitx-libs-qt5 fcitx-frontend-qt5

 

OrangePI PCを買ってみた…電源入らない?!

$15の世界最安PCとして話題のOrangePI-PC(オレンジパイ PC)を購入してみた。

orangepi_pc

 

 

 

 

 

 

 

 

 

まだネット上の情報も少なく人柱的要素が強い中、まあ値段も安いのでものは試しということで。

ここで買えます

※アダプタも$5程度なので、一緒に買いましょう!!

で、10日位かかって到着、中国郵政と書いた箱で無事送られてきました・・・

ここで、私、まずおきな間違いをしてしまいます。さっそく電源をつないでみようとマイクロUSBに給電・・・全く何も起こらず。そうです。OrangePI-PCはACアダプタによる給電が必要とのこと。手近にあるアダプタを調べ、どうやら昔買ったUSB-MOドライブやポータブルDVDドライブのアダプタがアンペア的にも使えそうなのでこれを刺してみました。

これで結果的には、問題なく動作しているのだが、当初は、パワーランプが点灯しないという状態に。まさか故障しているのか!!と思ってしまって、その後しばらく諦めていました。

ようするに、

電源アダプター接続 ⇒ LAN端子のLED点灯 ⇒ SDからOS読み込み ⇒ 電源のLED(赤)点灯

のような流れとなるのだったのです。

また、OrangePI公式OSのDLページのOrangePIのモデルが複数あり、当初誤ってOrangePI-PCではないモデルのOSをSDに焼いていたことも、パワーLEDの点灯しない原因調査を複雑にしてしまっていました・・・

OrangiPI公式ページからOSをDLすると、何かとても遅い為、また、OSに若干不具合があるとの書き込みもあり、最終的に今回はコミュニティーの方が独自に作ったUbuntu-MateをD/Lしてみました。

ここでOSをダウンロードできます

上記ページの中で「OrangePI-PC_Ubuntu_Vivid_Mate.img.xz」というやつです。

また、「scriptbin_kernel.tar.gz」もD/L、解凍し、お使いの環境にあわせて、script.binファイルを
上書きする必要があるようです。

私の場合は、「script.bin.OPI-PC_1080p50_dvi」を使用しました。

手順は、Ubuntutイメージを「Win32DiskImager」にてSDに焼いた直後に、WindowsでSDを開いて上書きコピーするだけです。あとはOrangiPIにセットしてGo!

orangepi_ubuntumate_install

 

 

 

 

 

 

 

 

 

無事、赤色LED点灯し、写真のようにUbuntuが動きました~~。

2点気がついたこととして、①日本語文字化けを直す必要あり ②Youtube再生していたらCPUの発熱が半端ないこと。①はロケール関連の設定すればなんとかなる?②はヒートシンクつけようかと。ヒートシンクはラズパイ用のをヤフオクで220円(送料込み)で落札しました。何と親切な価格設定!

それでは以上、OrangePI-PCの、人柱レポートでした。

FreeNASによる家庭内FileServerの構築

FreeNAS9.3をHP MicroServerNL54にインストールして、家庭内のFileServerを構築しました。 写真や撮影動画、年賀状データなど、いろいろ安全に保存することを目的としています。

FileServerの特徴

  1. なるべく低消費電力(以前ラズパイで作ったNASよりは増えるが・・・)
  2. 安全に、古い低容量のHDD(SATA)の有効活用
    ⇒ いつ壊れるかわからない為、RAID-Z2(ダブルパリティ)によりDISK障害が2台までOK
  3. HDD交換時に容量を増やすことが可能
  4. 全データのデイリースナップショット、デイリーバックアップ
  5. (予定)iPhone/iPad、REGZA等から再生可能なメディアサーバーとしての利用
  6. (予定)外出先からクラウド的に、DropBoxのような使い方

 

構築手順

  • BIOSの設定 F10押す
  • Advanced PCI Express Configuration 32MB(デスクトップOSではないので128MBは不要)
  • Boot USB 1St,2ndにUSBメモリが来るようにする
  • FreeNAS最新をD/L
    http://www.freenas.org/download-freenas-release.html

  • FreeNASのISOイメージをUSBメモリに焼く
    Rufusというツールを使用する。書き込み先を間違えないように要注意!
    https://rufus.akeo.ie/

  • サーバにLAN、Keyboard、Display、USBスティックを接続

  • FreeNASインストーラが立ち上がる(立ち上がらない場合はBiosでUSB起動になってるか確認)

  • USBドライブ2つをチェック”*” する(これでミラー:Raid1的になる)

  • パスワード設定:root/xxxxxxxx

  • インストール始まる⇒すごく早い。3分くらい掛かる。

  • CUIのメニューが起動したら表示されているDHCPのURLに対して別マシンからブラウザで接続

  • ブートドライブ(USBメモリ)ミラーの故障テスト

       1)  Bootディスクの片方を引っこ抜く
       2)  Degradedになる(赤ランプ)
       3)  新しいUSBメモリまたは、引っこ抜いたUSBメモリをフォーマットしたものを差し込む
       4)  システム⇒Boot⇒状態でDegradedのディスクをクリック⇒画面下の「replace」または「交換」ボタンを押す
       5)  新しいディスクを選択⇒しばし待つ⇒正常(緑ランプ)になる

  • SATAディスク装填
    ※いろいろな古いSATAを取り混ぜてもOK
    ※ただし下記の場合、160GBが最小なので、(160GB×6台)-(160GB×2台…パリティ分2台固定)=640GBが有効容量となる

    ada0 WMAYP0E94WPR 500.1 GB Auto Always On Disabled Disabled true
    ada1 WD-WMANU1464793 500.1 GB Auto Always On Disabled Disabled true
    ada2 L3ACAQTG L3ACAQTG 160.0 GB Auto Always On Disabled Disabled true
    ada3 L3ACAM9G L3ACAM9G 160.0 GB Auto Always On Disabled Disabled true
    ada4 WD-WCAZA1150268 1.5 TB Auto Always On Disabled Disabled true
    ada5 S1XGJ9CS602168 1.0 TB Auto Always On Disabled Disabled true

  • USB外部ディスク(バックアップ用)接続

    da1 3.0 TB Auto Always On Disabled Disabled true

  • USBディスクが起動しないようにBIOSで優先度下げる

  • ボリュームの作成

    tmp_home_3t 304.8 GiB (10%) 2.4 TiB – – HEALTHY
    tmp_home_3t 304.8 GiB (11%) 2.3 TiB lz4 1.07x –
    raid_z2 200.5 GiB (22%) 679.5 GiB – – HEALTHY
    raid_z2 133.5 GiB (23%) 434.3 GiB lz4 1.08x –

  • autoexpandを有効に

    Shellから raid_z2,freenas-bootのautoexpand を onとして、一番小さなのHDDの容量が大きくなった際に、自動で raid_z2 の容量が大きくなる。

    [root@freenas ~]# zpool set autoexpand=on raid_z2
    [root@freenas ~]# zpool set autoexpand=on freenas-boot
    [root@freenas ~]# zpool get autoexpand

    NAME PROPERTY VALUE SOURCE
    freenas-boot autoexpand on default
    raid_z2 autoexpand on local
    tmp_home_3t autoexpand on local

  • Smart情報を監視してアラートをメールする。
    Tasks⇒S.M.A.R.Tテストの追加

  • メール送信設定
    アカウント⇒ユーザ⇒Rootのメールを設定

    システム⇒メール⇒
    メールサーバ設定
    xxxxxxxxxxxxxxxx
    送信元
    xxxxxxxxxxxxxxxx

  • IP固定化
    ネットワーク⇒インタフェースの追加
    NICを選択
    IPアドレス入力
    192.168.1.74

  • ネットワーク⇒全般設定
    DNS 192.168.1.1
    8.8.8.8
    GW 192.168.1.1

  • CIFS設定
    文字コード
    cp932

    補助パラメータ(レグザ向け)
    unix extensions = off

 

以上となる。

ラズベリーパイ2

欲しい!

ワンタイム「はんこ」サービス

社内の電子書類の承認印に最適!!

ワンタイム「はんこ」サービスを作りました。

ワンタイムはんこ

WordやExcelに貼り付け可能な押印証明つきの「はんこ」を簡単作成!

 

 

 

 

あなたの名前(苗字)とメールアドレスを入力するだけで、あなたの押印を証明するリンク付きの画像を簡単に作成できます。

WordやExcelに貼り付けすれば、あらゆる書面の承認印として利用することが出来ます。

※公的な文書や通常の印鑑の代わりとしての利用はできませんのでご注意ください。

ワンタイムマシンメール

未来や過去にメールを送れる!?

ワンタイムマシンメールサービスを作りました。

ワンタイムマシンメール

ワンタイムマシンメールは過去や未来にメールを送信します!!

 

 

 

 

使い方は簡単。未来や過去の日付を入力して「送信」ボタンをクリックするだけ。

あなたも、未来の自分にメッセージを贈りませんか?