Product SiteDocumentation Site

8.9. Konfigurasi Lain: Sinkronisasi Waktu, Log, Berbagi Akses…

Beberapa elemen yang ada pada bagian ini cukup baik untuk diketahui oleh siapa saja yang ingin menguasai seluruh aspek konfigurasi sistem GNU/Linux. Akan tetapi, mereka diperlakukan secara ringkat dan seringkali menacu ke dokumentasi.

8.9.1. Zonawaktu

Zona waktu, dikonfigurasi ketika instalasi awal, adalah sebuah butir konfigurasi untuk paket tzdata. Untuk memodifikasinya, gunakan perintah dpkg-reconfigure tzdata, yang memungkinkan Anda memilih zona waktu yang akan digunakan dengan cara yang interaktif. Konfigurasinya disimpan di dalam berkas /etc/timezone. Sebagai tambahan, /etc/localtime menjadi suatu taut simbolis ke berkas yang sesuai dalam /usr/share/zoneinfo; berkas yang memuat aturan tentang tanggal kapan daylight saving time (DST) aktif, untuk negara-negara yang memakainya.
Ketika Anda perlu mengubah zonawaktu sementara, gunakan variabel lingkungan TZ, yang mana diprioritaskan daripada sistem standar yang terkonfigurasi:
$ date
Mon Jul 29 07:53:36 PM EDT 2024
$ TZ="Pacific/Honolulu" date
Mon Jul 29 01:54:00 PM HST 2024

8.9.2. Sinkronisasi Waktu

Sinkronisasi waktu, yang mungkin nampak mubadzir pada sebuah komputer, sangat penting dalam sebuah jaringan. Karena pengguna tidak memiliki hak akses yang mengizinkan mereka mengubah tanggal dan waktu, hal ini penting agar informasi ini jelas untuk mencegah kebingunan. Lebih jauh, jika seluruh komputer dalam sebuah jaringan tersinkronisasi memungkinkan referensi-silang informasi yang lebih baik dari log pada mesin yang berbeda. Nah, pada saat terjadi serangan, akan mudah untuk merekonstruksi kronologi urutan aksi pada berbagai mesin yang terlibat kompromi. Data yang dikumpulkan beberapa mesin untuk tujuan statistik tidak akan bermanfaat jika mereka tidak tersinkronisasi.

8.9.2.1. Untuk Workstation

Since work stations are regularly rebooted (even if only to save energy), synchronizing them by NTP at boot is enough. To do so, simply install either the ntpdate or the systemd-timesyncd package. You can then change the NTP server used if needed by modifying the /etc/default/ntpdate or the /etc/systemd/timesyncd.conf file.

8.9.2.2. Untuk Server

Server jarang sekali direboot, dan sangat penting untuk waktu sistemnya agar benar. Untuk mengelola waktu yang benar secara permanen, Anda boleh menginstall server NTP lokal, sebuah layanan yang ditawarkan dalam paket ntp. Dalam konfigurasi standarnya, server akan menyinkronkan dengan pool.ntp.org dan menyediakan waktu sebagai respon dari permintaan yang datang dari jaringan lokal. Anda dapat mengonfigurasinya dengan menyunting berkas /etc/ntp.conf, alternatif yang paling signifikan menjadi server NTP untuk yang mengacunya. Jika jaringan memilik banyak server, ini mungkin akan menarik jika memiliki satu server waktu lokal yang tersinkronisasi dengan server publik dan digunakan sebagai sumber waktu dengan server lain dalam jaringan.

8.9.3. Rotasi Berkas Log

Berkas log dapat tumbuh, cepat, dan perlu untuk mengarsipnya. Skema yang paling umum adalah merotasi arsip: berkas log diarsipkan secara reguler, dan hanya arsip X terkini yang dibiarkan. logrotate, program yang bertanggung jawab untuk rotasi ini, mengikuti arahan yang diberikan berkas /etc/logrotate.conf dan seluruh berkas dalam direktori /etc/logrotate.d/. Administrator boleh memodifikasi berkas ini, jika mereka ingin mengadaptasi kebijakan rotasi log yang ditentukan oleh Debian. Man page logrotate(1) menjelaskan seluruh pilihan yang tersedia dalam berkas konfigurasi ini. Anda mungkin ingin menambah jumlah berkas yang dipertahankan dalam rotasi log, atau memindah berkas log ke direktori tertentu yang didedikasikan untuk mengarsip daripada menghapusnya. Anda dapat pula mengirimkannya melalui email untuk diarsipkan di manapun.
Program logrotate dieksekusi per hari oleh penjadwal program cron (dijelaskan di Bagian 9.7, “Menjadwalkan Tugas dengan cron dan atd).

8.9.4. Berbagi Hak Akses Administrator

Seringkali, beberapa administrator bekerja pada jaringan yang sama. Berbagi password root sangatlah tidak elegan, dan membuka kran fitnah karena anonimitas pembuat yang dibagi. Solusi untuk masalah ini adalah program sudo, yang mengizinkan pengguna tertentu untuk mengeksekusi program tertentu dengan hak akses khusus. Pada kasus yang umum, sudo mengizinkan pengguna yang dipercaya untuk mengeksekusi program sebagai root. Untuk melakukannya, pengguna mengeksekusi sudo perintah dan diotentikasi menggunakan password personal mereka.
When installed, the sudo package gives full root rights to members of the sudo Unix group. To delegate other rights, the administrator can use the visudo command, which allows them to modify the /etc/sudoers configuration file (here again, this will invoke the vi editor, or any other editor indicated in the EDITOR environment variable). Alternatively, they might put rules in small files in /etc/sudoers.d/ with the file permissions 0440 as long as this directory is included by /etc/sudoers via @includedir /etc/sudoers.d, which is the default for Debian. Adding a line with username ALL=(ALL) ALL allows the user in question to execute any command as root. The permissions and syntax of all files can be verified with the visudo -c command.
Konfigurasi yang lebih canggih mengizinkan otorisasi hanya pada perintah tertentu ke pengguna tertentu. Seluruh rincian berbagai kemungkinan diberikan pada halaman manual sudoers(5).

8.9.5. Daftar Titik Kait

Berkas /etc/fstab memberikan daftar seluruh kait yang mungkin terjadi entah itu secara otomatis ketika boot atau secara manual untuk perangkat penyimpanan lepasan. Setiap titik kait dideskripsikan dengan beberapa bidang yang dipisahkan oleh spasi:
  • sistem berkas: ini menunjukkan di mana sistem berkas yang akan dikait dapat ditemukan, dapat berupa peranti lokal (partisi hard disk, CD-ROM) atau sistem berkas jarak jauh (seperti NFS atau bahkan SSHFS).
    Bidang ini sering kali digantikan dengan ID unik sistem berkas (yang dapat Anda temukan dengan blkid peranti) diawali dengan UUID=. Hal ini melindungi dari perubahan nama peranti ketika penambahan atau pelepasan disk, atau jika disk terdeteksi dalam urutan yang berbeda. Bagian 8.8.1, “Mengidentifikasi Cakram” membahas topik ini secara lebih rinci.
  • titik kait: ini merupakan lokasi pada sistemberkas lokal di mana perangkat, sistem remote, atau partisi akan dikaitkan.
  • tipe: filed ini menentukan sistemberkas yang digunakan pada perangkat yang dikait. ext4, ext3, vfat, ntfs, btrfs, xfs merupakan beberapa contoh.
    Daftar lengkap daftar sistem berkas yang diketahui tersedia dalam halaman manual mount(8). Nilai khusus swap adalah untuk partisi swap; nilai khusus auto memberitahukan program mount agar secara otomatis mendeteksi sistem berkas (yang khususnya berguna untuk pembaca disk dan flash disk USB, karena masing-masing bisa jadi memiliki sistem berkas yang berbeda);
  • pilihan: ada banyak, tergantung pada sistemberkas, dan mereka terdokumentasi dalam man page mount. Umumnya adalah
    • rw atau ro, artinya, masing-masing, bahwa perangkat akan dikait dengan akses baca/tulis (read/write) atau hanya-baca (read-only).
    • noauto nonaktifkan pengaitan otomatis saat booting.
    • nofail mengizinkan boot berlanjut bahkan ketika peranti tidak ada. Pastikan untuk memakai opsi ini bagi drive eksternal yang mungkin dicopot saat Anda boot, karena systemd benar-benar memastikan bahwa semua titik kait yang mesti dikait secara otomatis benar-benar dikait sebelum membiarkan proses boot berlanjut sampai akhir. Perhatikan bahwa Anda dapat menggabung ini dengan x-systemd.device-timeout=5s untuk memberitahu systemd untuk tidak menunggu lebih dari 5 detik bagi peranti untuk muncul (lihat systemd.mount(5)).
    • user mengizinkan semua pengguna untuk mengait sistemberkas ini (sebuah operasi yang hanya dapat dilakukan oleh pengguna root).
    • defaults artinya kelompok pilihan standar: rw, suid, dev, exec, auto, nouser dan async, masing-masign dapat dinonaktifkan secara idividual setelah defaults dengan menambahkan nosuid, nodev dan seterusnya ke blok suid, dev dan seterusnya. Menambahkan pilihan user mengaktifkannya lagi, karena defaults menyertakan nouser.
  • dump: bidang ini hampir selalu diatur ke 0 dan semacam peninggalan. Ketika lebih besar dari nol, ia memberi tahu alat dump bahwa partisi berisi data yang akan sering dicadangkan. Alat ini hanya mendukung sistem file Ext2/3/4 dan akan menggunakan nilai di sini saat dijalankan melalui dump -W atau dump -w untuk menentukan partisi mana yang perlu dicadangkan. Pertimbangkan contoh di /usr/share/doc/dump/examples/ jika Anda ingin menggunakan fitur ini. Tetapi ada alternatif yang lebih baik untuk mencadangkan sistem berkas, seperti fsarchiver.
  • pass: field terakhir ini menunjukkan apakah akan memeriksa integritas sistemberkas saat booting, dan dalam urutan yang bagaimana pemeriksaan ini dieksekusi. Jika bernilai 0, tidak ada pemeriksaan yang dilakukan. Sistemberkas root harus bernilai 1, sedangkan sistemberkas permanen lainnya memiliki nilai 2.

Contoh 8.5. Contoh berkas/etc/fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# systemd generates mount units based on this file, see systemd.mount(5).
# Please run 'systemctl daemon-reload' after making changes here.
#
# <file system>                           <mount point>   <type>      <options>         <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=7a250fb8-c16d-4a4e-9808-ec08ae92b6c6 /               ext4        errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=13f367ae-dbaf-40ed-85c0-4072a2ebe426 none            swap        sw                0       0
/dev/sr0                                  /media/cdrom0   udf,iso9660 user,noauto       0       0
/dev/fd0                                  /media/floppy   auto        rw,user,noauto    0       0
arrakis:/shared                           /shared         nfs         defaults          0       0
Entri terakhir dalam contoh ini berupa sebuah sistem berkas jaringan (NFS): direktori /shared/ pada server arrakis dikait pada /shared/ di mesin lokal.
Format berkas /etc/fstab didokumentasikan dalam halaman manual fstab(5).

8.9.6. locate dan updatedb

Perintah locate dapat menemukan lokasi sebuah berkas ketika Anda hanya tahu sebagian namanya. Mengirimkan hasilnya hampir secara instan, karena dia menggunakan basis data yang menyimpan lokasi seluruh berkas pada sistem; basis data ini diperbarui setiap hari oleh perintah updatedb. Ada banyak implementasi dari perintah locate dan Debian mengambil mlocate untuk sistem standarnya. Jika Anda ingin mempertimbangkan alternatif, Anda dapat mencoba plocate yang menyediakan opsi baris perintah yang sama dan dapat dianggap sebagai pengganti drop-in.
locate cukup pintar, hanya menampilkan berkas yang dapat diakses oleh pengguna yang menjalankan perintah meskipun dia menggunakan basis data yang mengetahui seluruh berkas pada sistem (implementasi updatedb dijalankan dengan hak akses root). Untuk keamanan ekstra, administrator dapat menggunakan PRUNEDPATHS dalam /etc/updatedb.conf untuk mengecualikan beberapa direktori untuk diindeks.