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

The timezone, configured during initial installation, is a configuration item for the tzdata package. To modify it, use the dpkg-reconfigure tzdata command, which allows you to choose the timezone to be used in an interactive manner. Its configuration is stored in the /etc/timezone file. Additionally, /etc/localtime becomes a symbolic link to the corresponding file in the /usr/share/zoneinfo; the file that contains the rules governing the dates where daylight saving time (DST) is active, for countries that use it.
Ketika Anda perlu mengubah zonawaktu sementara, gunakan variabel lingkungan TZ, yang mana diprioritaskan daripada sistem standar yang terkonfigurasi:
$ date
Thu Sep  2 22:29:48 CEST 2021
$ TZ="Pacific/Honolulu" date
Thu 02 Sep 2021 10:31:01 AM HST

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

Karena stasiun kerja direboot secara reguler (bahkan jika hanya untuk menghemat energi), mensinkronisasinya dengan NTP saat booting sudah cukup. Untuk melakukannya, install paket ntpdate. Anda dapat mengubah server NTP yang digunakan jika diperlukan dengan memodifikasi berkas /etc/default/ntpdate.

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/ 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.
More sophisticated configurations allow authorization of only specific commands to specific users. All the details of the various possibilities are given in the sudoers(5) manual page.

8.9.5. Daftar Titik Kait

The /etc/fstab file gives a list of all possible mounts that happen either automatically on boot or manually for removable storage devices. Each mount point is described by a line with several space-separated fields:
  • file system: this indicates where the filesystem to be mounted can be found, it can be a local device (hard drive partition, CD-ROM) or a remote filesystem (such as NFS or even SSHFS).
    This field is frequently replaced with the unique ID of the filesystem (which you can determine with blkid device) prefixed with UUID=. This guards against a change in the name of the device in the event of addition or removal of disks, or if disks are detected in a different order. Bagian 8.8.1, “Mengidentifikasi Cakram” covers this topic in more detail.
  • 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.
    A complete list of known filesystems is available in the mount(8) manual page. The swap special value is for swap partitions; the auto special value tells the mount program to automatically detect the filesystem (which is especially useful for disk readers and USB keys, since each one might have a different filesystem);
  • 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: this field is almost always set to 0 and kind of a relic. When it is greater then zero, it tells the dump tool that the partition contains data that is to be backed up frequently. The tool supports Ext2/3/4 filesystems only and will use the value here when run via dump -W or dump -w to determine which partitions need to be backed up. Consider the examples in /usr/share/doc/dump/examples/ if you want to use this feature. But there are better alternatives to backup a filesystem, like 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
The last entry in the example corresponds to a network filesystem (NFS): the /shared/ directory on the arrakis server is mounted at /shared/ on the local machine.
The format of the /etc/fstab file is documented in the fstab(5) manual page.

8.9.6. locate dan updatedb

The locate command can find the location of a file when you only know part of the name. It sends a result almost instantaneously, since it consults a database that stores the location of all the files on the system; this database is updated daily by the updatedb command. There are multiple implementations of the locate command and Debian picked mlocate for its standard system. If you want to consider an alternative, you can try plocate which provides the same command line options and can be considered a drop-in replacement.
locate is smart enough to only return files which are accessible to the user running the command even though it uses a database that knows about all files on the system (since its updatedb implementation runs with root rights). For extra safety, the administrator can use PRUNEDPATHS in /etc/updatedb.conf to exclude some directories from being indexed.