Skip to content

takada-at/sg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AWSのセキュリティグループを管理するツールです。

セキュリティグループの設定をcsvでダウンロード、コメントをつけてバージョン管理、追加したものをAPI経由で保存という使い方ができます。

インストール

$ pip install sg

OR

$ python setup.py install

使い方

適切なディレクトリを作成しinitコマンドを実行してください。

設定が保存されます。

$ cd yourpath
$ sgsg.py init
enter your region[us-east-1]:
us-west-2
save to sg.cfg
enter your aws_access_key_id:
xxx
enter your aws_secret_access_key:
xxx
save to aws_key

リモートからローカルへの同期

以下AWS上に保存された設定を「リモート設定」、csvとして保存されている設定を「ローカル設定」と呼びます。

リモート設定を保存するにはfetchコマンドを利用します。

$ sgsg.py fetch
mkdir security_groups
GROUP: group
save to security_groups/group.csv

ダウンロードされたcsvファイルにはコメントなどを追加することができます。エクセルなどで編集してください(文字コードはutf-8を想定しています)。

なお、新たなリモート設定が追加された場合もfetchで取得できます。更新時もコメントなどを消すことはありません。

差分の表示

ローカルとリモートの差分を表示するにはdiffコマンドを使用します。

L:とついているのはローカル設定だけにあるもの、R:とついているのはリモート設定だけにあるものです。

$ sgsg.py diff
GROUP: somegroup
L:tcp   22      22      192.168.11.1/32
R:tcp   22      22      0.0.0.0/32

ローカルからリモートへの同期

更新を反映するにはcommitコマンドを使用します。

csvに追加、または削除を行なったあと、以下のコマンドを実行します。差分が表示されるので確認後yを選択してください。

sgsg.py commit security_groups/somegroup.csv
GROUP: somegroup
post this setting?[y/N]
+tcp    80      80      192.168.0.1

About

aws security group management

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages