2乗すること、√を付与するということ

 

結論

  • nを2乗する = 1辺がnの正方形の面積
  • nを√にする = 面積がnである正方形の一辺の長さ

 

 

1辺が12cm, 一辺が3cmの長方形の面積

12 × 3
= 36cm^2の長方形になります。

 

 

これに√をつけると

√36
= 6

 

 

この6ってなに?

36cm^2の長方形を正方形と見た時 = 1辺を平均化

 

その正方形の一辺の長さが6cmということを表します。

 

 

 

統計学の分散

 

(サンプルデータ – 平均) = 偏差

分散 = 偏差^2によって得られた複数の正方形の面積の平均

 

 

統計学の標準偏差

 

分散 = 正方形の面積の平均

標準偏差 = √分散

 

標準偏差 = 複数の正方形の一辺の長さの平均

 

 

商売の原則

 

 

利益率が高い

  • ITは良い商品、
  • プラットフォーム開発なども良い

 

 

在庫を持たない、ロスがない

  • ITならハードウェアを在庫で扱わなければ良い

 

 

定期収入

  • 毎月きちんと入ってくる、サブスクリプション
  • システム会社はシステムの保守料が大事

 

初期投資少ない、低リスク

  • 投資やリスクが少ない = 何度でも改善し試行出来る
  • 自分でアプリやサービスのプロトタイプを開発すれば、開発費は自分のみ
  • プラットフォームを開発して、ユーザさんに耕して貰う
  • パートナーとのコラボなど、自社だけですべてをやらない
    APIや外部サービスなども利用して豊かに素早く。

 

 

Thunderbird IMAPでのメールデータ複製 御引越

Thunderbird標準機能ではメール複製機能が弱いので、「Copy Folder」アドオンを追加して使って解決します。

軽いしおすすめ。

 

アドオン有効化後は右クリックから使えるようになり、
移行元から移行先アドレスとフォルダを指定して複製することが出来ます。

 

Logwatchのインストール

 

root宛メール設定

 

 

反映させる

 

メール送信テスト

 

Logwatchのインストール

 

 

 

 

動作テスト

 

 

※CentOS7の場合

※CentOS6の場合

 

メール送信テスト

 

定期実行スクリプトの確認

 

 

 

メールが飛ばない場合の対応

 

 

下記を行う

 

設定を修正します。※任意

 

動作テスト

 

 

 

 

 

 

 

 

 

rkhunterのインストール Rootkit検知

 

今回はRootkitを検知するrkhunterをインストールするTipsです。

Rootkitは不正侵入したサーバに、クラッカーがまず行うことはRootkitのインストール。Rootkitはバックドアやボットを設置、セキュリティを無効化するクラッキング用のツールがまとめられた一揃いの嫁入り道具です。

 

rkhunterはそのRootkitの痕跡を検知して教えてくれます。

何年も管理されていないサーバ、世の中にたくさんあります。管理されているサーバであっても不正侵入から気付くのは早くて100日以降と言われています。RootKit検知ツールによって異常を感知し、早期発見が被害を最小化します。

 

 

エラー対策

Warning: Checking for prerequisites [ Warning ]
Unable to find ‘file’ command – all script replacement checks will be skipped.
Warning: The SSH and rkhunter configuration options should be the same:
SSH configuration option ‘PermitRootLogin’: no
Rkhunter configuration option ‘ALLOW_SSH_ROOT_USER’: unset

 

 

 

データベースのアップデート

 

 

システムのファイル情報アップデート

 

検知用データベースのアップデート

 

 

チェックしてみよう

 

動作を確認してくださいね。

 

 

定期実行スクリプトの作成

 

 

 

 

 

これで設定はおしまい。rkhunter以外にもセキュリティ系のミドルウェアは豊富ですので、調べてもみるのも面白いかと思います。

お疲れ様です。

 

AIDE ファイル改竄検知

AIDEでファイルの改ざんチェック

寄稿しました。

 

AIDEのインストール

 

 

 

 

データファイル作成 ※初期インストール状態で 1~2分程度かかる

 

リネーム

 

改竄チェック

 

 

改ざんチェック!

 

 

aideに-uオプションをつけると、
ファイルの改ざんチェックとDBの更新を行ってくれます。

 

ログロテーション設定

 

 

 

定期実行設定

 

メールコマンドをインストール

 

定期チェックスクリプト作成

 

 

 

 

権限の付与を行います。

 

Crontabの設定

 

反映を行います。

 

 

 

vsftpd よく使う設定

 

 

 

 

 

 

 

 

ログイン後のディレクトリを指定

 

反映させる。

 

 

 

G Suite登録

 

 

事前準備

  • ドメインの取得
    今回はValue Domain

 

 

流れ

  1. Gsuiteに申し込み
    https://gsuite.google.co.jp/intl/ja/
  2. ビジネス用アカウント(管理)の作成
  3. メールアドレスの設定
    メールサーバをGmailにするので、MXレコードをValue DomainのDNSに設定
  4. ドメインの確認とメールの設定
    Google側で30分程度かかるので待つ

 

 

 

 

 

PHP Facadeパターン

 

 

 

BuyController.class.php ※Facade適用前

コントローラが肥大化する!

コントローラにModel部分の処理が入ってきている…。

 

 

 

Facadeパターンを適用する

 

Controllerで行っていたModelの処理を、Facadeクラスを作成してそちらに一元の窓口にする。Controllerがすっきりする。

 

Buyfacade.class.php

 

 

 

BuyController.class.php ※Facade適用後

 

 

@see http://hamuhamu.hatenablog.jp/entry/2015/08/16/222835

Python OpenCV 顔認証で画像保存

Python OpenCVで顔認識 画像・映像のリアルタイム加工が簡単!

寄稿しました。

 

 

Python OpenCV

 

環境

  • Python2系
  • WinPython-64bit-2.7.10.3
  • OpenCV3.1.0

 

 

 

Detectfaces_img.py

 

 

 

 

PHP Adapterパターン

 

使いどころ

既存のクラスに変更を加えたいが、直接ソースの変更を行いたくない。

 

 

 

WatchYoukai.class.php

 

client.php

 

 

 

 

ここでファイル表示の関数に関して次の変更を行いたい。

  • showPlain()の使用禁止
  • showHighLight()の継続使用

 

しかし、動作実績豊富なWatchYoukai.class.phpに関して変更を行いたくない。

そんな時にAdapterパターンが活躍する。WatchYoukai.class.phpに手を入れずに、WatchYoukaiクラスのAPIを継承したクラスを別に作成するパターンです。

 

DisplayYoukai.class.php

 

 

継承を使ったやり方

DisplayYoukaiImpl.class.php

 

 

adapter_client.php

 

 

 

 

 

または移譲を使ったやり方として、

DisplayYoukaiImpl_transfer.class.phpのようにもかけます。

 

 

@see http://d.hatena.ne.jp/shimooka/20141212/1418364494

C# USB検知プログラム プロトタイプ

C# USBメモリ ディスク検知ツール作成

プロトタイプを作りました。

 

 

 

USBなどメディアを検知してメールを送るというもの。

※今後機能や制御を拡張

 

OKでた。

技術顧問が機能拡張、モダンにデザインして仕上げてくれる模様٩(๑❛ᴗ❛๑ )

 

Form1.cs

 

 

 

Program.cs

 

 

 

 

PHP Template Methodパターン

 

 

  1. AbstractDisplay.class.phpで抽象メソッドなる3つの関数を定義する。display()で3つの抽象メソッドをラッピングする。
  2. TableDisplay.class.php, ListDisplay.class.phpで3つの関数の振る舞いを変えて定義する
  3. template_method_client.phpでデータを入力し、クラスにセットしてそれぞれインスタンス化する。display()で表示させる。

 

 

AbstractDisplay.class.php

 

 

TableDisplay.class.php

 

 

 

 

 

ListDisplay.class.php

 

 

 

template_method_client.php

 

 

 

表示結果

Item0
Design Pattern
Item1
Gang of Four
Item2
Template Method Sample1
Item3
Template Method Sample2

0 Design Pattern
1 Gang of Four
2 Template Method Sample1
3 Template Method Sample2

 

 

 

 

@see http://d.hatena.ne.jp/shimooka/20141212/1418363698

 

 

PHPの継承 Interface 抽象クラスabstract 多重継承Trait

 

interface

使いどころ

  • 継承先が不特定な場合

特徴

  • 多重継承ができる。
  • interfaceで用意した関数は実装先で定義しなければならない。

 

abstractクラス

使いどころ

  • 特定の派生先で一部の実装が異なる場合

 

特徴

  • abstractの修飾子をつけたものは、継承先で定義しなくてはいけない。

 

 

表示結果

ひとだま乱舞


妖怪メダルセットオン!



よく見るズラ


白くて甘くて美味しいズラ!


もんげぇ

 

 

 

Trait

特徴

  • クラスの階層を超えて、多重継承させることができる。

 

 

表示結果

妖怪発見!


白くて甘くて美味しいずら