LMS IDN - Linux Dasar

 


Belajar Linux dari Nol melalui LMS ID-Networkers


INTRODUCTION TO LINUX:
Linux adalah sebuah kernel geratis yang dikembangkan oleh Linus Torval pada tahun 1991. Linux memiliki sebuah distribusi sendiri yang dikenal dengan nama Distro. Mempelajari Linux penting karena menjadi sebuah media untuk mengembangkan sebuah aplikasi; memberikan layanan Cloud Computing, Mobile Application, dan IOT; serta menjadi salah satu skill yang banyak dicari pada untuk bidang IT. 

Ubuntu
Ubuntu adalah salah satu sistem operasi (OS) yang berbasis pada Linux, dikembangkan oleh perusahaan dari UK yang bernama Canonical pada tahun 2004. Ubuntu memiliki LTS (Long Time Support) yang disupport update selama 5 tahun dan Non-LTS (Normal Release) yang disupport update selama 9 bulan. 


BASIC COMMANDS:
Macam-macam antarmuka:
- CLI (Command Line Interface) adalah antarmuka yang menggunakan baris perintah (teks) dalam pengoperasiannya.
- GUI (Graphical User Interface) adalah antarmuka yang lebih banyak menampilkan grafis yang lebih interaktif.

Basic Operation Linux:
1. sudo su = User saat ini menjadi pengguna root atau superuser:

2. whoami = menampilkan user yang digunakan.

3. who = menampilkan user yang sedang login.

4. hostnamectl = menampilkan hostname server.

5. date / timedatectl = menampilkan tanggal dan waktu.

6. clear = membersihkan layar.

Assesmen Server:
1. cat /etc/os-release = menampilkan sistem operasi.

2. uname = menampilkan sistem operasi.

3. lscpu = menampilkan processor server

4. free -h = menampilkan memory.

5. lsblk / df -h = menampilkan penyimpanan.



FILESYSTEM HIERARCHY:
Filesystem Hierarchy adalah struktur direktori yang digunakan oleh sistem operasi Linux untuk mengatur dan menyimpan file. Struktur ini berbentuk seperti pohon terbalik, dengan direktori root (/) sebagai pangkalnya. Semua file dan direktori lain berada di bawah direktori root ini. Standar yang mengatur hierarki ini disebut Filesystem Hierarchy Standard (FHS).

Berikut penjelasan direktori-direktori penting dalam Filesystem Hierarchy:

  • / (Root): Ini adalah direktori paling atas atau pangkal dari seluruh sistem file. Semua direktori dan file lainnya berada di bawah direktori ini.

  • /bin/ (Binaries): Berisi program-program executable (binari) esensial yang dibutuhkan oleh semua pengguna, seperti perintah-perintah dasar ls, cp, mv, rm.

  • /boot/ (Boot Files): Berisi file-file yang dibutuhkan untuk proses booting sistem, seperti kernel Linux dan bootloader.

  • /dev/ (Devices): Berisi file-file yang merepresentasikan perangkat keras yang terhubung ke sistem, seperti hard disk, printer, dan terminal.

  • /etc/ (Et Cetera): Berisi file-file konfigurasi sistem, seperti konfigurasi jaringan, user, dan layanan.

  • /home/ (Home Directories): Berisi direktori home untuk setiap pengguna sistem. Setiap pengguna memiliki direktori sendiri di dalam /home/ untuk menyimpan file-file pribadi mereka.

  • /lib/ (Libraries): Berisi library atau pustaka yang dibutuhkan oleh program-program di /bin/ dan /sbin/.

  • /media/ (Removable Media): Digunakan sebagai titik mount untuk media penyimpanan yang dapat dilepas, seperti CD-ROM, USB drive, dan kartu memori.

  • /mnt/ (Mount Point): Digunakan sebagai titik mount sementara untuk sistem file lain.

  • /opt/ (Optional Packages): Berisi perangkat lunak tambahan yang diinstal secara manual atau dari pihak ketiga.

  • /root/ (Root Home Directory): Direktori home untuk pengguna root (administrator sistem).

  • /sbin/ (System Binaries): Berisi program-program executable (binari) yang hanya digunakan oleh administrator sistem untuk keperluan administrasi sistem.

  • /srv/ (Service Data): Berisi data yang disediakan oleh layanan yang berjalan di sistem.

  • /tmp/ (Temporary Files): Berisi file-file sementara yang dibuat oleh sistem dan aplikasi. File-file di direktori ini biasanya dihapus saat sistem reboot.

  • /usr/ (Unix System Resources): Berisi program, library, dokumentasi, dan sumber daya lain yang digunakan oleh pengguna. Direktori ini dibagi lagi menjadi beberapa subdirektori, antara lain:

    • /usr/bin/: Berisi program-program executable untuk pengguna.
    • /usr/include/: Berisi header file untuk pemrograman C/C++.
    • /usr/lib/: Berisi library untuk program-program di /usr/bin/.
    • /usr/sbin/: Berisi program-program executable untuk administrasi sistem yang tidak terlalu penting untuk booting.
  • /var/ (Variable Files): Berisi file-file yang isinya sering berubah, seperti log, cache, dan spool. Direktori ini juga dibagi lagi menjadi beberapa subdirektori, antara lain:

    • /var/cache/: Berisi data cache aplikasi.
    • /var/log/: Berisi file log sistem dan aplikasi.
    • /var/spool/: Berisi data antrian, seperti antrian cetak (printer spool).
    • /var/tmp/: Berisi file sementara yang tidak dihapus saat sistem reboot.

Filesystem Hierarchy di Linux memberikan struktur yang terorganisir untuk menyimpan dan mengakses file. Dengan memahami struktur ini, pengguna dapat lebih mudah menavigasi sistem file, menemukan file yang dibutuhkan, dan mengelola sistem secara efektif. Standarisasi melalui FHS memastikan konsistensi antar distribusi Linux.


FILE MANAGEMENT
Manajemen File pada Linux adalah cara sistem operasi Linux mengatur dan mengelola file dan direktori (folder) pada media penyimpanan, seperti hard disk, SSD, atau USB drive. Ini mencakup berbagai operasi, mulai dari membuat, membaca, memodifikasi, memindahkan, menyalin, hingga menghapus file dan direktori.

Berikut penjelasan detail dari setiap perintah file management:

  • touch: Perintah ini digunakan untuk membuat file kosong (tanpa isi). Jika file sudah ada, perintah ini akan memperbarui timestamp (waktu akses dan modifikasi) file tersebut.

    • Contoh: touch nama_file.txt (membuat file kosong bernama nama_file.txt)
  • echo, vim, vi, nano: Perintah-perintah ini digunakan untuk membuat file dengan isi (content).

    • echo: Menampilkan teks ke layar dan dapat digunakan untuk mengarahkan output ke sebuah file.
      • Contoh: echo "Ini adalah isi file" > nama_file.txt (membuat file nama_file.txt dan mengisinya dengan teks "Ini adalah isi file")
    • vim, vi: Editor teks yang sangat populer dan powerful di Linux. Membutuhkan sedikit pembelajaran untuk menggunakannya secara efektif.
      • Contoh: vim nama_file.txt (membuka file nama_file.txt dengan editor vim)
    • nano: Editor teks yang lebih sederhana dan mudah digunakan dibandingkan vim atau vi.
      • Contoh: nano nama_file.txt (membuka file nama_file.txt dengan editor nano)
  • cat: Perintah ini digunakan untuk menampilkan isi konten file ke layar.

    • Contoh: cat nama_file.txt (menampilkan isi file nama_file.txt)
  • head: Perintah ini menampilkan 10 baris pertama dari sebuah file. Yang mana dapat menentukan jumlah baris yang ingin ditampilkan dengan opsi -n.

    • Contoh:
      • head nama_file.txt (menampilkan 10 baris pertama)
      • head -n 5 nama_file.txt (menampilkan 5 baris pertama)
  • tail: Perintah ini menampilkan 10 baris terakhir dari sebuah file. Sama seperti head, Anda dapat menentukan jumlah baris dengan opsi -n. Perintah ini sangat berguna untuk memantau log file.

    • Contoh:
      • tail nama_file.txt (menampilkan 10 baris terakhir)
      • tail -n 3 nama_file.txt (menampilkan 3 baris terakhir)
      • tail -f nama_file.txt (memantau file secara real-time; akan terus menampilkan baris baru yang ditambahkan ke file)
  • rm: Perintah ini digunakan untuk menghapus file. Hati-hati saat menggunakan perintah ini, karena file yang dihapus biasanya tidak dapat dikembalikan.

    • Contoh: rm nama_file.txt (menghapus file nama_file.txt)
    • rm -r nama_direktori (menghapus direktori beserta isinya secara rekursif)
    • rm -rf nama_direktori (menghapus direktori beserta isinya secara paksa dan rekursif; sangat berisiko, gunakan dengan hati-hati!)
  • cp: Perintah ini digunakan untuk menyalin file dan direktori.

    • Contoh:
      • cp file_asal.txt file_tujuan.txt (menyalin file_asal.txt ke file_tujuan.txt)
      • cp file.txt direktori/ (menyalin file.txt ke dalam direktori direktori/)
      • cp -r direktori_asal/ direktori_tujuan/ (menyalin direktori direktori_asal/ beserta isinya ke direktori_tujuan/)
  • mv: Perintah ini digunakan untuk memindahkan atau mengubah nama (merename) file dan direktori.

    • Contoh:
      • mv file_lama.txt file_baru.txt (mengganti nama file dari file_lama.txt menjadi file_baru.txt)
      • mv file.txt direktori/ (memindahkan file.txt ke dalam direktori direktori/)

DIRECTORY MANAGEMENT
Manajemen Direktori pada Linux adalah cara sistem operasi Linux mengatur dan mengelola direktori (yang sering disebut juga folder) dalam sistem file. Ini mencakup operasi seperti membuat, berpindah antar, menampilkan isi, dan menghapus direktori. Manajemen direktori umumnya dilakukan melalui command line interface (CLI) atau terminal, meskipun lingkungan desktop Linux juga menyediakan manajer file grafis.

Berikut penjelasan detail dari setiap perintah directory management:

  • cd (Change Directory): Perintah ini digunakan untuk berpindah dari satu direktori ke direktori lain.

    • cd nama_direktori: Berpindah ke direktori dengan nama nama_direktori. Contoh: cd Documents (berpindah ke direktori "Documents").
    • cd ..: Berpindah satu level ke atas, yaitu ke direktori induk (parent directory).
    • cd /path/ke/direktori: Berpindah ke direktori dengan path absolut. Contoh: cd /home/user/Documents.
    • cd ~: Berpindah ke direktori home pengguna saat ini.
    • cd -: Berpindah ke direktori sebelumnya yang dikunjungi.
  • mkdir (Make Directory): Perintah ini digunakan untuk membuat direktori baru.

    • mkdir nama_direktori: Membuat direktori dengan nama nama_direktori. Contoh: mkdir Gambar (membuat direktori bernama "Gambar").
    • mkdir -p path/ke/direktori: Membuat direktori beserta direktori induknya jika belum ada. Contoh: mkdir -p rumah/kamar/mandi akan membuat direktori "rumah", di dalamnya ada "kamar", dan di dalamnya lagi ada "mandi". Opsi -p sangat berguna untuk membuat struktur direktori bertingkat.
  • rmdir (Remove Directory): Perintah ini digunakan untuk menghapus direktori. Perlu diingat bahwa perintah ini hanya dapat menghapus direktori yang kosong (tidak berisi file atau direktori lain di dalamnya).

    • rmdir nama_direktori: Menghapus direktori dengan nama nama_direktori. Contoh: rmdir DokumenLama. Jika direktori tersebut tidak kosong, akan muncul pesan kesalahan.
  • ls (List): Perintah ini digunakan untuk menampilkan isi dari sebuah direktori.

    • ls: Menampilkan isi direktori saat ini.
    • ls nama_direktori: Menampilkan isi direktori dengan nama nama_direktori. Contoh: ls Musik.
    • ls -l: Menampilkan isi direktori dalam format long listing, yang memberikan informasi lebih detail seperti hak akses, ukuran, pemilik, tanggal modifikasi, dll.
    • ls -a: Menampilkan semua file dan direktori, termasuk file dan direktori yang tersembunyi (yang namanya diawali dengan titik .).
    • ls -h: Menampilkan ukuran file dalam format yang mudah dibaca manusia (misalnya KB, MB, GB).
    • ls -al: Kombinasi dari opsi -a dan -l.
  • pwd (Print Working Directory): Perintah ini digunakan untuk menampilkan path lengkap dari direktori kerja saat ini. Ini berguna untuk mengetahui di direktori mana Anda sedang berada.

    • pwd: Menampilkan path direktori saat ini. Contoh: /home/user/Documents/Proyek.


USER MANAGEMENT
Manajemen pengguna di Linux melibatkan pembuatan, modifikasi, dan penghapusan akun pengguna. Hal ini penting untuk keamanan dan pengelolaan sistem, karena memungkinkan administrator sistem untuk mengontrol siapa yang memiliki akses ke sistem dan sumber daya apa yang dapat mereka akses.

Berikut penjelasan detail dari setiap perintah user management:

  • useradd / adduser: Perintah ini digunakan untuk membuat pengguna baru.

    • useradd: Perintah dasar untuk menambahkan pengguna. Biasanya membutuhkan beberapa opsi tambahan untuk konfigurasi yang lebih lengkap setelahnya.
      • Contoh: useradd nama_pengguna (membuat pengguna dengan nama nama_pengguna).
    • adduser: Perintah yang lebih user-friendly dan interaktif. Biasanya akan menanyakan beberapa informasi seperti password, nama lengkap, dan lain-lain. Perintah ini umumnya lebih disarankan untuk pemula.
      • Contoh: adduser nama_pengguna (membuat pengguna dengan nama nama_pengguna dan akan meminta informasi tambahan).

    Beberapa opsi penting yang sering digunakan dengan useradd:

    • -m: Membuat direktori home untuk pengguna baru. Sangat disarankan untuk selalu menggunakan opsi ini.
    • -g grup: Menetapkan grup utama untuk pengguna baru.
    • -G grup1,grup2,...: Menambahkan pengguna ke grup-grup tambahan.
    • -s shell: Menentukan shell yang akan digunakan pengguna (misalnya /bin/bash, /bin/zsh).
  • userdel: Perintah ini digunakan untuk menghapus pengguna.

    • userdel nama_pengguna: Menghapus pengguna dengan nama nama_pengguna.
    • userdel -r nama_pengguna: Menghapus pengguna beserta direktori home dan mail spool-nya. Sangat disarankan untuk menggunakan opsi -r agar data pengguna juga terhapus.
  • usermod: Perintah ini digunakan untuk memodifikasi informasi pengguna yang sudah ada.

    Beberapa opsi penting yang sering digunakan dengan usermod:

    • -l nama_baru: Mengganti nama pengguna.
    • -g grup_baru: Mengganti grup utama pengguna.
    • -aG grup_tambahan: Menambahkan pengguna ke grup tambahan (tanpa menghapus grup yang sudah ada).
    • -d direktori_home_baru: Mengganti direktori home pengguna.
    • -s shell_baru: Mengganti shell yang digunakan pengguna.
    • -e tanggal_kadaluarsa: Menentukan tanggal kadaluarsa akun pengguna (dalam format YYYY-MM-DD).
  • passwd: Perintah ini digunakan untuk mengubah password pengguna.

    • passwd nama_pengguna: Mengubah password untuk pengguna dengan nama nama_pengguna. Jika perintah ini dijalankan oleh root, maka password pengguna lain dapat diubah. Jika dijalankan oleh pengguna biasa, maka password pengguna tersebut yang akan diubah.

GROUB MANAGEMENT
Manajemen grup di Linux adalah cara untuk mengelompokkan beberapa pengguna ke dalam satu entitas yang disebut "grup". Hal ini memudahkan pemberian hak akses ke file dan direktori secara bersamaan kepada beberapa pengguna sekaligus. Daripada memberikan hak akses satu per satu ke setiap pengguna, administrator sistem dapat memberikan hak akses ke sebuah grup, dan semua anggota grup tersebut akan memiliki hak akses yang sama.

Berikut penjelasan detail dari setiap perintah groub management:
  • groupadd: Perintah ini digunakan untuk membuat grup baru.

    • groupadd nama_grup: Membuat grup dengan nama nama_grup. Contoh: groupadd teknisi.
  • groupdel: Perintah ini digunakan untuk menghapus grup.

    • groupdel nama_grup: Menghapus grup dengan nama nama_grup. Contoh: groupdel teknisi. Perhatikan bahwa Anda tidak dapat menghapus grup yang masih memiliki pengguna sebagai grup utamanya. Anda perlu mengubah grup utama pengguna terlebih dahulu sebelum menghapus grup tersebut.
  • groupmod: Perintah ini digunakan untuk memodifikasi informasi grup yang sudah ada.

    Beberapa opsi penting yang sering digunakan dengan groupmod:

    • -n nama_baru: Mengganti nama grup. Contoh: groupmod -n support teknisi (mengganti nama grup dari "teknisi" menjadi "support").
    • -g GID_baru: Mengganti GID (Group ID) grup.

File-file Penting Terkait Manajemen Grup:

Informasi tentang grup disimpan dalam file /etc/group. File ini berisi daftar grup, GID, dan daftar anggota setiap grup.


FILE AND DIRECTORY PERMISSIONS
Di Linux, setiap file dan direktori memiliki serangkaian izin yang menentukan siapa yang dapat melakukan apa terhadap file atau direktori tersebut. Hal ini sangat penting untuk keamanan sistem, karena memungkinkan administrator untuk mengontrol akses ke data dan mencegah modifikasi yang tidak sah.

Hak akses direpresentasikan dalam dua cara utama:

  1. Notasi Simbolik (Simbolik): Menggunakan huruf r, w, dan x.
  2. Notasi Oktal (Angka): Menggunakan angka 0 hingga 7.

Setiap file dan direktori memiliki tiga set izin, satu untuk setiap kategori pengguna:

  • User (Pemilik): Pengguna yang memiliki file atau direktori tersebut.
  • Group (Grup): Grup yang terkait dengan file atau direktori tersebut.
  • Others (Lainnya): Semua pengguna lain di sistem yang bukan pemilik dan bukan anggota grup.

Ada tiga jenis izin utama:

  • r (Read/Baca): Izin untuk membaca isi file atau daftar isi direktori.
  • w (Write/Tulis): Izin untuk memodifikasi isi file atau membuat, menghapus, dan mengganti nama file di dalam direktori.
  • x (Execute/Eksekusi): Izin untuk menjalankan file sebagai program (jika file tersebut executable) atau untuk mengakses isi direktori (jika itu direktori).

Representasi hak akses terdiri dari 10 karakter. Karakter pertama menunjukkan jenis file:

  • -: File biasa (regular file)
  • d: Direktori
  • l: Symbolic link (semacam shortcut)

Sembilan karakter berikutnya dibagi menjadi tiga kelompok, masing-masing terdiri dari tiga karakter (rwx):

  • Tiga karakter pertama: Izin untuk User (pemilik).
  • Tiga karakter kedua: Izin untuk Group (grup).
  • Tiga karakter ketiga: Izin untuk Others (lainnya).

Contoh:

-rw-r--r--

  • -: Ini adalah file biasa.
  • rw-: Pemilik memiliki izin membaca (r) dan menulis (w), tetapi tidak memiliki izin eksekusi (-).
  • r--: Grup memiliki izin membaca (r), tetapi tidak memiliki izin menulis atau eksekusi (--).
  • r--: Lainnya memiliki izin membaca (r), tetapi tidak memiliki izin menulis atau eksekusi (--).

drwxr-xr-x

  • d: Ini adalah direktori.
  • rwx: Pemilik memiliki izin membaca, menulis, dan eksekusi.
  • r-x: Grup memiliki izin membaca dan eksekusi, tetapi tidak memiliki izin menulis.
  • r-x: Lainnya memiliki izin membaca dan eksekusi, tetapi tidak memiliki izin menulis.

Perlu diperhatikan bahwa arti izin x berbeda antara file dan direktori:

  • File: x berarti file tersebut dapat dieksekusi sebagai program.
  • Direktori: x berarti pengguna dapat mengakses isi direktori (misalnya, menggunakan perintah cd). Tanpa izin x pada direktori, pengguna tidak dapat mengakses file di dalamnya, meskipun mereka memiliki izin r pada file-file tersebut.

Perintah chmod digunakan untuk mengubah hak akses file dan direktori. Ada dua cara untuk menggunakan chmod:

  • Notasi Simbolik:
    • chmod u+x file: Menambahkan izin eksekusi untuk pemilik.
    • chmod g-w file: Menghapus izin menulis untuk grup.
    • chmod o=r file: Menetapkan izin hanya membaca untuk lainnya.
  • Notasi Oktal:
    • chmod 755 file: Menetapkan izin rwx untuk pemilik, r-x untuk grup, dan r-x untuk lainnya. (7 = 4+2+1 (r+w+x), 5 = 4+1 (r+x))


PACKAGE MANAGEMENT
Package Management adalah proses pengelolaan perangkat lunak pada sistem komputer dengan cara mengelola pemasangan, pembaruan, dan penghapusan perangkat lunak atau paket-paket yang membentuk aplikasi atau service.
Advanced Package Tool (APT) merupakan sistem manajemen paket yang umum digunakan pada distribusi Linux berbasis Debian, termasuk Ubuntu.

Berikut penjelasan detail dari setiap perintah:

  • apt upgrade: Perintah ini digunakan untuk memperbarui paket-paket yang sudah terinstal ke versi terbaru yang tersedia di repositori. Perintah ini tidak akan menghapus paket yang sudah ada.
  • apt update: Perintah ini digunakan untuk memperbarui daftar paket yang tersedia dari repositori. Ia mengunduh informasi terbaru tentang versi paket dan dependensinya, tetapi tidak menginstal atau memperbarui paket apa pun. Perintah ini penting untuk dijalankan sebelum apt upgrade atau apt install.
  • apt install: Perintah ini digunakan untuk menginstal paket baru. Anda perlu menentukan nama paket yang ingin diinstal.
  • apt list --installed: Perintah ini digunakan untuk mengetahui semua paket yang telah diinstal.
  • apt remove: Perintah ini digunakan untuk menghapus service dari paket.
  • apt purge: Perintah ini digunakan untuk menghapus service dari paket beserta file konfigurasinya.
  • apt autoremove: Menghapus paket-paket yang tidak lagi dibutuhkan karena telah menjadi dependensi dari paket lain yang telah dihapus. Ini membantu membersihkan sistem dari paket-paket yang tidak terpakai.
  • apt autoclean: Menghapus file-file paket yang sudah diunduh yang tidak lagi dibutuhkan. Ini membantu menghemat ruang disk.
  • apt full-upgrade: Melakukan upgrade penuh sistem, termasuk menangani perubahan dependensi dan berpotensi menghapus paket-paket lama jika diperlukan untuk menyelesaikan upgrade. Perintah ini disarankan daripada apt upgrade untuk melakukan upgrade versi distribusi.
  • apt show nama_paket: Menampilkan informasi detail tentang sebuah paket, seperti versi, deskripsi, dependensi, dan ukuran.
  • apt search kata_kunci: Mencari paket berdasarkan kata kunci.



REMOTE ACCESS
Remote Access merujuk pada kemampuan untuk mengakses dan mengontrol sistem atau perangkat dari jarak jauh, di luar lokasi fisiknya. Macam-macam metode remote access antara lain SSH, Telnet, RDP, VNC (Virtual Network Computing), dll. yang dijelaskan seperti berikut:

1. SSH (Secure Shell):

  • Fungsi: SSH adalah protokol yang paling umum dan direkomendasikan untuk akses remote ke server Linux dan sistem Unix-like lainnya. SSH menyediakan koneksi yang terenkripsi, sehingga data yang ditransmisikan antara komputer klien dan server aman dari penyadapan.
  • Cara Kerja: SSH menggunakan enkripsi kriptografi untuk mengamankan komunikasi. Ia bekerja pada lapisan aplikasi dan menggunakan port default 22.
  • Kegunaan:
    • Mengakses command line (terminal) server dari jarak jauh.
    • Mentransfer file secara aman menggunakan SCP (Secure Copy) atau SFTP (SSH File Transfer Protocol).
    • Melakukan port forwarding untuk meneruskan lalu lintas jaringan melalui koneksi SSH yang terenkripsi.
  • Keamanan: SSH sangat aman karena enkripsinya. Sangat disarankan untuk menggunakan SSH daripada Telnet.
  • Contoh Penggunaan: ssh username@ip_address_server

2. Telnet:

  • Fungsi: Telnet adalah protokol yang lebih tua untuk akses remote. Namun, tidak mengenkripsi data yang ditransmisikan, sehingga sangat rentan terhadap penyadapan.
  • Cara Kerja: Telnet bekerja pada lapisan aplikasi dan menggunakan port default 23.
  • Kekurangan: Karena tidak ada enkripsi, data yang dikirim melalui Telnet, termasuk username dan password, dapat dengan mudah dicegat.
  • Keamanan: Telnet sangat tidak aman dan sebaiknya dihindari untuk akses remote melalui jaringan publik seperti internet.
  • Contoh Penggunaan: telnet ip_address_server (sangat tidak disarankan)

3. RDP (Remote Desktop Protocol):

  • Fungsi: RDP dikembangkan oleh Microsoft dan umumnya digunakan untuk mengakses desktop Windows dari jarak jauh. Ia menyediakan antarmuka grafis, sehingga Anda dapat melihat dan mengendalikan desktop komputer remote seolah-olah Anda duduk di depannya.
  • Cara Kerja: RDP bekerja pada lapisan aplikasi dan menggunakan port default 3389.
  • Kegunaan: Mengakses desktop Windows dari jarak jauh, menjalankan aplikasi, dan mengelola file.
  • Ketersediaan: Umumnya terintegrasi di Windows dan tersedia klien RDP untuk sistem operasi lain, seperti Linux dan macOS.
  • Contoh Penggunaan: Menggunakan aplikasi "Remote Desktop Connection" di Windows atau aplikasi klien RDP lainnya.

4. VNC (Virtual Network Computing):

  • Fungsi: VNC adalah sistem remote desktop cross-platform yang memungkinkan Anda untuk mengendalikan desktop komputer remote dari sistem operasi yang berbeda.
  • Cara Kerja: VNC bekerja dengan mengirimkan framebuffer (gambar layar) dari server ke klien. Ia menggunakan protokol RFB (Remote Frame Buffer).
  • Kegunaan: Mirip dengan RDP, VNC memungkinkan akses grafis ke desktop remote.
  • Keamanan: VNC sendiri tidak mengenkripsi koneksi secara default, sehingga rentan terhadap penyadapan. Namun, dapat dikonfigurasi untuk menggunakan enkripsi, misalnya dengan tunneling melalui SSH.
  • Contoh Penggunaan: Menggunakan aplikasi VNC server di komputer yang akan diakses dan aplikasi VNC client di komputer yang digunakan untuk mengakses.


CRON JOB
Cron Job adalah tools untuk membuat tugas terjadwal yang diatur untuk dijalankan secara otomatis pada waktu atau interval tertentu di sistem operasi linux, yang bertujuan untuk menjalankan tugas-tugas yang dapat diotomatisasi, seperti pembersihan file sementara, penciptaan backup, dan eksekusi skrip rutin. 

Setiap baris dalam crontab merepresentasikan satu cron job dan memiliki format sebagai berikut:

* * * * * perintah_yang_akan_dijalankan

Lima karakter pertama (* * * * *) menentukan jadwal eksekusi, sedangkan bagian terakhir (perintah_yang_akan_dijalankan) adalah perintah atau skrip yang akan dijalankan.

Penjelasan Lima Karakter Pertama (dari kiri ke kanan):

  1. Menit (0-59): Menentukan menit ke berapa perintah akan dijalankan.
  2. Jam (0-23): Menentukan jam ke berapa perintah akan dijalankan (menggunakan format 24 jam).
  3. Tanggal (1-31): Menentukan tanggal berapa perintah akan dijalankan.
  4. Bulan (1-12): Menentukan bulan ke berapa perintah akan dijalankan (1=Januari, 12=Desember).
  5. Hari dalam Seminggu (0-6): Menentukan hari apa dalam seminggu perintah akan dijalankan (0=Minggu, 6=Sabtu).

Simbol-simbol Khusus:

Selain angka, ada beberapa simbol khusus yang dapat digunakan untuk menyederhanakan penulisan jadwal:

  • * (Tanda Bintang): Berarti "setiap" atau "semua". Misalnya, * pada kolom menit berarti "setiap menit".
  • , (Koma): Digunakan untuk menentukan beberapa nilai. Misalnya, 1,15,30 pada kolom menit berarti "menit ke-1, ke-15, dan ke-30".
  • - (Tanda Hubung): Digunakan untuk menentukan rentang nilai. Misalnya, 1-5 pada kolom hari dalam seminggu berarti "hari Senin sampai Jumat".
  • / (Garis Miring): Digunakan untuk menentukan interval. Misalnya, */15 pada kolom menit berarti "setiap 15 menit".

Komentar