クリックジャッキング対策をNginxのサイトにしてみた

Ubuntu + Nginxで運用しいているサイトを
Observatory by Mozillaっていうのでサイトのセキュリティを調べてみたらD+のランクだったので対応してみました

クリックジャッキング - Wikipedia
の対策ができてなかったのでそこの対応をしました

Nginxの設定を変えます

$ sudo vim /etc/nginx/conf.d/default.conf

  add_header X-Frame-Options SAMEORIGIN;                                           
  add_header X-Content-Type-Options nosniff;                                       
  add_header X-XSS-Protection "1; mode=block";                                     
  add_header Content-Security-Policy "default-src 'self' 'unsafe-eval' https:;";

Content-Security-Policy(CSP)は、httpsだったらOKにしているので、セキュリティとしては良くないです
本来なら、スクリプトの指定や、styleの指定など個別でしたほうがいいです

nginxを再起動して、再度、Observatory by Mozillaで調べてみると

Observatory by Mozilla

Aになりました

参考)
Nginxセキュリティ設定 - Qiita
Content Security Policy の利用方法 - Web セキュリティ | MDN

bashでcsvファイルを連番ファイル名でコピーする

たくさんのCSVファイルを用意したかったので、bashでやりました

まずは1つcsvファイルを用意

$ ls
sample.csv

for文を使ってコピーします

$ for i in {1..20}: do cp sample.csv $i.csv; done;

これで 1.csv 2.csv 3.csv … と20個のcsvファイルができました

普通のシェルスクリプトをセミコロンで区切ってワンライナーにしてるだけでした

composerでHybridAuthをいれてみた

HybridAuth, Open Source Social Sign On PHP Libraryをcomposerでいれてみました

環境は
Ubuntu 14.04
php 7.0

$ composer require hybridauth/hybridauth:~2.6.0

するとエラーが..

Problem 1
    - Installation request for hybridauth/hybridauth ~2.6.0 -> satisfiable by hybridauth/hybridauth[v2.6.0].
    - hybridauth/hybridauth v2.6.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.

ext-curlがないらしい
必要なものをいれてみます

$ sudo apt-get update
$ sudo apt-get install php-curl

これで再度

$ composer require hybridauth/hybridauth:~2.6.0

でうまく入りました

Let’s Encryptの証明書の期限が近づいてきたので更新してみた

90日くらい前に設定したLet’s Encryptの証明書の期限が近づいてきたので更新してみました

サーバーへログイン
Ubuntu 14.04、Nginxで運用しています

certbotというのが出てきた?のでいれてみます

インストール

$ wget https://dl.eff.org/certbot-auto
$ chmod a+x certbot-auto

これで実行できます
ヘルプを見たり
$ ./certbox-auto -h

証明書を更新します
まず、ドライランで確認(更新されません)
$ ./certbox-auto renew –dry-run

問題なさそうだったら実行
$ ./certbox-auto renew

これで更新されたので、Nginxのreloadをしておきます

$ sudo service nginx reload

自動でやるにはcronに登録するとよさそうです

参考) Certbot