クラウド

Cloud Vision API で「笑いながら怒る人」を感情分析してみた

Cloud Vision API は、画像の内容を解析してくれる Googleのクラウドサービスです。物体、構造物、ロゴ、有害コンテンツ、文字(OCR)など色々な検知機能があります。特に顔検知機能では、人の顔を検知するのはもちろん、喜び、悲しみ、怒り、驚き、といった表情も解析できるそうです。そこで今回は、Google Cloud Vision API の使い方を学びつつ、竹中直人の名人芸「笑いなが...
Linux

コマンド1発!ssh-copy-id でSSH公開鍵を登録

ssh-copy-id コマンドは、クライアントPCで生成したSSH公開鍵を、SSH接続先のサーバーに、たった1行のコマンドで登録できるとても便利なツールです。このコマンドは1999年頃から存在しているようですが、つい最近まで私は ssh-copy-id コマンドを知りませんでした(^^;) そこで今回は、ssh-copy-id コマンドの使い方をまとめてみました。
Linux

Ansible でSSHのセキュリティ設定

UNIX系のサーバーでは、クライアントのリモート通信に SSH を使うことが標準となっています。すなわち、公開サーバーで SSHサーバー(sshd) が動作していることは容易に推測できるため、攻撃の格好の的になることはどうしても避けられません。そこで今回は、 SSHのセキュリティの3点セット「パスワード認証の無効化」「rootユーザでのログイン禁止」「sshdの待受ポートの変更」を、Ansible...
Linux

Ansible Roles の使い方(Playbookの分割と再利用)

Ansible には、Playbook を分割し再利用性を高めるための「Roles」という仕組みがあります。プログラミングで言うところのクラスのようなものですね。Playbook を分割すると可読性が高まることも期待できますので、これを使わない手はありません。そこで今回は、Ansible の Roles の使い方についてまとめてみました。
クラウド

サーバはどこだ? ポケモンGO の通信をキャプチャしてみた

世界中で爆発的人気のゲームアプリ「ポケモンGO(Pokémon GO)」が、2016年7月22日(金)から日本でも配信が開始されました。週末しかも夏休みの開始も重なって、ポケモンGOのサーバには、想像を絶するアクセスが集中していることかと思います。 多少のサーバダウンが発生しているようですが、これだけの高負荷に耐えているサーバは何を使っているのかは気になるところです。そこで今回は、ポケモンGOアプ...
Linux

Apache httpd 2.4.23 + mod_http2 インストールメモ

Linux

Ansible でユーザの作成(公開鍵認証 + sudo権限付与)

前回「Ansible のインストールと管理対象サーバへの接続設定メモ」の記事では、root ユーザ+パスワード認証でAnsibleを実行しましたが、「rootユーザでのリモートログイン」や「パスワード認証」は、セキュリティポリシーで禁止されている場合もあるかと思います。そこで今回は、Ansibleで、Ansible実行用のユーザを作成し、SSH公開鍵の登録とsudo権限を付与する Playbook...
Linux

Ansible のインストールと管理対象サーバへの接続設定メモ

Ansible(アンシブル)は、サーバの構築作業などを自動化してくれる、オープンソースの構成管理ツールです。「シンプルと使いやすさ」を目標として、米レッドハット社が開発しています。また、Ansible は、管理対象サーバにエージェントのインストールが不要なことも大きな特徴です。そこで今回は、今さらではありますが、Ansibleのインストールと、Ansibleで管理対象サーバに接続できるまでの設定を...
データ分析

統計的仮説検定で HTTP/2 と HTTP/1.1 の表示速度を検証

統計的仮説検定は、標本の統計量を元に、母集団に関する仮説を検証するための統計学の手法です。例えば、「日本人の平均身長は170cmである」という仮説を、無作為抽出した100名の身長から検証することができます。そこで今回は、仮説検定を使って、HTTP/2 と HTTP/1.1 の表示速度に、はたして違いはあるのか?を検証してみました。
データ分析

5分でわかる!区間推定「母比率」の信頼区間の求め方

選挙速報で開票率が低いのに、当選確実が出ている事を不思議に感じたことはないでしょうか?各報道機関がどういった仕組みで当選確実を出しているのかは、明らかにされていませんが、母比率の区間推定が使われていると言われています。また、母比率の区間推定は、日本全体のTVの視聴率や、内閣支持率なども推定できるので、統計学の中でも実用性が高い手法です。そこで今回は、母比率の信頼区間の求め方をまとめてみました。
クラウド

簡単!Google Cloud Platform で HTTP/2対応サイトを作る

HTTP/2 対応のWEBサーバを構築するには、ライブラリの依存関係を考慮してミドルウェアをインストールしたり、時にはソースからコンパイルしたりと、なかなかの手間がかかります。しかし Google Cloud Platform の Google Cloud Load Balancing を使うと、HTTP/2対応のWEB環境を簡単に構築することが出来ます。そこで今回は、 Google Cloud ...
データ分析

5分でわかる!区間推定「母分散」の信頼区間の求め方

母分散の区間推定を使うと、例えば母集団が100万本のネジだとして、そのネジの長さのバラツキ(分散)を、数本のネジを調べるだけで、推定することができます。そこで今回は、母分散の信頼区間の求め方を、出来るだけ分かりやすくまとめてみました。
Linux

CentOS 6.8 LAMPサーバ インストールメモ【CentOS6.8+Apache+MySQL+PHP】

2016年5月25日 CentOS 6.8 がリリースされました、RHEL6.8から15日でのリリースになります。CentOS6初期の頃は、かなりの遅延がありましたが、最近は安定して2週間前後でリリースされていますので、安心して使えますね。さっそく、CentOS 6.8 で LAMP構成をインストールする手順をメモしておきました。
クラウド

5分でわかる コンテンツマーケティングのコンテンツの作り方

コンテンツマーケティングは、お付き合いのあるお客さんや、これからお客になって欲しい人にとって、価値のあるコンテンツを提供して興味を持ってもらい、結果として売上につなげるマーケティング手法です。最近なにかとよく耳にするようになりました。そこで今回は、1つ仮想事例をあげて、コンテンツマーケティングの「コンテンツ」の作り方をまとめてみました。
データ分析

標本 n が「十分に大きい」の大きさは?(正規分布・t分布)

統計学の教科書で「標本 n が十分に大きい場合は、t分布ではなく標準正規分布にしたがう」といった記述を見かけたことがありませんか? 数学の応用の統計学にしては「十分」とは、ずいぶん抽象的な表現に感じます。できれば具体的に、「標本数が○○以上の場合は〜」として欲しいところですね。そこで今回は、この「十分に大きい」の大きさは、数値にするといくつなのかを調べてみました。
データ分析

5分で分かる!区間推定「信頼区間」の求め方

区間推定は、標本の統計量を元に、母集団の平均などを、幅(区間)を持たせて推定する統計学の手法です。この推定した幅を「信頼区間」と言います。例えば、100万本のネジの長さの平均のように、母集団が大きい場合でも、区間推定を使えば、すべてのネジの長さを測らなくても、平均を推定することが出来ます。そこで今回は、母平均(母集団の平均)の信頼区間の求め方を、出来るだけ分かりやすくまとめてみました。
データ分析

5分で分かる!「母集団」と「標本」の意味

「母集団」と「標本」は、推測統計の推定や検定を行うのにあたって、とても重要な考え方です。母集団は調べたいデータ全体、標本はそこからランダムに取り出したものというだけの意味なのですが、これをしっかり理解しておく必要があります。また、推測統計では母集団の平均と、標本の平均などを区別しなければならないのが、ややこしいところです。そこで今回は、母集団と標本についてまとめてみました。
クラウド

世界最速 Google Cloud CDN の設定メモ

Google が提供するIaaS型クラウドサービス Google Cloud Platform のサービスの1つ Cloud CDN は、こちらの記事によると世界最速らしいです。早速試してみたのですが、Cloud CDN は、HTTP(S)ロードバランサの1機能として提供されるため、他のCNDサービスと設定方法が大きく異なります。そこで今回は、Google Cloud CDN の設定方法をメモして...
データ分析

5分でわかる!対数「log」記号の意味

対数を表す「log」記号が苦手な方は多いのではないでしょうか? 私も情報処理の問題でこの「log」記号を見かけてはいましたが、あまり意味が理解できず、捨て問題にしていました(^^;) そこで今回は、この対数「log」記号の意味をまとめてみました。
Linux

Tripwire で Web公開用ディレクトリの変更をチェックする

Tripwireは、指定したファイルやディレクトリ等の変更を検知して、レポートに出力したり、管理者にメールで通知してくれるソフトウェアです。侵入者により、不正な改ざんが行われた事を検知することが Tripwire の目的であるため、ホスト型IDS(侵入検知システム)とも呼ばれています。そこで今回は、Tripwire を使って、Web公開用ディレクトリの変更をチェックしてみたいと思います。
Linux

これだけはやっておこう Linuxサーバのセキュリティ対策5つ

ここ近年、WEBサービスへのサイバー攻撃による、個人情報などの情報漏洩事件が後を絶ちません。攻撃の多くは、アプリケーションやサーバの脆弱性を利用したものです。当然セキュリティ対策が必要になるのですが、対策方法は山のようにあり、どこから手をつけたらよいか迷ってしまいますね。そこで今回は、WEBサービスでよく使われている Linuxサーバのセキュリティ対策をまとめてみました。
データ分析

5分で分かる!総和記号「Σ(シグマ)」の計算方法

総和記号の「Σ(シグマ)」は、「1+2+3(中略)+100」のように、繰り返し足し算をする式を、簡単に書くための記号です。便利な記号なのですが、馴染みのない方にとっては、すごく難解な計算をしているように見えるのではないでしょうか? そこで今回は、総和記号の「Σ(シグマ)」の意味と計算方法をまとめてみました。
Linux

Apache を ATS(App Transport Security)に対応する方法

ATS(App Transport Security)は、iOS 9.0 や OS X 10.11以上で導入された、セキュリティ機能です。この機能により、アプリとWEBサービス間の接続のプライバシーと、データの整合性を向上させることができます。ATS が有効なアプリは HTTP を使った通信ができないため、WEBサーバには HTTPS が必須になります。加えて、TLSのバージョンや、暗号化スイート...
プログラム

HTMLテーブルのヘッダを「行列固定」する方法(FixedMidashi)

業務系のシステムでは、扱っているデータが多いため、一覧表が巨大になることがよくあります。WEBベースで開発している場合は、一覧表をHTMLテーブルで作ることが多いかと思いますが、表が巨大だと上下左右にぐりぐりスクロールして閲覧することになり、行や列のヘッダ(見出し)が見えなくなってしまいます。エクセルのウインドウ枠(行列)の固定のように出来ればいいのですが、HTMLではこれが簡単にはできません。そ...
Zabbix

Zabbix クラウド時代のディスクI/O性能監視(sar -d)

クラウド型仮想サーバで多く発生するトラブルとして、ディスクI/O性能の低下があります。物理サーバでは、ディスク障害や I/Oリクエストの増加により、I/O性能が低下することがありますが、クラウド型仮想サーバでは、 I/Oリクエスト数は変わっていないのに、ディスクI/O性能だけが低下することがあります。この性能低下の原因は、他の仮想サーバの巨大なI/O負荷や、クラウド事業者によるI/Oリクエスト制限...
Zabbix

Zabbix 3.0 通信の暗号化設定(RSA証明書ベースの暗号化)

Zabbix3.0 では、Zabbixモジュール間(Zabbixサーバー、Zabbixプロキシ、Zabbixエージェント)で行われる通信を暗号化できるようになりました。これまでは、インターネットを通じてサーバを監視する場合は、別途VPNやSSHトンネリングを使って、通信を暗号化する(又はあきらめる(^^;))必要がありましたが、Zabbix3.0には、証明書や事前共有鍵を使った、通信の暗号化機能が...
Zabbix

Zabbix 3.0 を yumでインストール(CentOS 7.2)

2016年2月16日、Zabbix3.0がリリースされました。約1年半ぶりのバージョンアップになりますね。今回のバージョンアップでは、WEBインターフェースデザインの一新、通信の暗号化、予測検知機能など、100以上の改善が行われています。さっそく、Zabbix 3.0 を CentOS7.2 (1511) にインストールしてみました。
クラウド

Gmail 非暗号化接続メールの警告表示をされないようにする方法

2016年2月9日、Google のメールサービス「Gmail」が、SSL/TLS暗号化に対応していないメールサーバと、メールを送受信した際に「開いた赤い錠」のアイコンを表示して、セキュリティ警告を表示するようなりました。自分が管理しているメールサーバで、この警告が表示されてしまうと、ちょっと困りますね。そこで今回は、Postfixで非暗号化接続メールの警告表示をされないようにする方法をまとめてみ...
プログラム

入力チェックコードを PHP と JavaScript で共通化する方法

フォームに入力された値に行う、入力チェックは(バリデーションチェックとも言うらしいです)大きく分けて、JavaScript で行うクライアント側チェックと、PHP などで行うサーバ側チェックの2つがあります。当然両方で入力チェックを行うことが望ましいのですが、同じようなコードを、クライアント側とサーバ側で書かなければなりません。そこで今回は、入力チェックコードを PHP と JavaScript ...
Linux

SSLメールサーバ構築メモ Postfix + Dovecot【2024年版】

クラウドサービスの普及により自前でメールサーバを構築することは少なくなりましたが、自前で構築したメールサーバは他のシステムと連携しやすいなど自由度が高いのが魅力です。ただし、セキュリティの確保も自前でしっかり行わなければなりません。そこで今回は、SSL/TLSに対応したメールサーバを構築した時の手順をメモしておきました。 メールサーバの設定概要 メールサーバの設定概要は、以下の通りです。ドメイン名...