こんにちは! grasysの注目若手エンジニア川﨑です。(grasys内ではまだまだ若手ポジション) 今回はGCPのLB経由で来る不正アクセスにfail2banで対処した時の事について書きます。 grasysではECサイトやニュースサイトを運営するお客様がいます。 そのお客様のサイトに悪意をもってCDNが適用されないURLに不正アクセスをしてくるユーザーにだけ何らかの対処をしたいケースに使用しています。 fail2banとは ログファイルからfilterに定義したルールでIPを割り出し、jailに定義したアクセス回数などのルールを超えたIPに対し定義したactionを実行します。 各webサーバーに機能やアドオンとして持ってるものもありますが、機能も多くwebサーバーに依存しないのでgrasysではfail2banを使用しています。 各種configの例を交えて説明します。 インストールは
2018年4月にngx_mrubyのノンブロッキングHTTPクライアントとノンブロッキングsleep相当のメソッドに対応させてngx_mruby v2.0.0をリリースするという目標を立てた— 松本 亮介 / まつもとりー (@matsumotory) 2018年2月13日 ngx_mrubyのv2の4月リリースに向けて、HTTPリクエスト単位で実行されるRubyのコードを、FiberとProcで包んだオブジェクト経由で実行する実行方式に実装しなおしています。これまでのngx_mrubyのv1系は、Rubyのコードをnginx起動時にstruct RPocにコンパイルしておき、リクエスト毎にそのバイトコードを実行していました。 一方v2では、nginx起動時にコンパイルされたstruct RProcを、HTTPリクエスト時にprocオブジェクトに変換した上で、そのprocオブジェクトをca
At Cloudflare we like Go. We use it in many in-house software projects as well as parts of bigger pipeline systems. But can we take Go to the next level and use it as a scripting language for our favourite operating system, Linux? gopher image CC BY 3.0 Renee French Tux image CC0 BY OpenClipart-Vectors Why consider Go as a scripting language Short answer: why not? Go is relatively easy to learn, n
アプリ開発の場面では、入力されたテキスト内に誕生日などの特定パターンの文字列が含まれているかを確認したり、別の文字列に置き換えたりするときに、正規表現は必須です。しかし、正規表現を誤ってしまうと、アプリケーションによっては、データを破壊してしまったり、誤作動を起こすリスクがあるのも事実。このため正規表現を変更する場合、事前に試験用の環境で試すのが普通ですが、開発現場によっては、試験用の環境であっても簡単に適用できない場合や、本番用の環境しかないなど、試す場面が限られることが考えられます。このとき、机上での検証を行いますが、人の手による検証は、どれだけ実力のある人がチェックしても誤るリスクがあり、不安を拭うことはできません。「Regexper」を使えば、入力した正規表現を無料で、機械的に図示して、読みやすくしてくれるとのこと。複雑な正規表現を入力しても読みやすくなるのか、実際に使ってみました
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く