Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ansible-vault 2.0以降のアップデート
Search
yunano
June 01, 2016
Technology
1
1.4k
ansible-vault 2.0以降のアップデート
yunano
June 01, 2016
Tweet
Share
More Decks by yunano
See All by yunano
Ansibleのベストプラクティス構成に従ったplaybook開発を一工夫する
yunano
2
2.6k
Other Decks in Technology
See All in Technology
20250913_JAWS_sysad_kobe
takuyay0ne
2
140
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.6k
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
9.9k
研究開発と製品開発、両利きのロボティクス
youtalk
1
520
Rustから学ぶ 非同期処理の仕組み
skanehira
1
130
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
3
550
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
160
DDD集約とサービスコンテキスト境界との関係性
pandayumi
3
280
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
3.2k
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
390
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
220
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
45
7.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
BBQ
matthewcrist
89
9.8k
Optimizing for Happiness
mojombo
379
70k
Done Done
chrislema
185
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Building Applications with DynamoDB
mza
96
6.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Transcript
ansible-vault 2.0以降のアップデート 2016/06/01 yunano 1
自己紹介 • Qiitaでyunanoという名前で書いています 直近では「ansible-consoleを使おう」というネタを 書きました • http://qiita.com/yunano/items/faba4f3330594e41246b 2
ansible-vaultの簡単なおさらい • パスワードなどの機密情報が書かれたファイルを 暗号化するツール • Ansibleの各種コマンドに”--ask-vault-pass”オ プションか”--vault-password-file”オプション で暗号化した際のパスワードを与えると、処理中 使用する暗号化されたファイルが復号される 普通は暗号化されたvars系ファイルを読み込ませる
暗号化されたplaybookも読むことができる 暗号化されたインベントリファイルも2.0から可能 3
ansible-vaultの2.0以降のアップデート • ansible-vault editは使ってはいけない!? • copyモジュールのsrcに指定したファイルを復号 • cryptographyを使用して高速化 4
ansible-vaultの2.0以降のアップデート • ansible-vault editは使ってはいけない!? • copyモジュールのsrcに指定したファイルを復号 • cryptographyを使用して高速化 5
ansible-vault editは使ってはいけない!? • 「Don't use ansible-vault edit at all.」 出展:
https://github.com/ansible/ansible/issues/12182 6
ansible-vault editの動き • ansible-vault editを実行すると/tmp以下に、復 号されて平文になった一時ファイルが作られるた め、ディスクに平文が書かれることになる 対策として2.0.1からedit終了時に一時ファイルがラ ンダムデータで埋められてから削除されるように なった
7
ansible-vault encryptの機能追加 • 2.0からansible-vault encryptに標準入出力との 読み書き機能が追加 「echo “password” | ansible-vault
encrypt > foo.vault」 「ansible-vault encrypt > foo.vault」 標準入力に何か書いて、行頭でCtrl+dで終了 8
ansible-vaultの2.0以降のアップデート • ansible-vault editは使ってはいけない!? • copyモジュールのsrcに指定したファイルを復号 • cryptographyを使用して高速化 9
copyモジュールのsrcに指定したファイルを復号 • 2.1から「copy: src=bar.vault dest=/etc/bar」のように、srcに暗号化された ファイルを指定すると自動的に復号されてコピー されるように仕様変更 copyモジュール以外には適用されない。例えば templateモジュールだとそのままコピーされる 将来lookupプラグインのfileでも復号されるように
なる予定(2.2から?) 10
ansible-vaultの2.0以降のアップデート • ansible-vault editは使ってはいけない!? • copyモジュールのsrcに指定したファイルを復号 • cryptographyを使用して高速化 11
ansible-vaultの復号は*遅い* • 特に1.7から、例えばhost_vars以下に100個暗 号化されたファイルを置いたとして、インベント リファイルにその100ホスト書かれていれば、処 理対象が実際には1ホストしかない場合でもすべ ての暗号化ファイルが復号されるようになった 12
ansible-vaultの復号は*遅い* • playbook 13 - hosts: host00 connection: local gather_facts:
no tasks: - debug: var=key1
ansible-vaultの復号は*遅い* • インベントリファイル • host_vars/host[00:99].yml(暗号化する) • 「time ansible-playbook -i hosts
site.yml -- vault-password-file password.vault」 27.595秒 14 [test] host[00:99] key1: val1
cryptographyをインストールする • 2.0からcryptographyをインストールすると、そ れだけで復号が高速化する • 「time ansible-playbook -i hosts site.yml
-- vault-password-file password.vault」 2.918秒 15 $ sudo yum install libffi-devel openssl-devel $ sudo pip install cryptography