Иногда، в чрезвычайной محافظت (یا، آزاد، Ely vy Забыли что-то бое)، нужно сгенерировать рутовый токен Vault، как своего рода режидуру «разбить стекло».
ПРИМЕ Предполагается، что тестовый трезор уже запущен и "распечатан".
] مجارستان با استفاده از سیستم های مدیریتی و مدیریت ویژه ،
Сделайте тестовый Vault، Vttae [tto ] Создайте файл конфигурации test-vault.hcl для работы с نیمم.
mkdir te خیابان
تست سی دی
vi test-vault.hcl
Содержимое test-vault.hcl بدهжно быть следующим:
حافظه "پرونده"
path = "./test-vault/data"
}
disable_mlock = درست است
شنونده "tcp" {
آدرس = "127.0.0.1:8200"
tls_disable = درست است
}
ui = true
Запусти тестовый vault из приведенного выше файла конфигурации:
wget 'https://releases.hashicorp.com/vault/1.1.2/vault_1.1.2_linux_amd64.zip'
unzip vault_1.1.2_linux_amd64.zip
./vault server -config-file = test-vault.hcl
سی دی ../
صادرات VAULT_ADDR = http: //127.0.0.1: 8200
vi dispoz_vault / bin / vault_api_provisioner.sh ## به انتهای پرونده نگاه کنید و ویرایش کنید تا api_provisioner را در برابر فهرست سیستم عامل اجرا کنید
prova_vault / bin / vault_api_provisioner.sh
صادرات VAULT_TOKEN = <>
dispoz_vault / bin / vault_api_provisioner.sh ## دوباره آن را اجرا کنید که یک نشان Vault مناسب و یک طاق اولیه را دارید.
Посмотрите справку по Vault для создания root токена
$ operator خرک تولیدی - root
طریقه استفاده: عملگر طاق تولید ریشه می کند [options] [KEY]
با ترکیب سهمیه از دارندگان سهم ، نشانه ریشه جدیدی تولید می کند. یکی از
موارد زیر برای شروع تولید نشانه های root باید ارائه شود:
- رمز عبور یک بار رمزگذاری شده base64 (OTP) که از طریق پرچم "-otp" تهیه شده است.
از پرچم "-եներate-otp" برای تولید یک مقدار قابل استفاده استفاده کنید. نتیجه
token هنگام بازگشت ، با این مقدار XORed می شود. استفاده از "کد"
پرچم را وارد کنید تا مقدار نهایی را صادر کنید.
- فایلی که حاوی یک کلید PGP یا نام کاربری صفحه کلید در "-pgp-key" است
پرچم. نشانه حاصل با این کلید عمومی رمزگذاری می شود.
یک کلید unseal ممکن است مستقیماً در خط فرمان به عنوان استدلال در اختیار شما قرار گیرد
دستور. اگر کلید به عنوان "-" مشخص شود ، دستور از stdin خوانده می شود. اگر
TTY در دسترس است ، دستور برای متن سریع می کند.
یک کد OTP برای نشان نهایی ایجاد کنید:
$ عملگر طاق تولید-ریشه-ژنراتور-otp
شروع به تولید یک نشانه ریشه:
$ عملگر طاق تولید-ریشه -init -otp = "..."
$ عملگر طاق تولید-ریشه -init -pgp-key = "..."
یک کلید unseal برای پیشرفت در تولید نشانه های ریشه وارد کنید:
$ operator vault generate-root -otp = "..."
گزینه های HTTP:
-address =
آدرس سرور Vault. پیش فرض https://127.0.0.1:8200 است. این
همچنین می تواند از طریق متغیر محیط VAULT_ADDR مشخص شود.
-agent-address =
آدرس نماینده. این همچنین می تواند از طریق
متغیر محیط VAULT_AGENT_ADDR.
-ca-cert =
مسیر در دیسک محلی به یک گواهی CA رمزگذاری شده PEM برای تأیید صحت
گواهی SSL سرور Vault. این امر از اولویت مسیری برخوردار است.
این همچنین می تواند از طریق متغیر محیط VAULT_CACERT مشخص شود.
-ca-path =
مسیر در دیسک محلی به یک فهرست از گواهینامه های CA رمزگذاری شده PEM برای
گواهی SSL سرور Vault را تأیید کنید. این نیز می تواند مشخص شود
از طریق متغیر محیط VAULT_CAPATH.
-client-cert =
مسیر بر روی دیسک محلی به یک گواهی CA رمزگذاری شده PEM برای استفاده
برای تأیید اعتبار TLS به سرور Vault. اگر این پرچم مشخص شده باشد ،
-کلیدی-کلیدی نیز لازم است. این همچنین می تواند از طریق
متغیر محیط VAULT_CLIENT_CERT.
-client-key =
مسیر در دیسک محلی به یک کلید خصوصی رمزگذاری شده PEM که مطابق با آن است
گواهی مشتری از -client-گواهی. این همچنین می تواند از طریق
متغیر محیط VAULT_CLIENT_KEY.
-mfa =
مدارک MFA را به عنوان بخشی از عنوان X-Vault-MFA تهیه کنید. این هم می تواند باشد
مشخص شده از طریق متغیر محیط VAULT_MFA.
-namespace =
فضای نام برای استفاده برای فرمان. تنظیم این کار ضروری نیست
اما استفاده از مسیرهای نسبی را امکان پذیر می سازد. -ns می تواند به عنوان میانبر استفاده شود.
پیش فرض (تنظیم نشده است) این همچنین می تواند از طریق VAULT_NAMESPACE مشخص شود
متغیر محیطی.
رشته خروجی-حلقه
به جای اجرای درخواست ، یک دستور cURL معادل چاپ کنید
رشته و خروج حالت پیش فرض غلط است.
-پولیس-نادیده گرفتن
خط مشی Sentinel که دارای اجرای اجباری نرم است را نادیده بگیرید
مشخص شده پیش فرض نادرست است.
-tls-server-name =
هنگام اتصال به سرور Vault از طریق TLS ، به عنوان میزبان SNI استفاده کنید.
این همچنین می تواند از طریق محیط VAULT_TLS_SERVER_NAME مشخص شود
متغیر.
-tls-skip-verify
تأیید صحت گواهی TLS را غیرفعال کنید. استفاده از این گزینه بسیار است
از کاهش امنیت انتقال داده به و
از سرور Vault. حالت پیش فرض غلط است. این نیز می تواند مشخص شود
از طریق متغیر محیط VAULT_SKIP_VERIFY.
-wrap-ttl =
پاسخ را در یک نشان توخالی با TTL درخواستی پیچیده می کنید.
پاسخ از طریق فرمان "طاق باز کردن" در دسترس است. TTL است
به عنوان یک رشته عددی با پسوندهایی مانند "30s" یا "5m" مشخص شده است. این می تواند
همچنین از طریق متغیر محیط VAULT_WRAP_TTL مشخص می شود.
گزینه های خروجی:
-format =
خروجی را با فرمت معین چاپ کنید. قالبهای معتبر عبارتند از "جدول" ، "json" ،
یا "یامل" پیش فرض جدول است. این همچنین می تواند از طریق
متغیر محیط VAULT_FORMAT.
گزینه های فرمان:
حکم
پیشرفت نسل تولید نشانه ریشه را تنظیم مجدد کنید. این باعث حذف هر گونه موارد خواهد شد
کلیدهای پیاده سازی یا پیکربندی ارسال شده است. حالت پیش فرض غلط است.
-کد =
مقدار رمزگشایی؛ تنظیم این کار باعث می شود که یک عملیات رمزگشایی انجام شود.
-dr-token
این پرچم را تنظیم کنید تا عملیات ریشه را روی نشانه های عملیاتی DR ایجاد کند.
حالت پیش فرض غلط است.
ژنراتور- otp
رمز ورود یک بار آنتروپی بالا (OTP) مناسب برای آن ایجاد و چاپ کنید
با پرچم "-init" استفاده کنید. حالت پیش فرض غلط است.
شروع کنید
نسل توکن ریشه ای را شروع کنید. این تنها در صورت عدم وجود می تواند انجام شود
در حال حاضر یکی در حال انجام است. حالت پیش فرض غلط است.
-nonce =
مقدار عدم ارائه در ابتدای کار ارائه می شود. همان مقدار nonce باید باشد
ارائه شده با هر کلید unseal.
-otp =
کد OTP برای استفاده با "-کد" یا "-init".
-pgp-key =
مسیر به پرونده روی دیسک حاوی یک GPG عمومی رمزگذاری شده باینری یا base64
کلید همچنین می توانید با استفاده از قالب به عنوان نام کاربری Keybase مشخص کنید
"keybase: ". در صورت تهیه ، نشانه ریشه تولید می شود
رمزگذاری شده و base64-رمزگذاری شده با کلید عمومی داده شده.
-استات
وضعیت تلاش فعلی را بدون ارائه کلید Unseal چاپ کنید.
حالت پیش فرض غلط است.
generate-test-root $
Генерация общего OTP для генерации root токена
$ عملگر طاق تولید-ریشه-ژنراتور-otp> otp.txt [196590208] Запусти генерацию root токена
$ عملگر طاق تولید - ریشه - init -otp = $ (گربه otp.txt)
Nonce 8c386f85-ba37-c74b-4ebc-436ec341dbca
درست شروع شد
پیشرفت 0/1
کامل غلط است
طول OTP 26
Как не нужно делать:
$ عملگر طاق تولید ریشه
nonce عملیات: 8c386f85-ba37-c74b-4ebc-436ec341dbca
کلید Unseal (پنهان خواهد شد):
خطا در ارسال کلید unseal: خطایی در درخواست API.
URL: PUT http://127.0.0.1:8200/v1/sys/generate-root/update
کد: 400. خطاها:
* "کلید" باید یک سحر و جادو یا رشته پایه 64 باشد
توجه: معلوم است كه من كليد ناشناخته را نادرست كپي كرده ام
نگران نباشید
$ عملگر طاق تولید ریشه
nonce عملیات: 8c386f85-ba37-c74b-4ebc-436ec341dbca
کلید Unseal (پنهان خواهد شد):
Nonce 8c386f85-ba37-c74b-4ebc-436ec341dbca
درست شروع شد
پیشرفت 1/1
کامل درست است
کد گذاری رمز K3okGaAYO2w4nATeFawgA0T9LQM7zZioNWw
Попытка неправильно декодировать закодированный токен
تولید ریشه-test1 اپراتور $ طاق تولید ریشه -decode = K3okGaAYO2w4nATeFawgA0T9LQM7zZioNWw ## -Забыли поставить OTP
OTP را تأمین کنید
generate-root-test1 $ عملگر خرک تولید-root -decode = K3okGaAYO2w4nATeFawgA0T9LQM7zZioNWw -otp = 8c386f85-ba37-c74b-4ebc-436ec341dbca ## -
Правильно расшифруйте закодированный токен
اپراتور طاق تولید ریشه -decode = K3okGkAYO2w4BwEPFywJA0M9LQM7DzZNQWw -otp = $ (otp.txt گربه) ## - Наконец-то использовал правильно.
s.Tt2ya8Yo56YitsN0tbuTTeRU
И، наконец، все
-ATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTYT с правами администратора
Теперь вы можете использовать токен Vault
curl --header "X-Vault-Token: $ {VAULT_TOKEN" "$ VAULT_ADDR / v1 / سیاست acl "## - Отобразит список ваших политикак