Pemahaman Asas Kerberos dan SSH
Pelayan & Klien (sambungan dalaman) dalam VM Fedora

Saya melaburkan masa yang agak lama untuk menghadam kegunaan protokol Kerberos menerusi banyaknya sesi percubaan yang mengecewakan. Setelah menempuh bersiri-siri episod kehampaan, kali ini terbayar juga sekian jumlah sumbangan tenaga yang agak melelahkan itu.
Penjelasan yang tuntas mengenai kaedah pengesahan dengan Kerberos ini boleh diperolehi dari YouTube
,
Kerberos Authentication Explained | A deep dive.
Sungguh! Prosesnya begitu rumit, sementelah betapa sebelum ini banyak kekeliruan yang saya alami dek kurangnya kemahiran dan kefahaman tentang perbezaan antara domain dan REALM
, juga dalam bab menguruskan domain.
Makanya, empat topik yang akan saya sentuh di sini iaitu:
- Pemasangan & Konfigurasi Kerberos di KDC
- Pemasangan & Konfigurasi Kerberos di Klien
- Sambungan SSH Menggunakan Pengesahan GSSAPI
- Penyediaan dua VM Fedora (QEMU/KVM),
khusus untuk tujuan belajar Kerberos ini. Saya kebelakangkan topik ini agar tumpuan utama diberikan kepada topik Kerberos terlebih dahulu. Topik ini hanya untuk dirujuk apabila perlu kepada pengetahuan menguruskan VM yang mungkin tidak cukup dimahiri sebelum ini.
TETAPAN WAJIB DI KEDUA-DUA MESIN MAYA
Maklumat rangkaian kedua-dua VM Fedora: VM1 adalah sebagai KDC yakni server manakala VM2 akan bertindak sebagai klien. Nama pengguna untuk kedua-dua VM adalah sama, iaitu
hadoop
./etc/hosts
192.168.0.101 master.cluster.loc master # KDC/Server 192.168.0.102 worker.cluster.loc worker # Klien
(Optional) Jika perlu memindahkan fail antara VM sebelum menggunakan tiket Kerberos untuk log masuk SSH, disarankan menjana kunci SSH di setiap VM. Kemudian, salin kunci tersebut antara VM secara timbal balik untuk membolehkan sambungan SSH tanpa kata laluan. Setelah itu, barulah digantikan dengan kaedah pengesahan menggunakan
TGT
melalui proses-proses konfigurasi seterusnya.bash
ssh-keygen ssh-copy-id -i ~/.ssh/id_ed25519.pub <hostname / IP address>
Fail konfigurasi SSH:
~/.ssh/config
# global options Host * IdentitiesOnly yes IdentityFile ~/.ssh/id_ed25519 # host & client specific options Host master HostName master.cluster.loc Host worker HostName worker.cluster.loc
Uruskan perihal masa yang perlu diselaraskan terlebih dahulu. Fedora menetapkan masa kepada lokal secara lalai. Kita mahu seragamkan masa ini secara automatik melalui rangkaian dan bukan secara lokal. Maka nyahkan terlebih dahulu tetapan lokal. Fedora menetapkan servis
chronyd
secara lalai untuk NTP maka boleh semak statusnya dari servis berkenaan.bash
sudo timedatectl set-local-rtc 0 timedatectl chronyc tracking
Reference ID : 2BD8B124 (ntp2.demimasa.my) Stratum : 3 Ref time (UTC) : Sun Feb 09 08:24:45 2025 System time : 0.000619294 seconds fast of NTP time Last offset : +0.000626924 seconds RMS offset : 0.061736684 seconds Frequency : 6.417 ppm fast Residual freq : -4.732 ppm Skew : 0.215 ppm Root delay : 0.029564878 seconds Root dispersion : 0.054725591 seconds Update interval : 64.8 seconds Leap status : Normal
Umumnya, aras Stratum yang bagus adalah 5 dan ke bawah kerana ia menunjukkan bahawa jam telah diseragamkan dengan sumber yang dipercayai. Semestinya aras 1 adalah terbaik tetapi peranti yang mencapai aras 1 keseragaman masa biasanya melibatkan kos yang tinggi, namun tidaklah semahal peranti-peranti yang menjadi sumber primer dalam rujukan bagi keselarasan masa dengan aras Stratum 0. Dalam kes saya ini, aras 3 sudah memadai.
Pemasangan & Konfigurasi Kerberos di KDC
Pemasangan:
bash
sudo dnf install krb5-server krb5-libs krb5-workstation ufw -y
Arahan di atas turut memasang
UFW
untuk menguruskan firewall.bash
sudo systemctl enable --now ufw sudo ufw enable sudo ufw allow from 192.168.0.0/24 to any sudo ufw allow 88/tcp sudo ufw allow 88/udp
Terdapat empat fail konfigurasi yang mesti ada:
1./etc/krb5.conf
# To opt out of the system crypto-policies configuration of krb5, remove the # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated. includedir /etc/krb5.conf.d/ [logging] default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log [libdefaults] ticket_lifetime = 24h renew_lifetime = 7d forwardable = true pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt default_realm = CLUSTER.LOC default_ccache_name = KEYRING:persistent:%{uid} [realms] CLUSTER.LOC = { kdc = master.cluster.loc admin_server = master.cluster.loc default_principal_flags = +preauth } [domain_realm] .cluster.loc = CLUSTER.LOC cluster.loc = CLUSTER.LOC
2./var/kerberos/krb5kdc/kdc.conf
[kdcdefaults] kdc_ports = 88 kdc_tcp_ports = 88 [realms] CLUSTER.LOC = { database_name = /var/kerberos/krb5kdc/principal acl_file = /var/kerberos/krb5kdc/kadm5.acl key_stash_file = /var/kerberos/krb5kdc/.k5.CLUSTER.LOC admin_keytab = /var/kerberos/krb5kdc/kadm5.keytab max_life = 10h 0m 0s max_renewable_life = 7d 0h 0m 0s master_key_type = aes256-cts-hmac-sha384-192 supported_enctypes = aes256-cts-hmac-sha384-192:normal aes128-cts-hmac-sha256-128:normal aes256-cts-hmac-sha1-96:normal aes128-cts-hmac-sha1-96:normal camellia256-cts-cmac:normal camellia128-cts-cmac:normal }
3./var/kerberos/krb5kdc/kadm5.acl
*/admin@CLUSTER.LOC * hadoop/admin@CLUSTER.LOC e *
Pengisian entri baris dirujuk dari Dokumentasi MIT untukkadm5.acl
yang antaranya memetik:
"The extract privilege is not included in the wildcard privilege; it must be explicitly assigned. This privilege allows the user to extract keys from the database, and must be handled with great care to avoid disclosure of important keys like those of the kadmin/* or krbtgt/* principals. The lockdown_keys principal attribute can be used to prevent key extraction from specific principals regardless of the granted privilege."DalamArch Linux
, fail-fail konfigurasi dan pangkalan data untuk admin KDC ditempatkan di/var/lib/krb5kdc/
.4.~/.k5login
hadoop@CLUSTER.LOC
Fahami fungsi entri dalam fail ini dengan baik kerana ia penting untuk sesi SSH dalam SSH / sesi SSH berlapis (nested SSH sessions).- Log masuk sebagai pengguna tempatan (pengguna yang sama iaitu
hadoop
) melalui SSH juga memerlukan entri baris di atas. Jika tiada, SSH akan kembali kepada pengesahan menggunakan kunci awam. - Katakan nama pengguna di VM2 ialah
krbclient
. Dalam situasi di mana KDC (VM1) perlu membuat sambungan SSH ke dalam VM2, krbclient mesti mempunyai entriKDC_user@DOMAIN.REALM
dalam fail ini.
▪ Iaitu sebagaimana entri di atas dalam/home/krbclient/.k5login
. - Begitu juga sebaliknya. Sekiranya
krbclient
mahu membuat sambungan SSH ke dalam KDC, KDC mesti mempunyai entrikrbclient@CLUSTER.LOC
dalam/home/hadoop/.k5login
. Entri ini bertindak sebagai pemberi kebenaran untuk log masuk bagi pihak klien.
KDC
sebagaikadmin
dengan arahan berikut:
▪ "addprinc krbclient@CLUSTER.LOC
" dan
▪ "addprinc krbclient/admin@CLUSTER.LOC
" untuk urusan pentadbiran.- Log masuk sebagai pengguna tempatan (pengguna yang sama iaitu
Cipta pangkalan data:-
bash
sudo kdb5_util -r CLUSTER.LOC create -s
Initializing database '/var/kerberos/krb5kdc/principal' for realm 'CLUSTER.LOC', master key name 'K/M@CLUSTER.LOC' You will be prompted for the database Master Password. It is important that you NOT FORGET this password. Enter KDC database master key: Re-enter KDC database master key to verify:
Mulakan servis:-
bash
sudo systemctl enable --now krb5kdc sudo systemctl enable --now kadmin
DalamArch Linux
, kedua-dua servis dinamakan sebagaikrb5-kdc
dankrb5-kadmind
.Teruskan dengan langkah-langkah selanjutnya. Dua langkah pertama menambah prinsipal untuk kegunaan pengguna biasa dan pentadbiran, diikuti dengan penjanaan prinsipal
host/master.cluster.loc
menggunakan kunci rawak bagi pengesahan hos. Akhir sekali,ktadd
digunakan untuk menyimpan kunci tersebut dalam fail keytab bagi membolehkan akses tanpa kata laluan.bash
sudo kadmin.local
Authenticating as principal root/admin@CLUSTER.LOC with password. kadmin.local: addprinc hadoop@CLUSTER.LOC No policy specified for hadoop@CLUSTER.LOC; defaulting to no policy Enter password for principal "hadoop@CLUSTER.LOC": Re-enter password for principal "hadoop@CLUSTER.LOC": Principal "hadoop@CLUSTER.LOC" created. kadmin.local: addprinc hadoop/admin@CLUSTER.LOC No policy specified for hadoop/admin@CLUSTER.LOC; defaulting to no policy Enter password for principal "hadoop/admin@CLUSTER.LOC": Re-enter password for principal "hadoop/admin@CLUSTER.LOC": Principal "hadoop/admin@CLUSTER.LOC" created. kadmin.local: addprinc -randkey host/master.cluster.loc No policy specified for host/master.cluster.loc@CLUSTER.LOC; defaulting to no policy Principal "host/master.cluster.loc@CLUSTER.LOC" created. kadmin.local: ktadd host/master.cluster.loc Entry for principal host/master.cluster.loc with kvno 2, encryption type aes256-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab. Entry for principal host/master.cluster.loc with kvno 2, encryption type aes128-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab. kadmin.local: quit
Sesi percubaan: dapatkan tiket Kerberos di KDC.
bash
kinit
Paparkan maklumat tiket.
bash
klist
Ticket cache: KCM:1000 Default principal: hadoop@CLUSTER.LOC
Valid starting Expires Service principal 02/09/2025 10:10:02 02/09/2025 20:10:02 krbtgt/CLUSTER.LOC@CLUSTER.LOC renew until 02/10/2025 10:09:58Sebelum beralih ke konfigurasi untuk klien, salin fail
/etc/krb5.conf
ke dalam direktori$HOME
terlebih dahulu.bash
cp /etc/krb5.conf .
Konfigurasi Kerberos di Klien
krb5-libs
dankrb5-workstation
memang sudah terpasang dalam Fedora Server. Salin failkrb5.conf
dari KDC (VM1) ke Klien (VM2) dan alihkannya ke direktori/etc/
:bash
scp master:krb5.conf . sudo mv krb5.conf /etc
Pastikan Klien dapat berkomunikasi dengan KDC melalui arahan berikut:
bash
sudo dnf install telnet telnet-server -y ping -c3 master.cluster.loc # Check connectivity telnet master.cluster.loc 88 # Verify KDC is listening on port 88
Sesi percubaan: dapatkan tiket Kerberos di Klien.
bash
kinit
Paparkan maklumat tiket.
bash
klist
Ticket cache: KCM:1000 Default principal: hadoop@CLUSTER.LOC
Valid starting Expires Service principal 02/09/2025 10:17:52 02/09/2025 20:17:52 krbtgt/CLUSTER.LOC@CLUSTER.LOC renew until 02/10/2025 10:17:48Cuba akses
kadmin
dari klien sebagairoot
:bash
sudo kadmin -p hadoop/admin
Authenticating as principal hadoop/admin with password. Password for hadoop/admin@CLUSTER.LOC: kadmin: listprincs K/M@CLUSTER.LOC hadoop/admin@CLUSTER.LOC hadoop@CLUSTER.LOC host/master.cluster.loc@CLUSTER.LOC kadmin/admin@CLUSTER.LOC kadmin/changepw@CLUSTER.LOC krbtgt/CLUSTER.LOC@CLUSTER.LOC kadmin:
Sambungan SSH Menggunakan Pengesahan GSSAPI
Konfigurasi universal
SSH
(tetapkan perkara di bawah ini di kedua-dua VM). Nyahkan komen dan aktifkan opsyenKerberos
sertaGSSAPI
:/etc/ssh/sshd_config
# Kerberos options KerberosAuthentication yes # GSSAPI options GSSAPIAuthentication yes GSSAPICleanupCredentials yes GSSAPIKeyExchange yes
/etc/ssh/ssh_config
Host * GSSAPIAuthentication yes GSSAPIDelegateCredentials yes GSSAPIKeyExchange yes
Kaedah pengesahan denganKeyExchange
tidak disokong dalamArch Linux
. Sebaliknya, kaedah pengesahan yang digunakan adalahgssapi-with-mic
.Mulakan semula servis:
sudo systemctl restart sshd
.Di VM2 (Klien): Tambahkan hos klien dan hasilkan kunci rambang untuknya. Saya percaya langkah ini adalah bertepatan dengan perbincangan di ArchWiki pada bab [5.1: Service principals and keytabs with remote kadmin].
bash
sudo kadmin -p hadoop/admin
kadmin: addprinc -randkey host/worker.cluster.loc No policy specified for host/worker.cluster.loc@CLUSTER.LOC; defaulting to no policy Principal "host/worker.cluster.loc@CLUSTER.LOC" created. kadmin: ktadd host/worker.cluster.loc Entry for principal host/worker.cluster.loc with kvno 2, encryption type aes256-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab. Entry for principal host/worker.cluster.loc with kvno 2, encryption type aes128-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab. kadmin: quit
Cuba SSH ke KDC (Server) dengan opsyen
-v
.bash
ssh master -v
... debug1: Next authentication method: gssapi-keyex Authenticated to master.cluster.loc ([192.168.0.101]:22) using "gssapi-keyex". ...
Semak maklumat tiket di kedua-dua VM dengan arahan
klist
.VM1 (KDC):
Ticket cache: KCM:1000:71016 Default principal: hadoop@CLUSTER.LOC
Valid starting Expires Service principal 02/10/2025 10:47:54 02/10/2025 20:47:29 krbtgt/CLUSTER.LOC@CLUSTER.LOC renew until 02/17/2025 10:47:27VM2 (Klien):
Ticket cache: KCM:1000 Default principal: hadoop@CLUSTER.LOC
Valid starting Expires Service principal 02/10/2025 10:47:29 02/10/2025 20:47:29 krbtgt/CLUSTER.LOC@CLUSTER.LOC renew until 02/17/2025 10:47:27 02/10/2025 10:47:54 02/10/2025 20:47:29 host/master.cluster.loc@CLUSTER.LOC renew until 02/17/2025 10:47:27Saya kira, selesai sudah bahagian
Kerberos
ini. Cache tiket boleh dihapuskan dengan perintahkdestroy
.Untuk menyemak kunci:
bash
sudo klist -kt /etc/krb5.keytab
Keytab name: FILE:/etc/krb5.keytab KVNO Principal ---- -------------------------------------------------------------------------- 2 host/worker.cluster.loc@CLUSTER.LOC (aes256-cts-hmac-sha384-192) 2 host/worker.cluster.loc@CLUSTER.LOC (aes128-cts-hmac-sha256-128) 2 host/worker.cluster.loc@CLUSTER.LOC (aes256-cts-hmac-sha1-96) 2 host/worker.cluster.loc@CLUSTER.LOC (aes128-cts-hmac-sha1-96) 2 host/worker.cluster.loc@CLUSTER.LOC (camellia256-cts-cmac) 2 host/worker.cluster.loc@CLUSTER.LOC (camellia128-cts-cmac)
Untuk memadam kunci:
bash
sudo kadmin.local
Authenticating as principal root/admin@CLUSTER.LOC with password. kadmin.local: ktrem -q host/worker.cluster.loc kadmin.local:
Penyediaan dua VM Fedora (QEMU/KVM)
Untuk penyediaan dua VM dengan distribusi yang sama ini, saya gunakan imej
QEMU qcow2
bagiFedora Server 41
, yang dimuat turun dari laman ini di bawah seksyen For Intel and AMD x86_64 systems.Setiap satu VM ditetapkan alamat IP-nya sendiri dan hal ini dapat dicapai (terima kasih) dengan adanya fungsi untuk menambah peranti
TUN/TAP
. Fungsi ini membolehkan pengguna untuk menambah alamat IP yang ditugaskan kepada VM masing-masing melalui laluan (route) daripada alamat IP yang dimiliki oleh hos.Buat satu skrip untuk aktifkan peranti
tap
dan jalankannya di terminal.~/tapup
#!/usr/bin/env zsh # Add new TAP (network tap) devices in TAP mode sudo ip tuntap add dev tap1 mode tap sudo ip tuntap add dev tap2 mode tap # Bring up the tap devices, making them active sudo ip link set dev tap1 up sudo ip link set dev tap2 up # Add routes to the assigned IP addresses for each tap sudo ip route add 192.168.0.101 dev tap1 ???END sudo ip route add 192.168.0.102 dev tap2
Urus firewall melalui
UFW
(Uncomplicated Firewall) untuk membenarkan trafik yang diperlukan.bash
sudo ufw allow from 192.168.0.0/24 to any sudo ufw allow in on tap1 sudo ufw allow in on tap2 sudo ufw allow out on tap1 sudo ufw allow out on tap2
Edit fail berikut:
/etc/default/ufw
DEFAULT_FORWARD_POLICY="ACCEPT"
Nyahkomen baris-baris di fail berikut:
/etc/ufw/sysctl.conf
net/ipv4/ip_forward=1 net/ipv6/conf/default/forwarding=1 net/ipv6/conf/all/forwarding=1
Tambah fail berikut dengan entri baris di bawah:
/etc/sysctl.d/99-arp-proxy.conf
net.ipv4.conf.tap1.proxy_arp=1 net.ipv4.conf.tap2.proxy_arp=1 net.ipv4.conf.wlan0.proxy_arp=1
Muat semula
sysctl
danufw
.bash
sudo sysctl --system sudo systemctl restart ufw sudo ufw reload sudo ufw status verbose
Salin imej yang dimuat turun dan namakan semula kedua-dua imej agar mempunyai nama unik untuk pelaksanaan, dan ubah saiz imej dengan arahan berikut:
bash
qemu-img resize Fedora-Server-KVM-41-1.4.x86_64_1.qcow2 30G qemu-img resize Fedora-Server-KVM-41-1.4.x86_64_2.qcow2 30G
Perintah baris untuk memulakan VM adalah seperti berikut (edit yang mana perlu bagi menjalankan kedua-duanya seperti nombor tap (
ifname=tap2
untuk VM2), alamatMAC
, dan nama imej):bash
qemu-system-x86_64 -enable-kvm \ -machine type=q35,vmport=off \ -vga qxl -display gtk,gl=on,show-cursor=on \ -display spice-app,gl=on \ -spice unix=on,addr=/tmp/vm_spice.socket,disable-ticketing=on \ -m 1G -cpu host -smp 2 -daemonize \ -nic tap,model=virtio-net-pci,id=nic0,ifname=tap1,script=no,downscript=no,mac=52:54:00:12:34:56 \ -drive media=disk,if=virtio,aio=native,cache.direct=on,file=laluan_ke_imej-Fedora-Server-KVM-41-1.4.x86_64_1.qcow2
Seusai membuat konfigurasi SSH, baris ketiga dan keempat (diwarnakan) yang menempatkan opsyen untuk membukavirt-viewer
boleh dibuang sebelum memulakan sesi berikutnya jika kerja-kerja di VM hanya dijalankan dari sistem hos.Setelah VM dijalankan, ada 5 perkara yang akan terpapar untuk dibuat penetapan:-
- Language settings;
- Time settings;
- Network configuration: Saya tetapkan nama hos dan masukkan yang berikut pada konfigurasi peranti
enp0s2
.- IPv4 address ⇒
192.168.0.101
- IPv4 netmask ⇒
255.255.255.0
- IPv4 gateway ⇒
192.168.0.50
(alamat IP hos) - Nameservers ⇒
8.8.8.8
- serta tanda “Connect automatically after reboot” (telah ditanda secara lalai) & “Apply configuration in installer”.
- IPv4 address ⇒
- Root password
- User creation
Pun begitu, sekiranya terlupa untuk set up konfigurasi rangkaian semasa imej server ini mula-mula boot, buat langkah-langkah di bawah untuk mendapatkan sambungan Internet secara manual (aplikasikan kepada kedua-dua VM).
VM1:
bash
sudo ip addr add 192.168.0.101/24 dev enp0s2 sudo ip route add default via 192.168.0.50 dev enp0s2 # this is the host IP address
VM2:
bash
sudo ip addr add 192.168.0.102/24 dev enp0s2 sudo ip route add default via 192.168.0.50 dev enp0s2 # this is the host IP address
Tambahkan fail berikut di kedua-dua VM dengan konfigurasi
DNS
sebagaimana berikut./etc/systemd/resolved.conf.d/dns_servers.conf
[Resolve] DNS=8.8.8.8
Dan mula semula servis
systemd-resolved
sertaping
laman web untuk kepastian bahawa sambungan rangkaian telah berjaya.bash
sudo systemctl restart systemd-resolved ping -c3 fedoraproject.org
Cuba
SSH
dari hos ke semua VM.Ubah saiz peranti dengan kaedah berikut:-
bash
sudo parted /dev/vda
GNU Parted 3.6 Using /dev/vda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) print Warning: Not all of the space available to /dev/vda appears to be used, you can fix the GPT to use all of the space (an extra 48234496 blocks) or continue with the current setting? Fix/Ignore? Fix Model: Virtio Block Device (virtblk) Disk /dev/vda: 32.2GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: pmbr_boot
Number Start End Size File system Name Flags 1 1049kB 2097kB 1049kB bios_grub 2 2097kB 1076MB 1074MB ext4 bls_boot 3 1076MB 7515MB 6439MB lvm
(parted) unit s (parted) print free Model: Virtio Block Device (virtblk) Disk /dev/vda: 62914560s Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: pmbr_boot
Number Start End Size File system Name Flags 34s 2047s 2014s Free Space 1 2048s 4095s 2048s bios_grub 2 4096s 2101247s 2097152s ext4 bls_boot 3 2101248s 14678015s 12576768s lvm 14678016s 62914526s 48236511s Free Space
(parted) resizepart 3 62914526s (parted) unit compact (parted) print free Model: Virtio Block Device (virtblk) Disk /dev/vda: 32.2GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: pmbr_boot
Number Start End Size File system Name Flags 17.4kB 1049kB 1031kB Free Space 1 1049kB 2097kB 1049kB bios_grub 2 2097kB 1076MB 1074MB ext4 bls_boot 3 1076MB 32.2GB 31.1GB lvm
(parted) quit Information: You may need to update /etc/fstab.bash
sudo pvresize /dev/vda3
Physical volume "/dev/vda3" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized
bash
sudo lvresize -l +100%FREE -r sysvg/root
Size of logical volume sysvg/root changed from <6.00 GiB (1535 extents) to <29.00 GiB (7423 extents). File system xfs found on sysvg/root mounted at /. Extending file system xfs to <29.00 GiB (31134318592 bytes) on sysvg/root... xfs_growfs /dev/sysvg/root meta-data=/dev/mapper/sysvg-root isize=512 agcount=4, agsize=392960 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=1 = reflink=1 bigtime=1 inobtcount=1 nrext64=1 data = bsize=4096 blocks=1571840, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=16384, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 1571840 to 7601152 xfs_growfs done Extended file system xfs on sysvg/root. Logical volume sysvg/root successfully resized.
- Language settings;
Apabila sudah selesai, boleh hentikan dan padam peranti
tap
dengan e.g. skrip di bawah:~/tapdn
#!/usr/bin/env zsh # Flush the routing table for the TAP devices sudo ip route flush dev tap1 sudo ip route flush dev tap2 # Bring down the TAP devices sudo ip link set dev tap1 down sudo ip link set dev tap2 down # Delete the TAP devices sudo ip link del dev tap1 sudo ip link del dev tap2 # Remove the TAP devices from the system sudo ip tuntap del dev tap1 mode tap sudo ip tuntap del dev tap2 mode tap
Troubleshooting
After rebooting the VMs, there was an issue with the sssd-kcm
service in VM2, where the kinit command threw the following error:
kinit: Connection refused while getting default ccache
Checking the service status using:
systemctl status sssd-kcm
returned the following output:
Failed to init Kerberos context [Permission denied]
Failed to start sssd-kcm.service - SSSD Kerberos Cache Manager.
The issue can be temporarily fixed using the command below, but ChatGPT and DeepSeek do not recommend this as a long-term solution for a production system:
bash
sudo semanage permissive -d sssd_t
The recommended approach is to create or modify an SELinux policy to properly allow sssd-kcm
to function without disabling security mechanisms.