Я разрабатываю решение, которое вставляет большое количество SSH-ключей в файлы авторизованных ключей моего SSH-сервера. Кто-нибудь знает лимит ключей, которые вы можете вставить в этот файл? Мы говорим о сотне, тысяче или десятках тысяч? Любая идея? А как сказывается на производительности при большом количестве ключей?
Я полагаю, что предпочтительнее разделять ключи между разными пользователями, но я хотел бы знать пределы одного пользователя.
Нет ограничений на количество записей в файле. Из исходного кода
auth2-pubkey.c
/* return 1 if user allows given key */
static int
user_key_allowed2(struct passwd *pw, Key *key, char *file)
{ ...
while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) {
char *cp, *key_options = NULL;
Как видите, это просто перебирает файл до тех пор, пока read_keyfile_line не вернет -1.
Предела нет, но поиск правильного ключа будет медленным, как GREPing для большого текстового файла.