Конкретно AllowUsers
параметр:
например преобразовать это
AllowUsers user1 user2 user3 user4
к этому
AllowUsers
user1
user2
user3
user4
Конкретно AllowUsers
параметр:
например преобразовать это
AllowUsers user1 user2 user3 user4
к этому
AllowUsers
user1
user2
user3
user4
Ответы:
Нет, но это не полезно в этом случае. Вы можете иметь несколько AcceptEnv
, AllowGroups
, AllowUsers
, DenyGroups
, DenyUsers
, HostKey
, PermitOpen
, Port
и Subsystem
линии, и каждая строка добавляет один или более (или иногда нулевой) элементы в списке.
Тем не менее, если вы не можете легко разместить свою AllowUsers
директиву в одной строке, я предлагаю создать ssh_allowed
группу и использовать AllowGroups ssh_allowed
in sshd_config
.
AllowGroups
и AllowUsers
не терпит друг друга (несколько записей одного типа в порядке). Таким образом, в вашей конфигурации придерживаться любой политики, но не обоих.
AllowGroups
и другое, AllowUsers
но если вы это сделаете, демон OpenSSH разрешит вход в систему только разрешенным пользователям, если они также входят в разрешенную группу. Другими словами, это «и» (пересечение), а не «или» (объединение).
KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256
более читабельным
Короче, похоже нет
OpenSSH servconf.c
выгружает файл в буфер без проверки на такие вещи (все, что он делает, это ищет #
пометку для комментария):
while (fgets(line, sizeof(line), f)) {
if ((cp = strchr(line, '#')) != NULL)
memcpy(cp, "\n", 2);
cp = line + strspn(line, " \t\r");
buffer_append(conf, cp, strlen(cp));
}
Функция, которая анализирует конфигурацию, затем разделяет буфер на новые строки и обрабатывает каждую строку:
while ((cp = strsep(&cbuf, "\n")) != NULL) {
if (process_server_config_line(options, cp, filename,
linenum++, &active, user, host, address) != 0)
bad_options++;
}
AllowUsers
директив