Engine's blog

MVNOやガジェットに関する散財履歴、れびゅー、エンジニア的な技術に関する何か

【2019年版】俺的アーティスト紹介

2019年を振り返って

まず今年の自分について軽く。


2019年はチャレンジした年でした。
6年勤めたインフラの会社を退職しプログラマとして新たにスタートを切って、すぐに案件にアサインしてもらって、Typescriptでいくつかの開発を経験させてもらいました。
元来怠惰な性格である僕には、今年はモチベーションを保たないといつ崩れてもおかしくないような状況ばかりでやっぱり音楽に頼ることが多かったように思います。


たとえば面接前、TSが全然わからなくて進捗が芳しくない時、周りがうるさくてイライラした時、嫌いな奴が呼吸をしてるという事実にすらイラつくくらい追い込まれた時..


そんな僕が今年一番聞いてたアーティストをピックしてご紹介していきたいと思います。

仕事で集中したい時(アッパー系編)

今年、テンションを上げたい時はADM, EDMを聞くことが多かったように思います。

特に聞いたのは Alan Walker でした。


https://youtu.be/60ItHLz5WEA


彼は紛れもない天才だと思う。
上でリンクを貼ったFaded以外にもたくさんいい曲があるので聞いたことがない方はぜひ一度聴いていただきたいなと思います。

apple musicで聴いているのでplay listも併せて置いておきますね。

はじめてのalan walker - https://music.apple.com/jp/playlist/%E3%81%AF%E3%81%98%E3%82%81%E3%81%A6%E3%81%AE-alan-walker/pl.6e374be22e00430e9cacbb44d304df45

EDM Play List - https://music.apple.com/jp/playlist/edm2/pl.u-PDb44vptLbYq49

他にもADMでMAKOというユニットを好んで聞いてたりchain smokersを聴いたりしてました。

集中したい時(ダウナー系編)

一番聞いていたと思われるのがこのダウナー系。
ゆったりしていて飽きが来ないのでヘビーユーズしてた気がします。
アッパーだと気持ちの切り替えはできるけど、集中はできなかったりするので、アッパーの後にダウナーに切り替えることが多かったかも。


ということでおすすめしたいのがyoutube チャンネルの chilled cow music
アーティストではないけどいい楽曲を集めてプレイリストとして紹介してたりするのでおすすめです。


https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow

彼らはプレイリストをspotifyでも公開しているのでspotifyユーザーの方は上記のリンクから見てみてください。


apple musicはこちらから

https://music.apple.com/jp/playlist/chilledcows-favorites/pl.u-leylM3lIjN18mk

会社に行きたくない時に聞く音楽

これは割と昔から聴いてるアーティストが多いです。

まずはCIVILIAN(旧 Lyu:Lyu)


はじめて聴いた曲がメシアでとにかくぶっ刺さった。
薄っぺらくきこえてしまうかもしれないけど、人の残酷さとか脆さとか、うまく行かないこととか本当色々ある。
うまく行かないし辛いけどやってくしかない、頑張るしかないと思える曲なので、思い悩みがちな人は是非メシアはじめLyu:Lyu時代の曲を聴いて元気になってほしいと思う。
I feat. まねきケチャもいい曲なのでこちらもおすすめ。

メシア - https://youtu.be/D9huLGQtGX4 I feat. まねきケチャ - https://youtu.be/BusNdBQQvYY


ちなみにCIVILIANのGt./Vo.であり作曲をしているコヤマヒデカズ氏はほえほえPというボカロPで、ハロ/ハワユなど多数のヒット曲を作ったヒットメーカーでもあるので同年代なら聞く価値ありかと。(最近ハロ/ハワユをセルフカバーもしてました)


続いてThe script。 これも随分前から聞いてるけど、今年一番聞いたのはSuperheroesでした。

https://youtu.be/WIm1GgfRz6M

僕には7歳の子供がいるんですが、自分の生い立ち上父親ってものがなんたるかを知りません。
優しい父親もできないし、頼れる父親でもないんだけど、それでも最低限カッコいい父親ではいたいと思う。
そんな気持ちを再認識するかっこいい曲です。
子を持つ父なら是非MVとあわせてご試聴を。


続いてJizueのsunという曲。
今年、Dr.の粉川さんが脱退されてしまったので今後あのドラムのsunは聞けないのか..と感傷的になり聞きまくりました。
優しくも力強い、喜怒哀楽のあるドラムを叩く人だと個人的には思っているドラマーさんである粉川さんの今後に期待しつつも、この機会にsunを聴いてみてください。


https://youtu.be/Khsl3mzEJjg

2019年見つけたアーティスト

今年はあんまり新しいアーティストは発掘してないんですが、なかでもこれはよかったなと思うアーティストを紹介したい。

  1. 酸欠少女さユり
  2. CRAZY VODKA TONIC


酸欠少女さユり

僕だけがいない街の曲を歌ったので知っている人も多いかも。
野田洋次郎が楽曲提供をしていたりするので知名度は高いのかもしれないんですが、私はちゃんと聴いたことがなかったんですよ。
で、ある時たまたまちゃんと聞くことがあったんですが、女性では珍しくとても感情的に歌う子なんですよね。


もともとV系でもDir en greyだったり、上でも書いたLyu:Lyuだったり、感情的に歌い上げるアーティストがすごく好きで最近よく聴いています。


ただ、どれをすすめるかと言われると難しくて..
野田洋次郎提供の曲はやっぱり安定感があって耳馴染みもいいんだけど、たぶん自分で書いた曲じゃないことやストーリー仕立ての曲が合わない?のか感情がこもり切っていないような気がする。なのであんまりおすすめはしたくない。


聴いてみてはほしいけど、ちょっとおすすめ難しいというわがままなかんじですがなんか見つかれば追記しますということで。

CRAZY VODKA TONIC

このバンドはたまたまLyu:Lyuを聞きにO-Crestのend partyに行った時に見つけました。

久しぶりに「実力派ライブバンド」って感じで、セットリスト含め盛り上げ方も聴かせ方も上手いすごくいいバンドです。


まだ曲紹介できるほど聞けてないのでアレですが、apple musicでも提供されているので是非聴いてみてください。
ただただカッコいい。

まとめ

本当はもっと紹介したいアーティストがいるし、上で紹介したアーティストについてももっとちゃんと書きたいんだけど、そんなことしてたら2019年終わっちゃいそうなので取り急ぎまとめてみました。


やっぱり音楽が好きだし、何かやりたい気持ちがあるので来年はこの気持ちをプラットフォームとして実現していきたいと思います。


みなさんのお勧めなどあればコメントで教えていただけると嬉しいです。

VSCodeでESLintのHoverがでない

この記事の要約

  • VSCodeは気軽に再インストールしよう
    • AppCleanerなどを使用して完全削除したつもりでもプラグイン情報なんかは別で保存されてる
    • なので再インストールしても設定等々は全部そのまま
    • 不安ならSettingSyncなどを使って設定をgistにアップロードするなど工夫をするのが吉

ことのはじまり

ある時から突然、VSCodeのサジェストなどが全然機能しなくなりました。
マウスオーバーした際のHoverも全く表示されない。

Typescriptを使用した開発において、型情報を探す場合に一番早い方法がこのHoverで表示される型予測機能(たぶんESLint)だと思っているのですが、 こいつが効かないせいでものすごい開発効率が落ちました。
保管されないからいちいちソースみに行ったりしなくちゃいけないんだけど、定義元に飛ぶショートカットである Command+クリック もある時から効かなくなり、 開発効率が落ちるどころの騒ぎではなくなってしまいました。

コーディングには快適性が何より重要だと思っている貧弱エンジニアな私は、この状況を何とかしたいといろいろやってみたので備忘録として記録しておきたいと思います。

VSCodeのHoverが効かないとき

VSCodeの設定画面を開き、設定画面上部の検索バーに editor.hover と入力。 Editor > Hover : Disabled になっているようなら、直下のチェックボックスにチェックを入れます。

f:id:engine_is:20191226211027p:plain

それでも効かない場合

かたっぱしからパッケージのアップデートをしました。
npm update -g ですね。
でも最近npmからyarnに管理マネージャー変えました。
理由はパッケージのインストールなど処理が並列で早いからです。

ただ、周知の事実かもしれませんがciツールでyarnを使う場合に不具合にぶち当たったりする場合もあるのできをつけください。

最後にやったこと

AppCleaner(詳しくはこちらの記事)を使用してVSCodeを完全に削除し、
再度インストールを実施しましたところ正常に動作しました。

今回の原因

実は開発環境(ソースコードなど)は外付けSSDで管理しているのですが、もしかしてこの読み込み速度の問題などで
うまくVSCode側で表示ができていないのではないかと思い、システムドライブと同じ場所にデータを全て移行したりしました。(効果なし)

結局全ての原因は前回のエントリで書いた外部ストレージにOSを移行した作業でアプリデータが全て移行できたと思っていたのですが、
どうやらその際に破損してしまっていたようでした。

他にも不具合の起きているものがあるんじゃないかちょっと震えていますが、いったん解決したのでよかったよかった。

mac OS X(Catalina 15.1) を外付けSSDにインストールして心理的安全を保つ方法

はじめに

筆者はただのガジェットオタクです。
macのシステム内部等についてはとんと疎いので、ガチサーバーエンジニアやインフラ自信ニキはブラウザバックしてどうぞ、といったかんじで筆者の心理的安全を保全させてください(ノミの心臓

ことの始まり

インフラエンジニアとして7年働いてきまして、基本的にはWindowsで事足りてきました。
というより数年前まではインフラ管理をするにあたり必要なツール類はだいたいWindows向けしか提供されておらず、
筆者の所属企業がNW専門だったこともありコンソールケーブルのモジュール的な意味でWindowsしか選択できませんでした。

なので、基本的に自宅にはWindowsマシン2台、ESXiサーバー1台、使徒不明な1Uサーバー(DL360)1台というまさにインフラエンジニアの鑑のような構成でした。

ただ、元々私はサーバーエンジニアであり、またNWの会社で話のわかる人間がいなかったことも手伝ってある時開発系案件のPM(とインフラの設計構築運用)を振られました。
で、気づけばその際に縁を持ったプログラマに師事して自身もプログラマに転向しておりました。
(現在はPG職1年です)

そんな転換期、Appleが数年ぶりにmac miniをリリースするという情報が入り、子持ち弱小エンジニアである私は飛びついたわけですよ。 開発するならmacだよね!!でもたけえからかえねえよお..mac mini安いしかうしかねえ!!と。

でね、買うときに思ったんです。

「おれ、サーバーエンジニアだしストレージなんてネットワークストレージ組めば余裕っしょ。組むの自体簡単だし。」
「むしろその方がWindowsからも編集データ見れるし、シームレスに環境が移動できて楽じゃね?」
「よーしmac miniのストレージは最小でいこかー(ポチー」

今からマカーになるApple信者予備軍のみなさん、決して僕のように お布施をケチらないでください

Apple製品を買う際には、思っているより1グレードあげて買うことをお勧めします。

というか電子機器を買う際は1,2グレードあげて買うのが基本です。
でないと新製品が好サイクルでリリースされる現代では機能不足に陥りがちで すぐに粗大ゴミいきになってしまいます
特にapple製品はそのけが強いので用心が必要です。

Catalinaへのアップグレードでエラーが一生でる

先日Catalinaにアップグレードを行おうとしたところストレージの不足エラーが発生しました。
お布施をケチったせいではあるんですが、40GBも空きがあって容量不足のエラーを出されるとは思いませんでした。だって初期ストレージ容量の30%もあいてるんですよ?

一応これには原因があるようで、Timemachineというmacのスナップショット昨日が悪さをしている場合に起こるようです。
(アップデートパッケージを保持した状態でtimemachineのバックアップが走ると、このパッケージもTimemachineのスナップショットに含まれてしまうっぽい)

なので、Timemachineの直近のスナップショットをドロップすればいけたりはするんですがそれにしても次回のアップデート時にはもっとファイルが増えていて整理がつかないせいでアップデートできないとか十分あり得ます。

ということで外部ストレージにOSを入れることでいつでもストレージをいつでも換装できる状態にして安心しようというのが今回の経緯です。

またしてもいつも通り前置きが長いですね。本題にいきましょう。

免責

本手順は全ての動作を保証するものではありません。
多少なりとmacOSやPCというものに対する事前知識が必要な作業です。
本手順にのっとった作業であっても一切の責任をおいかねますので、全ての工程において自己責任で実施ください

Appleの規約について

外部ストレージへのインストールは、現在の内部ストレージを含め原則2箇所まで許可されています。 2019/11/14段階で規約を読む限りそもそもそれっぽい記述も見当たらないのだけど..

復旧用と通常用という意図で許諾されているものだと思います。 というのもSnow Lepard(綴り自信なし)あたりからOS単体での販売が行われていないので、復旧させる方法として許可されていると考えれば当然といえば当然だとも思う。

以降からやっと本題です。


準備した物

  1. M.2 SSD

Crucial SSD M.2 1000GB P1シリーズ Type2280 PCIe3.0x4 NVMe 5年保証  正規代理店保証品  CT1000P1SSD8JP

Crucial SSD M.2 1000GB P1シリーズ Type2280 PCIe3.0x4 NVMe 5年保証 正規代理店保証品 CT1000P1SSD8JP

  1. NVMe対応のM.2 SSD外付けケース(USB Type-C対応) - amazon

PCIE接続の内臓ストレージと比べて転送速度が落ちてしまうと普段使いでどうしてもストレスになってしまいます。
なので今回はCrucialのM.2 SSD 500GBを用意しました。
また、外付けようケースとして NVMe対応 且つ Type-C に対応したケースを選定しました。
M.2 SSDの外付けケースはまだあまり出揃っていないようで、またNVMe対応でないケースだと動作しないため注意が必要です。

ただ転送速度は2.5inchのSSDでも変わらないと思うので、転送速度がなるべく早い物を選定するようにしてください。
リンクのものは最大転送速度10Gbpsです。ただM.2SSD側が5000MB/sだった気がするのでオーバースペック。。まあケースがボトルネックになるよりいいでしょう。
また、リンクはアフィリンクではないので安心して踏んでいただいて大丈夫です。一円も僕の手元には入りません。入ったところで微々たる数字なので。。

手順

比較的最新のMACだとApple T2 セキュリティチップというものが搭載されているようで、外部ストレージからのOS起動を抑制するようになっています。 (端末ののっとり防止策ですかね?) なので、「MAC 外付けSSD OSインストール」とかで検索した結果の記事通りに実施しても「macOSが検証できません」というエラーが発生して一生完了しません。

うまくいかない具体例

  1. 外部ストレージを初期化
  2. App Store よりOSのアップグレードパッケージをダウンロードする
  3. Launcherなどからインストール用のアプリケーションを起動する
  4. インストールディスクを外部ストレージにして進める

正しい手順

  1. 外部ストレージを初期化
  2. MACを再起動する
  3. 再起動の起動時に 「command + r 」を押しっぱなしにする
  4. macのユーティリティ画面(リカバリ画面?)になったら 画面上部のユーティリティタブから起動セキュリティユーティリティ を開く
  5. 起動セキュリティユーティリティ画面の 「安全な起動」を セキュリティなし にして、「許可する起動メディア」を 外部メディアまたはリムーバブルメディアからの起動を許可 に変更
  6. ラジオボタンを付け替えたら画面左上の❌から画面を閉じて macosを再インストール
  7. インストール先を[1.]で初期化した外部ストレージを選択
  8. 画面の師事通りに進めるだけ

ストレージの初期化については

です。多分最新のフォーマット形式なので読み書き早いんじゃね?と安直なアレ。

安全な起動項目をセキュリティなしにして大丈夫か

Appleは、macのハードウェア全てについて検査を行い、標準的に組み込まれていない機器による動作を一切できないようにしています。
この制限を取り払った魔改造macをHachintoshとよんでたりします。

今回の外部ストレージはもちろん許可を受けていません。が、このチェックがついていることで外部ストレージの動作が不安定になり、ひいてはOSの起動も不安定になる恐れがあるため私はセキュリティを外しました。

外部メディアを許諾していないというよりセキュリティの観点から許可しない方が望ましいということでデフォルトは厳格に許可しない物になっているんだと思っています。
たぶん動作自体は保証外かもしれませんが、もとのメディアを破壊しているわけではないのでいつでも戻せますし、と思ってます。

とはいえAppleの公式にも手順自体は存在しているので行為自体に問題はないと思います。

support.apple.com

その他困ったこと

1. Appleの2段階認証が一生通らない

2段階認証を有効にしているとiPhoneなどapple製品にセキュリティコードが送信されますが、
どんなに正しいコードを入力してもエラー になる場合があります。

そんな場合は落ち着いてAppleIDの認証をスキップしてください。

インストール完了後、再度認証を求められた段階でやれば問題なく通ります。

2. もともと使っていた内部ストレージのデータが吸い出せなくなるのでは?と不安で夜しか眠れない

OSインストールプロセスの最後にデータの復旧ステップがあり、その際にディスクから復元でMachintosh HDを洗濯すれば完全に元に戻ります。
アプリデータも何もかもそのままだったのでびっくりしました。
(ただしセキュリティ設定系は初期化されていたので、terminalの権限など許可するなど帰ってきた部長の印鑑祭り状態でした)


以上です。 この記事にたどり着いた方にとって何らかの参考になれば幸いです。

WEBアプリケーションにおける攻撃と対策

WEBアプリの抱えるセキュリティ脅威

WEBアプリケーションは基本的に世界中に公開されている状態であり、 提供するサービスを受ける一般ユーザーのみではなく、悪意を持った第三者も当然利用が可能である。

そのため、まずはWEBアプリケーションがどのような攻撃を受ける可能性があるのか調べることにする。

また、WEBアプリは大別すると2種類あります。

  • WEB API
    • 要求に応じて特別な加工のないデータのみのやりとり(参照/登録)が可能。
  • WEBサイト
    • 要求に応じて 専用アプリケーションで表示をすることで視覚的に柔軟なアプローチが可能なデータ を返却する。

二つのアプリケーションは基本的にhttpプロトコルを利用する。 一部GoogleコンテンツはQuickを利用?

WEB APIは無加工のデータをあらかじめAPI側で定義した形式に則ってやりとりすることで、 直接データの参照や登録や変更、削除が可能です。 (一般的にはGETメソッド、POSTメソッド、PUTメソッド、DELETEメソッドを利用する)

上記に対しWEBサイトは基本的にデータ取得(GETメソッド)のみが可能で、 取得した特殊加工(HTML+CSS)されたデータを専用アプリケーション(ブラウザ)で表示することで APIのみの場合より視覚的なアプローチが可能。

もちろん取得するデータも所詮HTTPプロトコルを用いてやりとりされるデータでしかないので、 ブラウザを使わなくてもデータの中を参照することは可能です。

ただ、データは専用アプリで表示する前提で加工されている状態なので情報をぱっと見で視覚的に理解することは困難だと思います。

WEBコンテンツ内で定義していれば、アプリ内からデータの登録や変更なども可能。

今更説明しようとしても全部冗長になりがち。意味わかんなかったり間違ってたらごめんなさい。

WEBアプリ全般で言える攻撃を受けた場合の影響内容

WEBアプリケーションは世界中に公開されている性質上 誰からでも攻撃を受け付ける状態 であると言えます。

攻撃された結果何につながるかというと、 WEBサイトの製作者が意図しない情報にサイト全体が書き換えられたり、 さらに別のWEBサイトへ攻撃する際の踏み台として利用されてしまったりします。

せっかく開発したコンテンツは信用を失い、最悪の場合は罰を受けなければいけなくなってしまう可能性があります。

なので、しっかりと対策をしましょうねということでこれから本題。

サーバーが受ける可能性のある攻撃の種類

なんか色々あるみたいですん。ここまで書き始めて15分。

全部説明するとキリがないのでポートスキャンというもっともあるあるな攻撃手法を説明することでまず攻撃はこういう感じです、 という感覚を掴んでいただけると。

ポートスキャン攻撃

ポートスキャンは、攻撃対象のサイトに対してどのポートが開いているかを手当たり次第攻撃する手法です。 WEBサイトは80番ポートが利用されるのが一般的ですが、それ以外のポートを利用(有名なのだと8080とか)している場合もあります。

また、WEBアプリケーションはサービスを提供する上でメンテナンスが絶対に必要なので、 メンテナンスするためにWEBアプリケーションの中(サーバー)に入るためのポートも開いてたりします。 (SSHだと22、とかとかだけど普通は変える)

3WAYハンドシェイクというTCP接続を確立するためのネットワークにおけるお約束事があります。

3wayの名の通りSYN->SYN/ACK->ACK というやりとりを行いますが、 SYN/ACKが帰ってきた時点で開いていると判断する場合もあるみたいです。 (開いてない場合はRST/ACKを返すため)

攻撃者は手当たり次第に開いているポートを調べて、開いているポートを見つけたらポート番号から 一般的にどのようなサービスで利用されるポートかあたりをつけて次の攻撃にうつります。

とにかく中国からの攻撃が多い。とにかく多い。

WEBアプリケーションに絞った攻撃

WEBアプリケーションの脆弱性に関する対策は、普通に診断師資格があるのでそれを参考に設計していくのがベターかもしれない。

Pentester Skillmap Project JP - OWASP

ただ、小難しい。

脆弱性をリリース前からチェックする

専門資格があるものに対して知識もない中立ち向かおうとする労力は賞賛に値する。 ただ、どうやっても勝てないし、だから専門の資格があるわけで。

そこで、こう言った攻撃を想定したテストツールを使ったります。

脆弱性診断・脆弱性検査ツール5選 | ソフトウェアテスト・第三者検証ならウェブレッジ

リリース後のDDoS対策など

まあ結局アプリ側でどんなに対策をしようが防ぎきれないのが攻撃です。 毎日攻撃手法が確立されている昨今、大抵の大手アプリにはアプリの前段にファイアーウォールを配置します。

大規模サービスではデータセンターでラックを借りてネットワーク機器から設置するパターンが基本でした。一昔前までは。 ただ、最近はクラウドネイティブとかわけわからん言葉が生まれるくらいクラウドが前提。なのでルーターとかスイッチとか設置できない。

最近はネットワーク機器メーカーもソフトウェアルータを出し始めているので、そう言ったものを導入するのもいいかもしれません。 ネットワークにはメーカー品を入れるのが吉です。輻輳制御とかファイアーウォールとか、結局動作の安定性が全然違うので。

Cisco CSR 1000V シリーズ クラウド サービス ルータ ソフトウェア コンフィギュレーション ガイド Cisco IOS XE Release 3.9S - Cisco CSR 1000V シリーズ Cloud Services Router の概要 [Cisco Cloud Services Router 1000V シリーズ] - Cisco

ただ、流行りのk8s(Kubernetes)やDockerに入れようとすると大手のネットワークメーカは非対応なんじゃないかな?(記憶が古い?) F5さんとかロードバランサーとか作っているような強い会社さんはもしかしたらあるかもしれない。

で、そういう場合はVyattaを使う。そこで攻撃をフィルターしてしまうという方法もあります。

が、運用保守がアホみたいに大変になる。

自前で行うネットワークセキュリティ

Routerで受けた攻撃と思われる攻撃を外部のサービス(確かAKAMAI?違うかも)にそのまま投げたりすることで 流れてくる異常量なトラフィックを制御するわけなんだけど、思いつく手法は以下。

Netflowというネットワーク機器のトラフィックのアナライズ設定があるんですが、こいつをONにし、 アナライズ用データを外部サービスに投げることで攻撃を受けているか検知する。

外部サービスというのが例えばAkamaiだったりするわけなんだけど(Akamaiさん違ったらごめんなさい)、 それ以外にも自前で構築することも可能。

それがElastic Stack。

Netflowというのは少し特殊なデータを送出してて、解析するには専用のFlowCollectorというものが必要だったりする。 これがアホみたいに高い。100万以上が当たり前だったように記憶している。

これをLogstashというElastic Stackのパーサーで受け取って、Elasticsearchというデータベースで蓄積する。 Elastic StackはKibanaという可視化ツールも持っており、これによってグラフ化することが可能。 また、WatcherというこれまたElastic StackのKibana用だったかな?のプラグインを使用して、 機械学習によっていきちによる異常検知を行なってもいい。

また、パーサーを自前で(例えばPythonとかNode.js)作ってデータを受け、 データを登録するときに前回データと差分を比較するようにして検知してもいいと思う。

そんなことしなくても前段にWAF置けばいいじゃん

そう、上記みたいな面倒なことは前世代の話だったのである。 WAFをご存知だろうか。(私は知らなかった)

提供するサービスのネットワークで考えた前段(入り口)にWAFを置くのが当たり前らしい。

提供者は色々あって、セキュリティ専門企業だとSymantecが出しているみたい。 AzureだとAzureの提供サービスにWAFがありました。

Azure Application Gateway の Web アプリケーション ファイアウォールの概要 | Microsoft Docs

他にもSucutum?とか色々あるみたいだけど、要はWEBアプリケーションが受ける攻撃に特化した装置で、 こいつを置くことでクロスサイトフォージェリとか色々な対策を勝手にしてくれて、おかしなアクセスをする奴に対しては こいつがブロックをしてくれるという便利ツール。

値段は結構する。Azureが一番安かったから、AzureのApplication GateWayを利用してサービス提供をしている人はこれがベストかもしれない。

と思ってたらNginxには謎のコンポーネントが存在していた。。

GitHub - nbs-system/naxsi: NAXSI is an open-source, high performance, low rules maintenance WAF for NGINX

(構築例はこちらを参考にするといいかも) nginx向けのWebアプリケーションファイアウォールを試す | さくらのナレッジ

NAXSIは Nginx Anti Xss and Sql Injection の略らしい。 確かにWAFの主要機能の一部ですね。

ここによるとサポートしている機能は以下っぽい。

  1. XSS, SQL injection, CSRF, File include からの防衛
  2. 既知の攻撃に対するシグネチャー以外の防衛
  3. GET/POST リクエストのチェック
  4. HTTP ヘッダとクッキーのチェック
  5. 危険な記号類、SQL キーワードの禁止
  6. 単純な設定
  7. ホワイトリストアプローチ
  8. 学習モード

2に関してはよくわからなかったんですが、SBさんのブログでは 脆弱性のある良く知られた パターンの99% を含む単純なルールが用意されており、例えば、 URIの一部として <,|, drop などは含まれてはならない などです。 って書いてありました。

結局アンチパターンを設定したりして設定がキモになりそうですね。 エンジニア的には楽しいけど、運用考えたり色々考えると不安は残るよなあと思う。 知識量次第だしね..

セキュリティはやりすぎると首が絞まる

ユーザビリティが下がったり、開発するときに面倒ごとが増えたり。 クラウド型のWAFを使うのが結局無難で楽なのかなあなんて思ったりしましたというお話でした。

音楽のこと

たぶんマークアップできてない記事だけど携帯からだからです。あとでPCからマークアップちゃんとやります。

 

# ルーツ

 

この記事を読んでいる人は私の個人的な趣味なんか知らないだろうと思って書くんだけど、俺がもともと音楽にちゃんとハマったのはBump of Chickenからです。

 

中学時代、はじめてEver lasting lieを聞いて、音に合わせてこんなに衝撃的な自分に刺さる詩を書いているバンドがいるってことに鳥肌が立ったのと、自分の感性に刺さる詩を書いてくれる人がいることに理解者がいたような気になって涙ぐんだのが最初。

 

もちろん他にもゆずだってゼリ→だって175Rだって聞いてたんだけど、「あ、救われたかも」なんて思ったことはなくて。今思えばもちろん浅いんだけどとにかく衝撃的だった。

 

この頃から歌詞の世界にふけって自分と照らすような、小説の世界にふける感覚と同じような感じで楽しみかたをするようになった。

 

# 次にハマったバンドはヘタクソ

 

次にハマったのがなんとGoing Steadyだった。佳代で泣いたのである。

ヘタクソなのに逆に歌詞にハマっちゃっててより泣けると言うか。

 

 

このころ自分はギターを弾いてたし、ギターかっこよくかきならすぜなんて思ってたんだけど、ゴイステ聞くようになって歌が好きになった。

自分の思いを言葉で人に聞かせたいと思うようになった。誰よりも感情的に歌いたいと思ったりした。

 

# 人にはそれぞれのルーツがある

 

自分が上で書いたみたいに、人にはそれぞれ音楽を本当に好きになったきっかけがあると思う。

 

でもそんなルーツを語る時、多くの人が使う嫌いな表現が俺にはある。

 

「鈍器で殴られたような衝撃だった」

 

もともと自分の感覚なんかを回りくどく言語化するのが好きな自分には受け入れがたい表現。

そのまま死ねばよかったじゃんとすら思う。

 

例えだとしたって鳥肌が背中にびっしりできて涙出たとか色々あんじゃん。鈍器ってなんだよまじで。

 

# 感じ方は人それぞれ

 

感性ってほんと人それぞれで、十人十色な表現があると思うのよ。

それってすごく素晴らしいことだと思うのね。だから、表現者の何かに感動したなら、その感性をわけわかんない言葉じゃなくて正確に人に伝えて欲しいと思うし、その感性に俺は感動したいと思うという今日はそんな話でした