カテゴリー
Uncategorized ネットのサービス

scaffoldy – よくあるwebサービス構成の Docker Compose ファイルを作ってくれるジェネレータ

Scaffoldy は、選択したサービスを組み合わせた webサービスの Docker Compose 設定ファイルを作ってくれるwebサービスです。

対話式のフォームに回答していくだけで、docker compose で動作する yml ファイルが作られます。現在選べるのは以下のような項目

  • 言語/環境 – Python / Node.js / その他
  • .gitignore 等 git の設定
  • データベース – MySQL / MariaDB / PostgreSQL / MongoDB
  • データベース管理web UI – phpMyAdmin / pgAdmin / Mongo Express
  • キャッシュサーバ – Memcached / Redis
  • メッセージング – RabbitMQ / NATS
  • メトリクス – Prometheus / Grafana
  • その他 – Clickhouse / ElasticSearch / Mailhog

選択が終了すると、docker-compose.yml を含んだプロジェクトファイルをzipにしたものをダウンロードできます。これを展開して実行すると、何かしら最低限のものは動作するということです。

version: "3.8"
services:
    app:
      build: ./akky-scaffoldy/
      container_name: akky-scaffoldy-node
      ports:
        - 1337:1337
    mysql:
      image: mysql
      container_name: akky-scaffoldy-mysql
      working_dir: /application
      volumes:
        - mysql:/var/lib/mysql
      environment:
        - MYSQL_ROOT_PASSWORD=dbpass
        - MYSQL_DATABASE=mysqldb
        - MYSQL_USER=dbuser
        - MYSQL_PASSWORD=dbpass
      ports:
        - "3304:3306"
    phpmyadmin:
      image: phpmyadmin/phpmyadmin
      container_name: akky-scaffoldy-phpmyadmin
      restart: unless-stopped
      ports:
        - "3305:80"
      environment:

実際には動作するものも、エラーが出て動かないものもありました。生成された yml を見ると、最低限動かすための表記という感じではあります。サンプルアプリも配置できますが、Hello, World を表示するだけですね。選択したサービス群を連携させて呼び出すようなものは作られません。まあ組み合わせの数が爆発するのでそのあたりまでちゃんと作るのは大変だと思いますけど。

Docker Compose を初めて使う時の参考とか、まったく使ったことがないツールを簡単にセットアップして、そのあと勉強して改良していく際のスタート地点とするぐらいなら便利だし、それぞれのサービスに詳しい利用者の貢献が集まれば便利そうですね。

via Hacker News

カテゴリー
ツール

Slacktyping – Slackで相手がタイプ中にこちらもタイプ中と見せかけるジョークツール

自称とても良いプログラム(very good program)は、Slackチャットにおいて相手がタイプしている時に、相手にあなたも「入力しています(typing…)と表示するという小さな Ruby プログラムです。

あなたも何かタイプしてるかと思って相手が手を止めると、あなたの「入力しています」も止まります。

とても良いプログラムかもしれませんが、これ使われたらイライラしそうです。

このような小さなジョークプログラムを多数公開しているウィル・レインウェバーさん(Will Leinweber)、彼のサイトにもネタが多数仕込まれています。

via Hacker News

カテゴリー
セキュリティ

kwprocessor – パスワード推測のためのキーボード・ウォーク・ジェネレーター

hashcat/kwprocessor は、キーボード上で上下左右に図形を描くことで作れるタイプのパスワード文字列を類推し、総当たりのリストを生成するためのジェネレーターです。

キーボード配置から作ったよくあるパスワード

昔からよくあるパスワードの作り方として、例えば “qwerty” なんていうのがあります。キーボードの左上から順番に右へ一文字ずつ打っていくとこうなりますね。大昔はこれでも「ランダム」で「推測されにくい」パスワードだったのかもしれません。

しかし、とある2020年のありがちなパスワード・ランキングだと、”qwerty” はなんと12位。”1234″ や “000000” よりも良く使われ、そして当然ながら流出しているそうです。

他にもこのパターンのものが多数ランク上位に出ているようです。

キーボード配置からパスワードを作る

「横一列だから甘いんだ。縦も横も使えば難しいパスワードが作れる」と言う人もいるかもしれませんが、本当でしょうか?

kwprocessor は、キーボード上で縦・横にキーを選んでいった際にできる文字列を生成するというツールです。

この図だと、q から始めて右に3個、下に1個、左に3個、という逆コの字型の並びを示すわけですが、kwprocessor はこのような並びでできる文字列を一括で生成してくれます。

ubuntu$ ./kwp --output-file results.txt basechars/q.base keymaps/en-us.keymap routes/2-to-16-max-3-direction-changes.route

これで出来上がるのが以下のようなファイル。1200行ほどの冒頭です。

qa
qw
q1
qaz
qwe
qwer
qwert
qwerty
qwertyu
qwertyui
qwertyuio
qwertyuiop
qws
q1q
qwq
q1`
qas
q12
qaq
qw2
qwsx
q1qa
qasd
q123
qaq1
q1qaz
qasdf
q1234

「キーボードの”q” を起点とし、英語(米国)キーボードで、2~16字までで2回方向を変えた文字列」 を返してくれます。

コマンドに与えているパラメーターファイルですが、

basechars では”q” だけでなく起点となるキーを多数指定することができます。

keymaps ではキーボード配列をカスタマイズできます。ドイツやロシアのキー配列ファイルも用意されていますし、日本語配列を作ることもできるでしょう。

routes ファイルでは上下左右へいくつ動くか、という移動パターンを数字列として複数与えます。一直線や往復、コの字型などのパターンは最初から用意されていますし、独自のパターンを作って与えることもできます。

コマンドラインオプションでは、シフトキーを押した場合やAltキーを押した場合(ウムラウトとかの出力につながるそう)を含めるようにもできているため、途中で大文字や記号を混ぜるという操作をして作られたパスワードも再現できるでしょう。

これらのパターンから自動生成されたリストを有り得るパスワードのリストとして使うことで、総当たりよりもはるかに少ない試行回数でパスワードの発見と突破ができるかもしれません。

この手のパスワードの作り方を今でもしている人がいたら、やり方を変えた方が無難でしょうね。

via Hacker News