接続元IPで遮断

nginxで表題を行いたいのだが、改めてドキュメントを確認したところ、知らなかったのでメモ。

■ 環境

  • nginx 1.12.1

■ deny

`deny`を入れる時はいつも下記のようにしていた。

location / {
    deny  XXX.XXX.XXX.XXX;
    allow all;
}

上記のように”location”ディレクティブに書いていた。nginxで複数のFQDNを使用していて、全てのFQDNで共通の”deny“を指定したく、また各FQDN毎のログファイルに”403“のログを記載したいなと思い改めてドキュメントを確認してみた。

Module ngx_http_access_module
http://nginx.org/en/docs/http/ngx_http_access_module.html

Directives“に”http“が記載されているではないか。動きを確認する。

各”server“ディレクティブは個別のファイルに記載し、”http“ディレクティブでは”include“しているので、念のため”include“前に”deny“を記載してみた。

http {
    :
  deny XXX.XXX.XXX.XXX;

  include conf.d/*.conf;
}

設定を適用させブラウザでアクセスしたところ、想定通り”403“が返ってきた。これは問題ない。ではこの”403“のログがどこに出力されているか?を確認したところ、FQDN毎に設定しているログファイルに出力されていた。これでやりたいことができそうだ。

以上。

■ 関連

アクセス制限

特定のAttributionのみ取得

DynamoDBにおいて表題を行いたい。

■ 環境

  • AWS DynamoDB
  • awscli
  • macOS High Sierra

■ scan

`scan`で全件取得をしたいのだが、欲しい属性は1つだけである。その場合には下記のようにして取得することができた。

$ aws dynamodb scan --table-name example --projection-expression "attribute1"

複数の属性を取得したい場合には”,”で繋げれば良い。

$ aws dynamodb scan --table-name example --projection-expression "attribute1,attribute2"

以上。

■ 関連

DynamoDBで全件取得

DynamoDB local

表題の件について。使うようになって開発環境としてローカルにあると嬉しい。

■ 環境

  • Java 1.8.0_101
  • awscli 1.15.50
  • AWS DynamoDB
  • macOS High Sierra

■ DynamoDB local

DynamoDB ローカル(ダウンロード可能バージョン)のセットアップ
https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/DynamoDBLocal.html

上記のページからダウンロードする。東京リージョンの”tar.gz“をダウンロードした。

適切なディレクトリでダウンロードした”dynamodb_local_latest.tar.gz“を展開する。

$ tar zxf dynamodb_local_latest.tar.gz

展開して出て来た”README.txt“を参照し、下記の通り実行する。

$ java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar
Initializing DynamoDB Local with the following configuration:
Port:    8000
InMemory:    false
DbPath:    null
SharedDb:    false
shouldDelayTransientStatuses:    false
CorsParams:    *

実行できたようなので、`awscli`で繋いでみる。接続については下記を参照した。

ローカルエンドポイントの設定
https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/DynamoDBLocal.Endpoint.html

$ aws dynamodb list-tables --endpoint-url http://localhost:8000
{
    "TableNames": []
}
$

テーブルが空っぽで返ってきた。デフォルトの接続先として設定してある東京リージョンには既存のテーブルがいくつか存在しているはずなので、確かにローカルにアクセスされているようだ。これでいろいろ実験が捗るかもしれない。

以上。

date -d “”

表題について。以前のエントリに似ている。知らなかったのでメモ。

■ 環境

  • GNU date
  • Linux

■ date -d “”

スクリプトの中で、取得してきた日時の文字列をエポック秒に変換している。それについては関連にある通り以前書いたエントリである。

今回はそのスクリプトの中で日時の文字列が正常に取得できていなかったのに何らかのエポック秒が取得できてしまったので、あれ?となったのでメモである。

$ date -d "" +%s

上記のように、日時の文字列を渡す箇所が空になってしまったまま実行してしまった。0なりかが返ってくるかと思いきや下記の値が返ってきた。

$ date -d "" +%s
1530716400
$

この数値はなんだろう?と思い逆を実行する。

$ date --date @1530716400
Thu Jul  5 00:00:00 JST 2018
$

なるほど。その日の最初のエポック秒が得られるようだ。

以上。

■ 関連

date -d

XMind

表題のアプリを試す。

■ 環境

  • XMind 8
  • macOS High Sierra

■ XMind

マインドマップを描くアプリを探していて、以前は”FreeMind“等を使用したことがあるのだが今回は”XMind”を使用してみることにした。

XMind
https://jp.xmind.net/

無料ダウンロード“から”Mac OSX版“をダウンロードした。ダウンロードファイルは”xmind-jp-8-update7-macosx.dmg“であった。

ダウンロードファイルをダブルクリックで展開/マウントする。

インストールして実行する。

しばらく使ってみることにする。

以上。

Posted in: Mac | Tagged: