ການຕັ້ງຄ່າຜູ້ໃຊ້

ຜູ້ໃຊ້ເລີ່ມຕົ້ນ

ຕາມຄ່າເລີ່ມຕົ້ນ, ຜູ້ໃຊ້ທີ່ມີສິດທິພິເສດຊື່ວ່າ core ຈະຖືກສ້າງຂຶ້ນໃນລະບົບ Fedora CoreOS, ແຕ່ວ່າມັນບໍ່ໄດ້ຖືກຕັ້ງຄ່າດ້ວຍລະຫັດຜ່ານ ຫຼື ກຸນແຈ SSH ເລີ່ມຕົ້ນ. ຫາກທ່ານຕ້ອງການໃຊ້ຜູ້ໃຊ້ core, ທ່ານຕ້ອງລະບຸການຕັ້ງຄ່າ Ignition ເຊິ່ງລວມມີລະຫັດຜ່ານ ແລະ/ຫຼື ກຸນແຈ SSH ສຳລັບຜູ້ໃຊ້ core. ນອກຈາກນີ້, ທ່ານຍັງສາມາດສ້າງຜູ້ໃຊ້ໃໝ່ເພີ່ມເຕີມຜ່ານການຕັ້ງຄ່າ Ignition ໄດ້.

ຫາກທ່ານບໍ່ຕ້ອງການໃຊ້ Ignition ເພື່ອຈັດການກຸນແຈ SSH ຂອງຜູ້ໃຊ້ເລີ່ມຕົ້ນ, ທ່ານສາມາດໃຊ້ Afterburn support ແລະ ລະບຸກຸນແຈ SSH ຜ່ານຜູ້ໃຫ້ບໍລິການຄລາວຂອງທ່ານ.

ການສ້າງຜູ້ໃຊ້ໃໝ່

ເພື່ອສ້າງຜູ້ໃຊ້ໃໝ່ (ຫຼື ຫຼາຍຜູ້ໃຊ້), ໃຫ້ເພີ່ມມັນເຂົ້າໃນລາຍຊື່ users ຂອງການຕັ້ງຄ່າ Butane ຂອງທ່ານ. ໃນຕົວຢ່າງຕໍ່ໄປນີ້, ການຕັ້ງຄ່າຈະສ້າງຊື່ຜູ້ໃຊ້ໃໝ່ສອງຊື່, ແຕ່ບໍ່ໄດ້ຕັ້ງຄ່າໃຫ້ພວກເຂົາສາມາດໃຊ້ງານໄດ້ໂດຍສະເພາະ.

variant: fcos
version: 1.7.0
passwd:
  users:
    - name: jlebon
    - name: miabbott

ໂດຍປົກກະຕິແລ້ວ ທ່ານຈະຕ້ອງການຕັ້ງຄ່າກຸນແຈ SSH ຫຼື ລະຫັດຜ່ານ ເພື່ອໃຫ້ສາມາດເຂົ້າສູ່ລະບົບໃນຖານະຜູ້ໃຊ້ເຫຼົ່ານັ້ນໄດ້.

ການໃຊ້ກຸນແຈ SSH

ເພື່ອຕັ້ງຄ່າກຸນແຈ SSH ສຳລັບຜູ້ໃຊ້ພາຍໃນລະບົບ, ທ່ານສາມາດໃຊ້ການຕັ້ງຄ່າ Butane ໄດ້:

variant: fcos
version: 1.7.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...

ການໃຊ້ການອ້າງອີງໄຟລ໌ໄປຫາຜົນກຸນແຈ SSH

ຂຶ້ນຢູ່ກັບລຸ້ນ ແລະ ເວີຊັນການຕັ້ງຄ່າທີ່ທ່ານໃຊ້, ທ່ານສາມາດໃຊ້ການອ້າງອີງໄຟລ໌ທ້ອງຖິ່ນໄປຫາກຸນແຈສາທາລະນະ SSH ແທນການໃສ່ຂໍ້ມູນແບບອິນລາຍ. ຕົວຢ່າງຈາກ ພາກກ່ອນໜ້າ ສາມາດຂຽນໃໝ່ໄດ້ດັ່ງນີ້:

variant: fcos
version: 1.7.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

ທ່ານຕ້ອງໃຊ້ butane ພ້ອມກັບພາຣາມີເຕີ --files-dir ເພື່ອອະນຸຍາດໃຫ້ໂຫລດໄຟລ໌ຈາກດິສກ໌ໃນເວລາແປງເປັນການຕັ້ງຄ່າ Ignition ເພື່ອໃຫ້ສິ່ງນີ້ໃຊ້ງານໄດ້.

ກວດສອບ ຂໍ້ກຳນົດການຕັ້ງຄ່າ ສຳລັບລາຍລະອຽດເພີ່ມເຕີມ ແລະ ເບິ່ງວ່າເວີຊັນໃດຂອງຮູບແບບທີ່ທ່ານເລືອກຮອງຮັບມັນ. ໂດຍທົ່ວໄປແລ້ວ, ແຕ່ລະໄຟລ໌ອາດມີກຸນແຈ SSH ຫຼາຍອັນ, ໜຶ່ງອັນຕໍ່ແຖວ, ແລະ ທ່ານສາມາດລະບຸ ssh_authorized_keys ແບບອິນລາຍເພີ່ມເຕີມໄດ້ ຕາບໃດທີ່ກຸນແຈ SSH ນັ້ນບໍ່ຊ້ຳກັນ.

ສະຖານທີ່ເກັບກຸນແຈ SSH

sshd ໃຊ້ ໂປຣແກຣມຊ່ວຍ, ທີ່ລະບຸຜ່ານຄຳສັ່ງ AuthorizedKeysCommand, ເພື່ອອ່ານກຸນແຈສາທາລະນະຈາກໄຟລ໌ໃນໄດເຣັກທໍຣີ ~/.ssh/authorized_keys.d ຂອງຜູ້ໃຊ້. AuthorizedKeysCommand ຈະຖືກລອງໃຊ້ຫຼັງຈາກໄຟລ໌ AuthorizedKeysFile ປົກກະຕິ (ຄ່າເລີ່ມຕົ້ນແມ່ນ ~/.ssh/authorized_keys) ແລະ ຈະບໍ່ຖືກປະຕິບັດຖ້າພົບກຸນແຈທີ່ກົງກັນຢູ່ທີ່ນັ້ນ. ໄຟລ໌ກຸນແຈໃນ ~/.ssh/authorized_keys.d ຈະຖືກອ່ານຕາມລໍາດັບຕົວອັກສອນ, ໂດຍຈະຂ້າມໄຟລ໌ທີ່ຂຶ້ນຕົ້ນດ້ວຍຈຸດ (dotfiles).

Ignition ຈະຂຽນກຸນແຈ SSH ທີ່ຕັ້ງຄ່າໄວ້ລົງໃນ ~/.ssh/authorized_keys.d/ignition. ໃນແພລັດຟອມທີ່ສາມາດຕັ້ງຄ່າກຸນແຈ SSH ໃນລະດັບແພລັດຟອມໄດ້ ເຊັ່ນ AWS, Afterburn ຈະຂຽນກຸນແຈເຫຼົ່ານັ້ນລົງໃນ ~/.ssh/authorized_keys.d/afterburn.

ເພື່ອດີບັກການອ່ານ ~/.ssh/authorized_keys.d, ໃຫ້ລັນໂປຣແກຣມຊ່ວຍດ້ວຍຕົນເອງ ແລະ ກວດສອບຜົນຮັບຂອງມັນ:

/usr/libexec/ssh-key-dir

ເພື່ອເບິ່ງ ແລະ ກວດສອບຄວາມຖືກຕ້ອງຂອງການຕັ້ງຄ່າທີ່ມີຜົນບັງຄັບໃຊ້ສຳລັບ sshd, ມີສອງໂໝດທົດສອບ (-t, -T) ໃຫ້ໃຊ້ງານຕາມທີ່ລະບຸໄວ້ໃນ ໜ້າຄູ່ມື (manual pages).

ການໃຊ້ການຢືນຢັນຕົວຕົນດ້ວຍລະຫັດຜ່ານ

Fedora CoreOS ມາໂດຍບໍ່ມີລະຫັດຜ່ານເລີ່ມຕົ້ນ. ທ່ານສາມາດໃຊ້ການຕັ້ງຄ່າ Butane ເພື່ອຕັ້ງລະຫັດຜ່ານ ສຳລັບຜູ້ໃຊ້ພາຍໃນລະບົບ. ຈາກຕົວຢ່າງກ່ອນໜ້ານີ້, ພວກເຮົາສາມາດຕັ້ງຄ່າ password_hash ສຳລັບຜູ້ໃຊ້ໜຶ່ງຄົນ ຫຼື ຫຼາຍຄົນໄດ້:

variant: fcos
version: 1.7.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...

ເພື່ອສ້າງແຮັສລະຫັດຜ່ານທີ່ປອດໄພ, ໃຫ້ໃຊ້ mkpasswd ຈາກແພັກເກັດ whois. Linux distro ຂອງທ່ານອາດຈະມີເວີຊັນ mkpasswd ທີ່ແຕກຕ່າງກັນ; ທ່ານສາມາດໝັ້ນໃຈໄດ້ວ່າທ່ານກຳລັງໃຊ້ເວີຊັນທີ່ຖືກຕ້ອງໂດຍການລັນມັນຈາກຄອນເທນເນີ:

$ podman run -ti --rm quay.io/coreos/mkpasswd --method=yescrypt
Password:
$y$j9T$A0Y3wwVOKP69S.1K/zYGN.$S596l11UGH3XjN...

ແນະນຳໃຫ້ໃຊ້ວິທີການເຮັດແຮັສ yescrypt ສຳລັບລະຫັດຜ່ານໃໝ່. ສຳລັບລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບວິທີການເຮັດແຮັສ, ໃຫ້ເບິ່ງ man 5 crypt.

ລະຫັດຜ່ານທີ່ຕັ້ງຄ່າໄວ້ຈະຖືກຍອມຮັບສຳລັບການຢືນຢັນຕົວຕົນພາຍໃນລະບົບຢູ່ທີ່ຄອນໂຊລ. ຕາມຄ່າເລີ່ມຕົ້ນ, Fedora CoreOS ບໍ່ອະນຸຍາດໃຫ້ ຢືນຢັນຕົວຕົນດ້ວຍລະຫັດຜ່ານຜ່ານ SSH.

ການຕັ້ງຄ່າກຸ່ມ

Fedora CoreOS ມາພ້ອມກັບບາງກຸ່ມທີ່ຖືກຕັ້ງຄ່າໄວ້ເປັນຄ່າເລີ່ມຕົ້ນ: root, adm, wheel, sudo, systemd-journal, docker

ເມື່ອຕັ້ງຄ່າຜູ້ໃຊ້ຜ່ານການຕັ້ງຄ່າ Butane, ພວກເຮົາສາມາດລະບຸກຸ່ມທີ່ຜູ້ໃຊ້ຄວນເປັນສະມາຊິກໄດ້.

variant: fcos
version: 1.7.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...

ຫາກບໍ່ມີກຸ່ມດັ່ງກ່າວ, ຜູ້ໃຊ້ຄວນສ້າງພວກມັນຂຶ້ນມາເປັນສ່ວນໜຶ່ງຂອງການຕັ້ງຄ່າ Butane.

variant: fcos
version: 1.7.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...

ການຕັ້ງຄ່າສິດທິໃນການບໍລິຫານລະບົບ

ວິທີທີ່ງ່າຍທີ່ສຸດສຳລັບຜູ້ໃຊ້ທີ່ຈະໄດ້ຮັບສິດທິໃນການບໍລິຫານລະບົບແມ່ນການເພີ່ມພວກເຂົາເຂົ້າໃນກຸ່ມ sudo ແລະ wheel ເປັນສ່ວນໜຶ່ງຂອງການຕັ້ງຄ່າ Butane.

variant: fcos
version: 1.7.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...

ການເປີດໃຊ້ງານການຢືນຢັນຕົວຕົນດ້ວຍລະຫັດຜ່ານຜ່ານ SSH

ເພື່ອເປີດໃຊ້ງານການຢືນຢັນຕົວຕົນດ້ວຍລະຫັດຜ່ານຜ່ານ SSH, ໃຫ້ເພີ່ມຂໍ້ຄວາມຕໍ່ໄປນີ້ລົງໃນການຕັ້ງຄ່າ Butane ຂອງທ່ານ:

variant: fcos
version: 1.7.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