Configurando Usuarios
Usuario Predeterminado
De forma predeterminada en el sistema Fedora CoreOS se crea un usuario privilegiado llamado core
, pero no está configurado con una contraseña predeterminada o clave SSH. Si desea utilizar el usuario core
, debe suministrarle una configuración Ignition que incluye una contraseña y/o clave(s) SSH para el usuario core
. Alternativamente usted puede crear nuevos usuarios adicionales por medio de configuraciones Ignition.
Sí no desea usar Ignition para administrar la(s) clave(s) SSH predeterminadas de usuario, puede hacer uso del Soporte Afterburn y suministrar una clave SSH por medio de su proveedor en la nube.
Creando un NUevo Usuario
Para crear un nuevo usuario (o usuarios), añádalos a la lista `users`de su configuración Butane. En el siguiente ejemplo, la configuración crea dos nuevos nombres de usuario pero no los configura para ser especialmente útiles.
variant: fcos
version: 1.5.0
passwd:
users:
- name: jlebon
- name: miabbott
Usted normalmente desea configurar claves SSH o una contraseña con el objetivo de ser capaz de acceder como esos usuarios.
Usando una clave SSH
Para configurar una clave SSH para un usuario local, puede usar una configuración Butane:
variant: fcos
version: 1.5.0
passwd:
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHn2eh...
- name: jlebon
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDC5QFS...
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIveEaMRW...
- name: miabbott
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDTey7R...
Usar Referencias de Archivo para Claves SSH
Dependiendo de la variante de configuración y de la versión que use, puede usar referencias de archivos locales a claves públicas SSH en lugar de insertarlas. El ejemplo de la sección anterior se puede volver a escribir como sigue:
variant: fcos
version: 1.5.0
passwd:
users:
- name: core
ssh_authorized_keys_local:
- users/core/id_rsa.pub
- name: jlebon
ssh_authorized_keys_local:
- users/jlebon/id_rsa.pub
- users/jlebon/id_ed25519.pub
- name: miabbott
ssh_authorized_keys_local:
- users/miabbott/id_rsa.pub
Usted tiene que usar butane
con el parámetro --files-dir
para permitir cargar archivos desde el disco cuando convierta las configuraciones Ignition para este trabajo.
Compruebe las Especificaciones de configuración para más detalles y que versiones de su variante seleccionada las soportan. Generalmente, cada archivo puede contener múltiples claves SSH, una por línea, y además puede especificar en línea ssh_authorized_keys siempre que las claves SSH sean únicas.
|
Ubicaciones de Clave SSH
sshd usa un programa de ayuda, especificado por medio de la directiva AuthorizedKeysCommand
, para leer las claves públicas desde archivo en el directorio ~/.ssh/authorized_keys.d
del usuario. AuthorizedKeysCommand
se prueba después de los archivos AuthorizedKeysFile
usuales (de forma predeterminada a ~/.ssh/authorized_keys
) y no será ejecutado si una clave que coincida se encuentra allí. Los archivos de clave en ~/.ssh/authorized_keys.d
son leídos en orden alfabético ignorando los archivos de punto.
Ignition escribe las claves SSH configuradas en ~/.ssh/authorized_keys.d/ignition
. Sobre las plataformas donde las claves SSH pueden ser configuradas a nivel de plataforma, como AWS, Afterburn escribe estas claves en ~/.ssh/authorized_keys.d/afterburn
.
Para depurar la lectura de ~/.ssh/authorized_keys.d
, manualmente ejecute el programa ayudante e inspeccione su salida:
/usr/libexec/ssh-key-dir
Para visualizar y validar la configuración efectiva de sshd, hay dos modos de prueba disponibles (-t
, -T
) como se documenta en la página de manual.
Usando Contraseña de Autenticación
Fedora CoreOS se envía sin contraseñas predeterminadas. Puede usar la configuración Butane para establecer una contraseña para un usuario local. Sobre la base del ejemplo anterior, podemos configurar el password_hash
para uno o más usuarios:
variant: fcos
version: 1.5.0
passwd:
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHn2eh...
- name: jlebon
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDC5QFS...
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIveEaMRW...
- name: miabbott
password_hash: $y$j9T$aUmgEDoFIDPhGxEe2FUjc/$C5A...
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDTey7R...
Para generar un hash de contraseña seguro, use mkpasswd
desde el paquete whois
. Su distribución Linux puede tener una implementación diferente de mkpasswd
; puede asegurarse de que está usando la correcta ejecutándola desde un contenedor:
$ podman run -ti --rm quay.io/coreos/mkpasswd --method=yescrypt
Password:
$y$j9T$A0Y3wwVOKP69S.1K/zYGN.$S596l11UGH3XjN...
Se recomienda el método hash yescrypt
para las nuevas contraseñas. Para más información sobre los métodos de hash vea man 5 crypt
.
La contraseña configurada será aceptada para la autenticación local en la consola. De modo predeterminado, Fedora CoreOS no permite password authentication via SSH.
Configurando Grupos
Fedora CoreOS viene con unos pocos grupos configurados de manera predeterminada: root
, adm
, wheel
, sudo
, systemd-journal
, docker
Cuando configuramos usuarios por medio de configuraciones Butane, podemos especificar los grupos de los que podría ser parte el usuario(s).
variant: fcos
version: 1.5.0
passwd:
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHn2eh...
- name: jlebon
groups:
- wheel
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDC5QFS...
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIveEaMRW...
- name: miabbott
groups:
- docker
- wheel
password_hash: $y$j9T$aUmgEDoFIDPhGxEe2FUjc/$C5A...
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDTey7R...
Si no existe un grupo, los usuarios podrían crearlo como parte de la configuración Butane.
variant: fcos
version: 1.5.0
passwd:
groups:
- name: engineering
- name: marketing
gid: 9000
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHn2eh...
- name: jlebon
groups:
- engineering
- wheel
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDC5QFS...
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIveEaMRW...
- name: miabbott
groups:
- docker
- marketing
- wheel
password_hash: $y$j9T$aUmgEDoFIDPhGxEe2FUjc/$C5A...
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDTey7R...
Configurar Privilegios Administrativos
La manera más fácil para que los usuarios obtengan privilegios administrativos es tenerlos añadidos a los grupos sudo
y wheel
como parte de la configuración Butane.
variant: fcos
version: 1.5.0
passwd:
groups:
- name: engineering
- name: marketing
gid: 9000
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHn2eh...
- name: jlebon
groups:
- engineering
- wheel
- sudo
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDC5QFS...
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIveEaMRW...
- name: miabbott
groups:
- docker
- marketing
- wheel
- sudo
password_hash: $y$j9T$aUmgEDoFIDPhGxEe2FUjc/$C5A...
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDTey7R...
Habilitando la Autenticación de Contraseña SSH
Para habilitar la autenticación de contraseña por medio de SSH, añada lo siguiente en su configuración Butane:
variant: fcos
version: 1.5.0
storage:
files:
- path: /etc/ssh/sshd_config.d/20-enable-passwords.conf
mode: 0644
contents:
inline: |
# Fedora CoreOS disables SSH password login by default.
# Enable it.
# This file must sort before 40-disable-passwords.conf.
PasswordAuthentication yes
Want to help? Learn how to contribute to Fedora Docs ›