Назад | Перейти на главную страницу

Лучшая практика для скрытого пути к паре ключей в bash_profile?

У меня есть точечные файлы, сохраненные в общедоступном репозитории github, которые включают путь к моим ключам aws, что кажется ужасной вещью, ожидающей своего часа.

Вот так:

function superssh { ssh user@something -i /file/path/to/keys;}

Что лучше сделать, чтобы повысить мою безопасность?

Спрятать ключ в необычном месте отнюдь не безопаснее. Если вы применяете базовую передовую практику управления ключами, вам действительно не нужно делать ничего лишнего.

Ваш закрытый ключ должен храниться «в секрете», в первую очередь это достигается за счет его шифрования. Вы должны использовать надежную парольную фразу для шифрования вашего ключа. В вашей системе (ах) openssh применяет дополнительные ограничения в том смысле, что он не будет использовать закрытый ключ, доступный кому-либо, кроме его владельца.

Ваш открытый ключ является открытым, вы можете передать его кому угодно.

Если у кого-то достаточно доступа к вашему ящику, чтобы забрать ваши ключи, игра в любом случае окончена. Не беспокойся об этом.

Если вы хотите сделать это таким образом, вы можете использовать переменные среды:

export KEY_FOO=/path/to/key/foo.pem
export KEY_BAR=/path/to/key/bar.pem

Поместите этот экспорт в свой .bash_profile или .bashrc или любой другой конфигурации bash init, которая у вас есть. Затем вы можете сделать что-то подобное в других точечных файлах.

function superssh { ssh user@something -i $KEY_FOO; }