it-swarm-es.com

¿Es posible romper las líneas largas en SSHD_CONFIG?

Específicamente AllowUsers parámetro:

p.ej. convertir esto

AllowUsers user1 user2 user3 user4

a esto

AllowUsers
    user1
    user2
    user3
    user4
14

No, pero no es útil en este caso. Puede tener múltiples AcceptEnv, AllowGroups, AllowUsers, DenyGroups, DenyUsers, HostKey, PermitOpen, Port y Subsystem líneas, y cada línea agrega uno o más elementos (o, a veces, cero) a la lista.

No obstante, si no puede adaptarse fácilmente a su directiva AllowUsers en una línea, le sugiero crear un ssh_allowed grupo y usando AllowGroups ssh_allowed en sshd_config.

En resumen, se parece a

OpenSSH's servconf.c VUEDA EL ARCHIVO EN UN BUFFER SIN COMPROBACIÓN DE TALES COSAS (Todo lo que parece hacer es buscar # para marcar un comentario):

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));
}

La función que analiza la configuración luego divide el búfer en las nuevas líneas y procesa cada línea:

while ((cp = strsep(&cbuf, "\n")) != NULL) {
    if (process_server_config_line(options, cp, filename,
        linenum++, &active, user, Host, address) != 0)
    bad_options++;
}
9
Michael Mrozek