IPA(2017/12/13) Adobe Flash Player の脆弱性対策について

Adobe Flash Player に関する脆弱性(APSB17-42)です。

攻撃リスクの高い脆弱性なので、利用者は対応をおすすめします。

 

www.ipa.go.jp

 

以上です。

2017/12/13 賢帝俊来

IPA(2017/12/13) Microsoft 製品の脆弱性対策について(2017年12月)

毎月の定期アップデートです。脆弱性対策なので、Windows利用者はアップデートしておきましょう。

 

www.ipa.go.jp

 

以上です。

 

2017/12/13 賢帝俊来

Java8 Streamは色々とラクチン(^^)/

主題のとおり。簡単なソースですが、Streamは便利だなと改めて思ったので記事にしてみます。

 

ソースの動作自体は以下を実現するものです。

1.キーボードから整数を繰り返し入力できる(改行区切り)

2.改行のみ入力された場合は、それまでに入力した値を利用して、以下の値をそれぞれ出力する。

・データ個数
・合計
・平均値
・最小値
・最大値

 

Java8 streamサンプル

 

おそらくプログラムかじっている人なら「よゆー(^_-)-☆」というレベルのソースですね。さすがの私でもパスタコードは書きません(笑)

 

見ていただくとわかると思いますが、streamマジラクチン(^^)/

 

平均とか絶対に今までだったらfor文やら拡張for文で書いてますよね(^^)/
え? IteratorでWhile文?・・・細かいことはいいんだよ(´・ω・`)(笑)

 

とりあえず、一行でしかも簡単にかけてしまうのが嬉しい。
(ただ、今は単純だからいいんだけど、複雑になるとデバッグがやりづらくなったりと困ったちゃんになることもありますが。。。)

 

以上です。

 

2017/12/11 賢帝俊来

CentOS7にRedmineを導入してみる

主題のとおりです。

せっかくなので、先日説明したVagrantを利用して簡単に動作確認もします。

 

1. VagrantでCentOS7を立ち上げる

手順自体は前の記事を参照してください。ただし、Vagrantfileとinit.shは今回用に書き換えます。

Vagrantで簡単にCentOSを立ち上げよう1 - Pasta-Code[パスタコード]

Vagrantで簡単にCentOSを立ち上げよう2 - Pasta-Code[パスタコード]

Vagrantで簡単にCentOSを立ち上げよう3 - Pasta-Code[パスタコード]

Vagrantで簡単にCentOSを立ち上げよう4 - Pasta-Code[パスタコード]

Vagrantで簡単にCentOSを立ち上げよう5(最終回) - Pasta-Code[パスタコード]

 

書き換えたVagrantfileとinit.shは以下のとおりです。(init.shはほとんど何もしません。。)

 

Vagrantfileとinit.sh(Redmine動作確認用)

 

2. Redmineを導入する

立ち上げたサーバーに接続して、準備を始めます。
とはいえ、ここでダラダラと説明せずともRedmine導入方法は公式のブログで紹介されているので、そちらを参照します。

 

blog.redmine.jp

 

上記を手順通りやればうまくいくことは確認済みですが、一部つまづいた部分があったので、紹介します。あと、できればroot権限でやったほうが面倒ではない気がします。

 

・あれ? firewall-cmdを実行すると「FirewallD is not running」と言われる。。

⇒起動しただけではfirewaldが動いてないからです。以下を実行してください。

systemctl start firewalld 

systemctl enable firewalld

 

・「Redmineのインストール」項の最後で「bundle install --without development test --path vendor/bundle」を実行するとインストールに失敗する。

⇒エラーが以下のとおりであるならば、MySQLが必要という可能性が高いです。

An error occurred while installing mysql2 (0.4.5), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.4.5'` succeeds before bundling.

 以下のコマンドを実行してから、再度bundleコマンドをたたいてください。
(なお、1行目では念のためデフォルトでインストールされているmariaDBは消しています)

yum remove mariadb-libs

yum install mysql-devel

 

3. 接続してみる

2を最後まで実行していれば、あとは接続するだけです。ブラウザでIPアドレスに接続してください。(紹介したVagrantfileを利用しているなら192.168.33.105 に接続することになると思います)

以下の画面がでれば成功。

f:id:kentei0715:20171209145542p:plain

 

以上です。

2017/12/09 賢帝俊来

PDF.jsを利用してPDFをブラウザ表示する

主題のとおりです。PDF.jsというライブラリを利用してみたので共有します。

 

せっかくなので、Pythonでサーバーを挙げて確認しようと思います。

前に説明したFlaskを利用しますよ(^^)/

 

kenteiblog.hatenablog.com

 

1. PDF.jsを手に入れる

まずはライブラリをゲットします。以下に接続。

https://mozilla.github.io/pdf.js/getting_started/#download

 

ページに移動すると安定板とベータ版を選択できますが、今回は安定板(2017/12/8時点でv1.9.426)をダウンロードします。

 

取得したZIPを展開すると以下のような構成になっています。

├── LICENSE
├── build/
│   ├── pdf.js
│   ├── pdf.js.map
│   ├── pdf.worker.js
│   └── pdf.worker.js.map
└── web/
   ├── cmaps/
   ├── compressed.tracemonkey-pldi-09.pdf
   ├── debugger.js
   ├── images/
   ├── l10n.js
   ├── locale/
   ├── viewer.css
   ├── viewer.html
   └── viewer.js

 とりあえず今回はbuildフォルダ以下の4ファイルが必要です。

 

2. Pythonサーバ準備

まずはソースから

PDF.jsサンプル Pythonサーバー 

 

pyファイルは基本的に前に紹介したときの記事から変わってません。
ただ単にindex.htmlをテンプレートして呼び出すだけ。

 

前には説明していないことですが、flaskでは静的なファイル(今回でいうとライブラリとか)は、staticフォルダに置くというルールになっています。

なので、1で取得した4ファイルはstaticフォルダに配置します。

 

まとめると以下のような構成になります。

├── static/

│        ├── libs

│   │     ├── pdf.js
│   │     ├── pdf.js.map
│      │     ├── pdf.worker.js
│   │  └── pdf.worker.js.map

│   └── test.pdf
├── templates/
│   └── index.html
└──server.py

 

3. 動作

pyを実行すると、サーバーがあがります。あとは http://127.0.0.1:5000 に接続するだけです。

 

test.pdfの内容が画面中央に表示されるはずです。

単純なソースではありますが、prevボタンやnextボタンを押すことでページを移動することができます。

 

4. 終わりに

結構簡単にできますね。
私は時々「なろう」で縦書き小説を読むのですが、あれも一回PDFに吐いてブラウザに表示してますよね。(あちらはURLが.pdfになっているので少し話は違う気もしますが)

色々と応用例がありそうなので、もう少し深堀してもいいかもしれません(^^♪

 

以上です。

2017/12/8 賢帝俊来

Cordova開発環境を作る(ios編)

前回はCordova(Apache Cordova)のAndroid環境開発を実施しました。

kenteiblog.hatenablog.com

 

 

ということで、次はios用の環境を作っていきます。とはいえ、やることはほとんど変わりません。というよりむしろAndroidSDKの準備がいらないので、Androidより楽です。

 

1.Node.jsを用意する

すでにインストール済みなら必要ありません。
していないなら、以下の公式サイトからダウンロードしてインストールします。

Node.js

 

なお、筆者としてはScoopを…といいたいところですか、よくよく考えてみるとMacで動かす可能性が高い(というより必須)と思うので、コマンドラインインストーラーはもっと別のものがありますね。(Windowsは選択肢がChocolateyかScoopしか思いつかない…(´・ω・`))

 

2.XCodeをインストールする

 

AppStoreからゲットしてください。

また、インストール完了後、以下のコマンドを叩いてコマンドラインツールもゲットします。

xcode-select --install 

ライセンス合意もしておきます。

sudo xcodebuild -license

 

3.Cordovaをインストールする

以下を実行するだけ。

sudo npm install -g cordova 

 

4.Cordovaプロジェクト作成

以下を実行するだけ。

cordova create <フォルダ名> <アプリID> <アプリ名>

フォルダ名・アプリID・アプリ名は自分で決める必要があります。

とりあえず

・フォルダ名⇒testFolder

・アプリID⇒com.kentei

・アプリ名⇒testAPP

とすると、以下のようなコマンドになります。

cordova create testFolder com.kentei testAPP 

 

上記を実行すると、カレントディレクトリにtestFolderというフォルダができるはずです。

 

5.Cordovaプロジェクトの諸設定

プラットフォームの追加と、ブラウザ確認ができるようにします。

4で作成したプロジェクトフォルダをカレントディレクトリにして、以下を実行します。

cordova platform add ios
cordova platform add browser

 

6.とりあえずブラウザで表示確認

 

cordova serve browser


http://localhost:8000に接続して、browserプラットフォームを選択すると以下の画面が表示される。

 

f:id:kentei0715:20171205230844p:plain

 

 

以上です。

 

2017/12/08 賢帝俊来

Cordova開発環境を作る(Android編)

先日の記事で述べていた通り、クロスプラットフォーム開発を検討していましたが、

とりあえず、Cordova(Apache Cordova)で話を進めてみようと思います。

kenteiblog.hatenablog.com

 

ということで、まずはAndroid用の環境を作っていきます。

 

1.Node.jsを用意する

すでにインストール済みなら必要ありません。
していないなら、以下の公式サイトからダウンロードしてインストールします。

Node.js

 

なお、筆者としてはScoopで「scoop install nodejs」でインストールすることをおすすめしておきます。

 

kenteiblog.hatenablog.com

 

2.JDKをインストールする

Java SE - Downloads | Oracle Technology Network | Oracle

ScoopでインストールでもOK。

 

3.Android SDKをインストールする

developer.android.com

 

下のほうに行くとzipファイルがあるのでダウンロード。

好きな場所に展開して、パスを通します。

以下は「D:\androidSdk」に展開物を配置した場合のパス指定です。

D:\androidSdk\tools\bin

 

さらにJAVA_HOMEの指定が必要なので、2でインストールしたJDKのパスをシステム環境変数として登録します。

変数…JAVA_HOME

値…JDKのパス 

 

とりあえず、SDKマネージャーから必要な部品をインストールします。

コマンドは以下のとおりです。(とりあえずAPIはver26)

 sdkmanager "platform-tools" "platforms;android-26"

 

4.Cordovaをインストールする

以下を実行するだけ。

npm install -g cordova 

 

5.Cordovaプロジェクト作成

以下を実行するだけ。

cordova create <フォルダ名> <アプリID> <アプリ名>

フォルダ名・アプリID・アプリ名は自分で決める必要があります。

とりあえず

・フォルダ名⇒testFolder

・アプリID⇒com.kentei

・アプリ名⇒testAPP

とすると、以下のようなコマンドになります。

cordova create testFolder com.kentei testAPP 

 

上記を実行すると、カレントディレクトリにtestFolderというフォルダができるはずです。

 

6.Cordovaプロジェクトの諸設定

プラットフォームの追加と、ブラウザ確認ができるようにします。

5で作成したプロジェクトフォルダをカレントディレクトリにして、以下を実行します。

cordova platform add android

cordova platform add browser 

 

7.とりあえずブラウザで表示確認

cordova serve browser 

 http://localhost:8000に接続して、browserプラットフォームを選択すると以下の画面が表示される。

 

f:id:kentei0715:20171205230844p:plain

 

 

以上です。

 

2017/12/06 賢帝俊来