Mengonfigurasi Pengguna
Pengguna Default
Secara bawaan, seorang pengguna dengan hak istimewa bernama core dibuat pada sistem Fedora CoreOS, namun pengguna ini tidak dikonfigurasi dengan kata sandi atau kunci SSH bawaan. Jika ingin menggunakan pengguna core, Anda harus menyediakan konfigurasi Ignition yang menyertakan kata sandi dan/atau kunci SSH untuk pengguna core. Sebagai alternatif, Anda juga dapat membuat pengguna baru melalui konfigurasi Ignition.
Jika Anda tidak ingin menggunakan Ignition untuk mengelola kunci SSH pengguna bawaan, Anda dapat memanfaatkan dukungan Afterburn dan menyediakan kunci SSH melalui penyedia layanan cloud Anda.
Membuat Pengguna Baru
Untuk membuat satu atau beberapa pengguna baru, tambahkan entri ke daftar users pada konfigurasi Butane Anda. Dalam contoh berikut, konfigurasi membuat dua nama pengguna baru, tetapi tidak mengonfigurasinya agar memiliki fungsi khusus.
variant: fcos
version: 1.6.0
passwd:
users:
- name: jlebon
- name: miabbott
Biasanya Anda ingin mengonfigurasi kunci SSH atau kata sandi agar dapat masuk sebagai pengguna tersebut.
Menggunakan Kunci SSH
Untuk mengonfigurasi kunci SSH bagi pengguna lokal, Anda dapat menggunakan konfigurasi Butane:
variant: fcos
version: 1.6.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...
Menggunakan Referensi Berkas untuk Kunci SSH
Tergantung pada varian dan versi konfigurasi yang Anda gunakan, Anda dapat menggunakan referensi file lokal untuk kunci publik SSH alih-alih menyertakannya langsung di file konfigurasi. Contoh pada bagian sebelumnya dapat ditulis ulang sebagai berikut:
variant: fcos
version: 1.6.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
Anda harus menggunakan butane dengan parameter --files-dir untuk memungkinkan pemuatan file dari disk ketika dikonversi ke konfigurasi Ignition agar fitur ini berfungsi.
Periksa spesifikasi konfigurasi untuk detail lebih lanjut dan versi mana dari varian yang Anda pilih yang mendukung fitur ini. Secara umum, setiap file dapat berisi beberapa kunci SSH, satu per baris, dan Anda juga dapat menambahkan ssh_authorized_keys langsung selama kunci SSH tersebut unik.
|
Lokasi Kunci SSH
sshd menggunakan program pembantu yang ditentukan melalui arahan AuthorizedKeysCommand untuk membaca kunci publik dari file di direktori ~/.ssh/authorized_keys.d milik pengguna. AuthorizedKeysCommand dijalankan setelah file AuthorizedKeysFile biasa (yang secara bawaan adalah ~/.ssh/authorized_keys) dan tidak akan dijalankan jika ada kunci yang cocok ditemukan di sana. File kunci dalam direktori ~/.ssh/authorized_keys.d dibaca menurut urutan alfabet, mengabaikan file tersembunyi.
Ignition menulis kunci SSH yang dikonfigurasi ke ~/.ssh/authorized_keys.d/ignition. Pada platform di mana kunci SSH dapat dikonfigurasi di tingkat platform, seperti AWS, Afterburn menulis kunci tersebut ke ~/.ssh/authorized_keys.d/afterburn.
Untuk melakukan debug pembacaan ~/.ssh/authorized_keys.d, jalankan program pembantu tersebut secara manual dan periksa keluarannya:
/usr/libexec/ssh-key-dir
Untuk melihat dan memvalidasi konfigurasi efektif untuk sshd, tersedia dua mode pengujian (-t, -T) sebagaimana dijelaskan pada halaman manual.
Menggunakan Autentikasi Kata Sandi
Fedora CoreOS tidak memiliki kata sandi bawaan. Anda dapat menggunakan konfigurasi Butane untuk menetapkan kata sandi bagi pengguna lokal. Berdasarkan contoh sebelumnya, kita dapat mengonfigurasi password_hash untuk satu atau beberapa pengguna:
variant: fcos
version: 1.6.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...
Untuk menghasilkan hash kata sandi yang aman, gunakan mkpasswd dari paket whois. Distro Linux Anda mungkin menyertakan implementasi mkpasswd yang berbeda; Anda dapat memastikan bahwa Anda menggunakan versi yang benar dengan menjalankannya dari dalam container:
$ podman run -ti --rm quay.io/coreos/mkpasswd --method=yescrypt
Password:
$y$j9T$A0Y3wwVOKP69S.1K/zYGN.$S596l11UGH3XjN...
Metode hashing yescrypt direkomendasikan untuk kata sandi baru. Untuk informasi lebih lanjut tentang metode hashing, lihat man 5 crypt.
Kata sandi yang dikonfigurasi akan diterima untuk autentikasi lokal di konsol. Secara bawaan, Fedora CoreOS tidak mengizinkan autentikasi kata sandi melalui SSH.
Mengonfigurasi Grup
Fedora CoreOS dilengkapi dengan beberapa grup yang telah dikonfigurasi secara bawaan: root, adm, wheel, sudo, systemd-journal, docker
Ketika mengonfigurasi pengguna melalui konfigurasi Butane, kita dapat menentukan grup yang seharusnya diikuti oleh pengguna tersebut.
variant: fcos
version: 1.6.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...
Jika sebuah grup belum ada, pengguna harus membuatnya sebagai bagian dari konfigurasi Butane.
variant: fcos
version: 1.6.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...
Mengonfigurasi Hak Istimewa Administratif
Cara termudah agar pengguna diberikan hak istimewa administratif adalah dengan menambahkannya ke dalam grup sudo dan wheel sebagai bagian dari konfigurasi Butane.
variant: fcos
version: 1.6.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...
Mengaktifkan Autentikasi Kata Sandi SSH
Untuk mengaktifkan autentikasi kata sandi melalui SSH, tambahkan konfigurasi berikut ke file Butane Anda:
variant: fcos
version: 1.6.0
storage:
files:
- path: /etc/ssh/sshd_config.d/20-enable-passwords.conf
mode: 0644
contents:
inline: |
# Fedora CoreOS menonaktifkan login SSH menggunakan kata sandi secara bawaan.
# Aktifkan fitur ini.
# File ini harus diurutkan sebelum 40-disable-passwords.conf.
PasswordAuthentication yes
Want to help? Learn how to contribute to Fedora Docs ›