Selasa, 27 Agustus 2024


DASAR-DASAR LINUX

Apa itu linux?

        Linux adalah sistem operasi berbasis open-source yang pertama kali dikembangkan oleh Linus Torvalds pada tahun 1991. Linux mirip dengan sistem operasi lainnya seperti Windows atau macOS.

Apa itu kernel linux?

    Kernel adalah inti dari sistem operasi yang bertanggung jawab untuk mengelola sumber daya perangkat keras, seperti CPU, memori, dan perangkat input/output. Kernel Linux dikenal karena stabilitas, keamanan, dan kemampuannya untuk berjalan di berbagai perangkat keras, mulai dari komputer desktop hingga server, perangkat embedded, dan bahkan smartphone.

Perbedaan LTS dan non LTS

   LTS (Long-Term Support):

    • Dukungan Jangka Panjang: Rilis LTS mendapatkan dukungan pembaruan keamanan dan perbaikan bug selama 5 tahun untuk desktop dan server.
    • Stabilitas: Versi ini dirancang untuk kestabilan dan cocok untuk pengguna yang menginginkan sistem yang andal dan tidak sering melakukan upgrade.
    • Rilis Setiap 2 Tahun: Versi LTS dirilis setiap dua tahun sekali (misalnya, 16.04, 18.04, 20.04).
  1. Non-LTS:

    • Dukungan Jangka Pendek: Rilis non-LTS biasanya hanya mendapatkan dukungan selama 9 bulan.
    • Fitur Baru: Versi ini sering memperkenalkan fitur baru, pembaruan perangkat lunak, dan teknologi terbaru, tetapi mungkin kurang stabil dibandingkan versi LTS.
    • Rilis Setiap 6 Bulan: Versi non-LTS dirilis setiap 6 bulan sekali (misalnya, 21.04, 21.10).

Singkatnya, jika kamu mencari stabilitas dan dukungan jangka panjang, gunakan versi LTS. Jika kamu ingin mencoba fitur terbaru dan tidak keberatan dengan siklus pembaruan yang lebih cepat, versi non-LTS mungkin lebih cocok.

Cara instalasi vbox dan ubuntu

1. Instalasi VirtualBox

Langkah 1: Unduh VirtualBox

  • Buka situs resmi VirtualBox.
  • Pilih "Downloads" dan unduh installer yang sesuai dengan sistem operasi windows

Langkah 2: Instal VirtualBox

  • Buka file installer yang telah diunduh.
  • Ikuti wizard instalasi dengan mengklik "Next".
  • Pilih komponen yang ingin diinstal (secara default, semua komponen biasanya terpilih).
  • Jika muncul peringatan mengenai jaringan, klik "Yes".
  • Klik "Install" dan tunggu hingga proses instalasi selesai.
  • Klik "Finish" untuk menyelesaikan instalasi dan membuka VirtualBox.

2. Unduh Ubuntu ISO

  • Buka situs resmi Ubuntu.
  • Pilih versi Ubuntu yang diinginkan (misalnya Ubuntu 22.04 LTS).
  • Klik "Download" untuk mengunduh file ISO.

3. Buat Virtual Machine (VM) di VirtualBox

Langkah 1: Buka VirtualBox

  • Jalankan VirtualBox yang telah diinstal.

Langkah 2: Buat Virtual Machine Baru

  • Klik "New" untuk membuat VM baru.
  • Isi nama VM (misalnya, "Ubuntu 22.04").
  • Pilih "Type" sebagai Linux dan "Version" sebagai Ubuntu (64-bit).
  • Klik "Next".

Langkah 3: Atur RAM

  • Pilih jumlah RAM yang akan digunakan oleh VM. Minimal 2 GB (2048 MB), tetapi disarankan 4 GB (4096 MB) atau lebih jika tersedia.
  • Klik "Next".

Langkah 4: Buat Hard Disk Virtual

  • Pilih "Create a virtual hard disk now" dan klik "Create".
  • Pilih "VDI (VirtualBox Disk Image)" sebagai format hard disk dan klik "Next".
  • Pilih "Dynamically allocated" (agar disk berkembang sesuai kebutuhan) dan klik "Next".
  • Tentukan ukuran hard disk (minimal 25 GB) dan klik "Create".

4. Instal Ubuntu di Virtual Machine

Langkah 1: Atur Ubuntu ISO sebagai Bootable Disk

  • Klik kanan pada VM yang baru saja dibuat, lalu pilih "Settings".
  • Pergi ke tab "Storage".
  • Di bawah "Controller: IDE", klik ikon CD dengan tanda plus untuk menambahkan file ISO.
  • Pilih "Choose a disk file" dan arahkan ke file ISO Ubuntu yang telah diunduh.
  • Klik "OK".

Langkah 2: Jalankan Virtual Machine

  • Pilih VM Ubuntu di VirtualBox dan klik "Start".
  • VM akan boot dari ISO dan menampilkan installer Ubuntu.

Langkah 3: Instalasi Ubuntu

  • Pilih bahasa yang diinginkan, lalu klik "Install Ubuntu".
  • Pilih "Normal installation" dan centang pilihan "Download updates while installing Ubuntu" serta "Install third-party software".
  • Klik "Continue".

Langkah 4: Partisi Disk

  • Pilih "Erase disk and install Ubuntu" (disk virtual, bukan disk fisik, jadi aman).
  • Klik "Install Now" dan konfirmasi dengan klik "Continue".

Langkah 5: Konfigurasi Akun

  • Isi informasi seperti zona waktu, nama pengguna, dan password.
  • Klik "Continue" dan tunggu proses instalasi selesai.

Langkah 6: Restart VM

  • Setelah instalasi selesai, klik "Restart Now".
  • Eject ISO dari Storage di pengaturan VirtualBox jika VM meminta ISO lagi saat booting.

Langkah 7: Masuk ke Ubuntu

  • Setelah restart, Anda akan melihat layar login Ubuntu.
  • Masukkan password yang telah dibuat, dan Anda siap menggunakan Ubuntu di VirtualBox.

Perbedaan CLI dan GUI

    CLI (Command-Line Interface) dan GUI (Graphical User Interface) adalah dua jenis antarmuka yang digunakan untuk berinteraksi dengan sistem operasi Linux.

  1. CLI (Command-Line Interface):

    • Deskripsi: CLI adalah antarmuka berbasis teks di mana pengguna mengetikkan perintah secara langsung ke dalam terminal.
    • Interaksi: Pengguna perlu mengetikkan perintah untuk menjalankan program, mengelola file, atau melakukan konfigurasi sistem.
    • Kelebihan:
      • Efisiensi: Banyak tugas bisa dilakukan lebih cepat dengan perintah singkat.
      • Kontrol Penuh: Pengguna memiliki kontrol penuh atas sistem dan dapat melakukan tugas-tugas kompleks yang mungkin tidak tersedia di GUI.
      • Penggunaan Sumber Daya Ringan: Menggunakan sedikit sumber daya sistem (RAM dan CPU), membuatnya ideal untuk server atau sistem dengan spesifikasi rendah.
    • Kekurangan:
      • Kurikulum yang Curam: Memerlukan pengetahuan tentang perintah yang tepat, sehingga bisa sulit untuk pemula.
      • Tidak User-Friendly: Tidak memiliki elemen visual, membuatnya kurang intuitif bagi mereka yang terbiasa dengan antarmuka grafis.
  2. GUI (Graphical User Interface):

    • Deskripsi: GUI adalah antarmuka berbasis grafis yang memungkinkan pengguna berinteraksi dengan sistem melalui elemen visual seperti ikon, menu, dan jendela.
    • Interaksi: Pengguna dapat menggunakan mouse dan keyboard untuk menavigasi dan mengontrol sistem dengan cara yang lebih visual.
    • Kelebihan:
      • Mudah Digunakan: Lebih intuitif dan mudah digunakan, terutama bagi pengguna baru atau mereka yang terbiasa dengan sistem operasi grafis seperti Windows atau macOS.
      • Visualisasi yang Lebih Baik: Memungkinkan pengguna untuk melihat dan mengelola file serta aplikasi dengan cara yang lebih visual.
    • Kekurangan:
      • Penggunaan Sumber Daya Lebih Banyak: Memerlukan lebih banyak RAM dan CPU dibandingkan CLI, yang bisa memperlambat sistem, terutama pada komputer dengan spesifikasi rendah.
      • Kurang Fleksibel: Tidak selalu menawarkan tingkat kontrol dan fleksibilitas yang sama dengan CLI untuk tugas-tugas tertentu.

Basic Command
1. Basic Operation Linux
-whoami = menampilkan user yang digunakan
-who = menampilkan user yang sedang login
-hostnamectl = menampilkan hostname server
-date/timedatectl = menampilkan tanggal dan waktu
-clear = memberihkan layar

2. Assesmen Server
-cat /etc/os-release = menampilkan sistem operasi
-uname = menampilkan sistem operasi
-iscpu = menampilkan proccesor server
-free -h = menampilkan memory
-isblk / df -h = menampilkan penyimpanan

file and directory managemen

    








 


   Manajemen file dan direktori di Linux Ubuntu mencakup berbagai operasi yang memungkinkan pengguna untuk mengorganisir, mengelola, dan memanipulasi file serta direktori dalam sistem. Berikut adalah penjelasan mengenai beberapa konsep dan perintah dasar yang digunakan dalam manajemen file dan direktori di Linux Ubuntu:

1. Konsep Dasar

  • File: Unit dasar penyimpanan data di Linux. Bisa berupa file teks, gambar, program, dan lainnya.
  • Direktori: Sejenis folder yang digunakan untuk mengorganisir file. Direktori juga bisa berisi direktori lain yang disebut subdirektori.
  • Path: Alamat lokasi file atau direktori di sistem. Terdiri dari path absolut dan relatif.
    • Path Absolut: Path lengkap yang dimulai dari root directory (misalnya, /home/user/documents).
    • Path Relatif: Path yang relatif terhadap direktori kerja saat ini (misalnya, documents).

2. File management

  • Touch : membuat file tanpa content
  • echo/vim/vi/nano : membuat file dengan content
  • cat : menampilkan isi content
  • head : menampilkan 10 baris pertama sebuah file
  • tail : menampilkan 10 baris terakir sebuah file
  • rm : mengahapus file
  • cp : menyalin file dandirectory
  • mv : memindahkan atau merename file dan directory 
3. Directory management
  • cd : masuk keluar directory
  • mkdir : membuat directory
  • rmdir : menghapus directory
  • ls : menampilkan isi directory
  • pwd : menampilkan di directory mana kita berada

4. Hak Akses File dan Direktori

  • Pemilik (Owner): Pengguna yang memiliki file atau direktori.
  • Grup (Group): Kumpulan pengguna yang memiliki hak akses tertentu terhadap file atau direktori.
  • Lainnya (Others): Semua pengguna lain di sistem yang tidak termasuk pemilik atau grup.
  • Perintah chmod: Mengubah hak akses file atau direktori.
    • Contoh: chmod 755 file.txt memberikan hak baca dan eksekusi kepada semua pengguna, tetapi hanya pemilik yang memiliki hak menulis.
  • Perintah chown: Mengubah kepemilikan file atau direktori.
    • Contoh: chown user:group file.txt mengubah pemilik file menjadi user dan grupnya menjadi group.

5. Navigasi Sistem Berkas

  • Root Directory /: Direktori paling atas dari hierarki sistem file.
  • Home Directory /home/username: Direktori pribadi untuk setiap pengguna.
  • Current Directory .: Direktori kerja saat ini.
  • Parent Directory ..: Direktori induk dari direktori kerja saat ini.

Manajemen file dan direktori di Linux memberikan fleksibilitas dan kontrol yang tinggi kepada pengguna untuk mengelola data mereka sesuai kebutuhan, baik melalui perintah terminal (CLI) maupun antarmuka grafis (GUI).

User dan group management

USER MANAGEMENT

-useradd / adduser : membuat user baru

-userdel : menghapus user

-usermod : modifikasi user

-passwd : mengubah password user

GROUP MAGEMENT

-groupadd : membuat group baru

-groupdel : menghapus grup

-groupmod : modifikasi group











SIMBOLIK

u : user

g : group 

o : other

chmod u+rwx, g+rw, o+x namefile/directory


NUMERIK

r : 4

w : 2

x : 1

chmod 761 namefile/directory


METODE KONFIGURASI JARINGAN PADA LINUX

1. NMTUI

    NMTUI adalah antarmuka pengguna berbasis teks untuk mengelola koneksi jaringan menggunakan NetworkManager. NMTUI adalah alat yang lebih mudah digunakan bagi mereka yang tidak ingin atau tidak nyaman menggunakan perintah command line yang lebih kompleks. Ini tersedia di banyak distribusi Linux yang menggunakan NetworkManager, seperti Fedora, CentOS, dan Ubuntu.

Fitur dan Keunggulan NMTUI:

  • Antarmuka Berbasis Teks: Memungkinkan pengguna untuk mengonfigurasi jaringan dalam antarmuka berbasis teks yang mudah digunakan tanpa perlu mengedit file konfigurasi secara manual.
  • Mudah Digunakan: Ideal untuk pengguna yang kurang nyaman dengan baris perintah tetapi tetap ingin mengonfigurasi jaringan tanpa menggunakan antarmuka grafis.
  • Mengelola Berbagai Jenis Koneksi: Dapat digunakan untuk mengonfigurasi koneksi Ethernet, Wi-Fi, VPN, dan lainnya.
  • Menyimpan Konfigurasi Secara Otomatis: Perubahan yang dilakukan melalui NMTUI secara otomatis disimpan dan diterapkan oleh NetworkManager.
2.Netplan
    Netplan adalah alat untuk mengonfigurasi jaringan pada distribusi Linux berbasis Ubuntu yang lebih baru (18.04 dan seterusnya). Netplan menggunakan file konfigurasi berbasis YAML untuk mendefinisikan pengaturan jaringan. Ini adalah cara yang lebih modern dan terstruktur untuk mengelola jaringan di Ubuntu, menggantikan konfigurasi jaringan berbasis ifupdown.

Fitur dan Keunggulan Netplan:

  • File Konfigurasi Berbasis YAML: File YAML lebih mudah dibaca dan dipahami, serta memberikan struktur yang jelas untuk pengaturan jaringan.
  • Integrasi dengan Renderer yang Berbeda: Netplan mendukung NetworkManager dan systemd-networkd sebagai renderer, yang memungkinkan fleksibilitas dalam mengelola jaringan sesuai kebutuhan pengguna.
  • Deklaratif dan Konsisten: Konfigurasi dalam format deklaratif, membuatnya lebih konsisten dan mudah diaudit atau dibagikan.
  • Cepat dan Mudah Diterapkan: Perubahan dapat diterapkan dengan cepat menggunakan satu perintah tanpa perlu restart antarmuka jaringan.

COMMAND
ip a / ifconfig : untuk melihat konfigurasi ip
traceroute : untuk melacak rute paket
ping : untuk memeriksa konektivitas perangkat


PACKAGE MANAGEMENT
    Package management atau manajemen paket adalah proses mengelola perangkat lunak pada sistem operasi, terutama dalam konteks distribusi Linux dan UNIX. Sistem manajemen paket (Package Management System atau PMS) adalah alat yang mengotomatiskan proses instalasi, pembaruan, konfigurasi, dan penghapusan perangkat lunak pada komputer. Sistem ini membantu pengguna dan administrator sistem dalam mengelola perangkat lunak secara efisien, memastikan bahwa perangkat lunak tersebut diinstal dengan benar dan bebas dari konflik atau ketergantungan yang hilang.

Fungsi Utama Package Management

  1. Instalasi Paket: Memungkinkan pengguna untuk menginstal perangkat lunak dari repositori resmi atau sumber eksternal. Sistem manajemen paket menangani semua aspek instalasi, termasuk mengunduh file yang diperlukan, memverifikasi integritas, dan memastikan bahwa semua dependensi yang diperlukan (perangkat lunak lain yang diperlukan oleh perangkat lunak yang diinstal) juga diinstal.

  2. Pembaruan Paket: Memudahkan pembaruan perangkat lunak ke versi yang lebih baru. Sistem ini memeriksa versi terbaru dari paket yang diinstal dan mengunduh serta menginstal pembaruan dengan aman.

  3. Penghapusan Paket: Mengelola penghapusan paket perangkat lunak dari sistem, memastikan bahwa paket tersebut dihapus sepenuhnya, termasuk file yang terkait dan konfigurasi yang tidak lagi diperlukan.

  4. Resolusi Ketergantungan: Banyak perangkat lunak memerlukan pustaka atau paket lain untuk berfungsi dengan benar. Sistem manajemen paket mengelola dependensi ini, memastikan bahwa semua paket yang diperlukan diinstal dalam urutan yang benar.

  5. Pengelolaan Repositori: Menyimpan dan mengelola sumber paket, baik dari repositori resmi maupun sumber pihak ketiga. Pengguna dapat menambahkan, menghapus, atau memprioritaskan repositori sesuai kebutuhan mereka.

Jenis-jenis Sistem Manajemen Paket

Ada beberapa jenis sistem manajemen paket yang digunakan oleh berbagai distribusi Linux. Berikut adalah beberapa yang paling umum:

  1. DPKG dan APT (Advanced Package Tool)

    • DPKG: Sistem manajemen paket dasar untuk distribusi berbasis Debian, seperti Ubuntu. DPKG berfungsi sebagai alat tingkat rendah untuk menginstal, menghapus, dan menyediakan informasi tentang paket .deb.
    • APT: Merupakan antarmuka tingkat tinggi untuk DPKG. APT memudahkan manajemen paket dengan menyediakan alat seperti apt-get dan apt-cache untuk mengunduh, menginstal, dan memperbarui paket dari repositori resmi. APT juga menangani dependensi secara otomatis.
  2. APT COMMAND
  • apt upgrade : mengupgrade paket yang sudah terinstal
  • apt upadate : mengupdate daftar paket dari repositori
  • apt install : menginstal paket baru
  • apt remove/purge : menghapus paket
  • apt list --installed : menginstal list package yang terinstal 
  1. RPM (Red Hat Package Manager) dan YUM/DNF

    • RPM: Sistem manajemen paket untuk distribusi berbasis Red Hat, seperti CentOS dan Fedora. RPM menggunakan format paket .rpm dan mengelola instalasi serta penghapusan paket.
    • YUM: YUM adalah alat manajemen paket yang lebih canggih untuk distribusi berbasis RPM. YUM memungkinkan pengguna untuk menginstal, memperbarui, dan menghapus paket secara otomatis, serta mengelola dependensi.
    • DNF: Pengganti YUM pada Fedora dan distribusi berbasis Red Hat terbaru. DNF memperkenalkan beberapa perbaikan dalam hal kecepatan dan manajemen dependensi.
  2. Pacman

    • Pacman: Sistem manajemen paket untuk Arch Linux dan distribusi berbasis Arch lainnya. Pacman menggunakan format paket .pkg.tar.xz dan dikenal karena kesederhanaan dan kecepatannya dalam mengelola paket.
  3. Zypper

    • Zypper: Sistem manajemen paket untuk openSUSE. Zypper menggunakan format paket .rpm tetapi memiliki fitur yang mirip dengan APT, termasuk manajemen repositori dan resolusi dependensi.
  4. Homebrew

    • Homebrew: Sistem manajemen paket populer untuk macOS dan Linux. Homebrew menggunakan script yang disebut "formulas" untuk mengelola instalasi dan konfigurasi paket perangkat lunak.

Manfaat Menggunakan Sistem Manajemen Paket

  1. Kemudahan Penggunaan: Sistem manajemen paket mempermudah instalasi dan pengelolaan perangkat lunak. Pengguna hanya perlu memasukkan beberapa perintah untuk menginstal atau memperbarui perangkat lunak, tanpa harus mengunduh atau mengkompilasi kode sumber secara manual.

  2. Konsistensi dan Stabilitas: Paket yang diinstal melalui manajemen paket biasanya telah diuji oleh komunitas atau pengembang distribusi, memastikan bahwa paket tersebut stabil dan kompatibel dengan sistem.

  3. Keamanan: Sistem manajemen paket biasanya terhubung dengan repositori resmi yang dipercaya, yang mengurangi risiko mengunduh perangkat lunak dari sumber yang tidak aman. Selain itu, pembaruan keamanan untuk perangkat lunak sering kali didistribusikan melalui sistem ini.

  4. Manajemen Ketergantungan: Salah satu masalah umum dalam pengelolaan perangkat lunak adalah dependensi yang hilang atau rusak. Sistem manajemen paket mengelola dan menyelesaikan dependensi ini secara otomatis, memastikan semua perangkat lunak berfungsi dengan baik.

  5. Pembaruan yang Mudah: Sistem ini memungkinkan pembaruan perangkat lunak yang mudah dan teratur, memastikan pengguna memiliki akses ke fitur terbaru dan perbaikan keamanan.


REMOTE  ACCESS
    Remote acces adalah merujuk pada kemampuan untuk mengakses dan mengontrol sistem atau perangkat dari jarak jauh, diluar lokasi miliknya.

METODE REMOTE ACCES

1. Secure Shell (SSH)

  • Deskripsi: SSH adalah protokol jaringan yang digunakan untuk mengakses dan mengelola perangkat jarak jauh secara aman. SSH mengenkripsi semua data yang ditransmisikan antara klien dan server, melindungi dari penyadapan dan serangan man-in-the-middle.
  • Kegunaan: Umumnya digunakan untuk mengelola server Unix/Linux dari jarak jauh, melakukan administrasi sistem, atau menjalankan perintah pada server.
  • Keamanan: SSH sangat aman karena menggunakan enkripsi dan otentikasi berbasis kunci publik.
  • Kelebihan: Keamanan tinggi, mendukung otentikasi kunci publik, ringan dan cepat.
  • Kekurangan: Dapat menjadi rumit untuk pengguna non-teknis, terbatas pada antarmuka baris perintah (CLI).

2. Remote Desktop Protocol (RDP)

  • Deskripsi: RDP adalah protokol milik Microsoft yang memungkinkan pengguna untuk mengakses dan mengontrol komputer Windows dari jarak jauh melalui antarmuka grafis.
  • Kegunaan: Banyak digunakan oleh administrator sistem untuk mengelola server dan workstation Windows, serta oleh pengguna akhir untuk bekerja dari jarak jauh.
  • Keamanan: RDP memiliki beberapa opsi keamanan, termasuk enkripsi data dan otentikasi dua faktor. Namun, RDP perlu dikonfigurasi dengan baik untuk menghindari risiko keamanan.
  • Kelebihan: Menyediakan antarmuka grafis yang familier, mudah digunakan, mendukung transfer file dan clipboard.
  • Kekurangan: Rentan terhadap serangan jika tidak dikonfigurasi dengan benar, memerlukan bandwidth yang cukup besar untuk performa yang baik.

3. Virtual Network Computing (VNC)

  • Deskripsi: VNC adalah sistem remote desktop yang menggunakan protokol RFB (Remote Framebuffer) untuk mengontrol komputer lain dari jarak jauh. VNC bersifat platform-independent, artinya dapat digunakan pada berbagai sistem operasi.
  • Kegunaan: Digunakan untuk dukungan teknis, akses jarak jauh ke desktop, dan kolaborasi tim.
  • Keamanan: Secara default, VNC tidak mengenkripsi data, tetapi dapat dikonfigurasi untuk menggunakan SSH atau VPN untuk meningkatkan keamanan.
  • Kelebihan: Platform-independen, mendukung banyak pengguna yang mengakses komputer yang sama, dapat digunakan dengan SSH untuk meningkatkan keamanan.
  • Kekurangan: Kurang aman jika tidak dikonfigurasi dengan benar, performa grafis mungkin kurang baik dibandingkan RDP.

4. Telnet

  • Deskripsi: Telnet adalah protokol jaringan yang memungkinkan pengguna untuk mengakses dan mengelola perangkat jarak jauh. Tidak seperti SSH, Telnet tidak menyediakan enkripsi, membuatnya tidak aman untuk digunakan melalui Internet.
  • Kegunaan: Telnet dulu digunakan untuk administrasi jarak jauh pada perangkat jaringan seperti router dan switch. Sekarang ini, Telnet jarang digunakan karena kelemahan keamanannya.
  • Keamanan: Sangat rendah karena data, termasuk kata sandi, dikirimkan dalam teks biasa.
  • Kelebihan: Mudah diatur dan digunakan pada jaringan lokal atau lingkungan yang sangat aman.
  • Kekurangan: Tidak aman, rentan terhadap penyadapan data dan serangan man-in-the-middle.

5. TeamViewer dan Software Remote Desktop Lainnya

  • Deskripsi: TeamViewer adalah aplikasi komersial untuk remote desktop yang menyediakan antarmuka grafis dan mudah digunakan. Ada juga perangkat lunak lain seperti AnyDesk, LogMeIn, dan Splashtop yang menyediakan fungsi serupa.
  • Kegunaan: Dukungan teknis jarak jauh, kolaborasi tim, akses ke komputer pribadi atau kantor dari jarak jauh.
  • Keamanan: Biasanya sangat aman karena menggunakan enkripsi end-to-end dan menyediakan otentikasi dua faktor. Namun, pengguna harus berhati-hati terhadap phising dan teknik rekayasa sosial lainnya.
  • Kelebihan: Mudah digunakan, menyediakan fitur tambahan seperti transfer file dan konferensi, multi-platform.
  • Kekurangan: Bergantung pada layanan pihak ketiga, mungkin ada biaya untuk penggunaan komersial, membutuhkan koneksi internet yang stabil.

AUTOMATING TASK (CRONJOB)

    cronjob merupakan tools untuk membuat tugas terjadwal yang diatur untuk dijalankan secara otomatis pada waktu atau interval tertentu di sistem operasi linux. tujuannya adalah untuk menjadwalkan dan menjalankan tugas yang dapat diotomatisasi, seperti pembersihan file sementara, penciptaan backup, dan eksekusi skip rutin 

Struktur Cron Job

Cron job diatur dalam file yang disebut "crontab" (cron table), yang menentukan perintah apa yang harus dijalankan dan kapan perintah tersebut harus dijalankan. Setiap pengguna dalam sistem dapat memiliki crontab sendiri, dan ada juga crontab untuk seluruh sistem.

Kelebihan Cron Job

  1. Otomatisasi Tugas: Cron job memungkinkan tugas-tugas yang berulang untuk dijalankan secara otomatis, mengurangi beban kerja manual.
  2. Fleksibilitas: Pengguna dapat menentukan jadwal yang sangat spesifik, termasuk interval waktu, hari tertentu, atau kombinasi kompleks lainnya.
  3. Efisiensi: Cron job berjalan di latar belakang tanpa memerlukan interaksi pengguna, sehingga meningkatkan efisiensi.
  4. Manajemen Sistem: Ideal untuk tugas pemeliharaan sistem seperti pencadangan, pembaruan perangkat lunak, dan penghapusan file log yang sudah lama.

Kekurangan Cron Job

  1. Kurangnya Notifikasi: Cron tidak memiliki mekanisme bawaan untuk memberitahu pengguna jika tugas gagal, kecuali jika pengguna mengatur email atau log secara manual.
  2. Kompleksitas Penjadwalan: Meskipun fleksibel, sintaks crontab bisa menjadi rumit dan sulit dipahami untuk tugas yang sangat kompleks.
  3. Tidak Mendukung Pengecekan Keberhasilan: Cron hanya menjalankan perintah; tidak ada mekanisme bawaan untuk memverifikasi bahwa perintah berhasil dijalankan dengan benar.



Selasa, 20 Agustus 2024



 BIZNET GIO CLOUD

Unwrape The Real Enterprise Grade VPS


AMD EPYC adalah lini prosesor server yang dikembangkan oleh Advanced Micro Devices (AMD). Diperkenalkan pertama kali pada tahun 2017, EPYC dirancang khusus untuk server dan pusat data, menawarkan performa tinggi untuk berbagai kebutuhan komputasi.

AMD menggunakan desain chiplet untuk prosesor EPYC. Dalam desain ini, beberapa chip kecil (disebut chiplets) digabungkan menjadi satu prosesor besar, memungkinkan skala besar tanpa meningkatkan kompleksitas manufaktur secara signifikan. Desain ini membantu dalam mencapai performa tinggi dan efisiensi energi.

AMD EPYC digunakan secara luas dalam pusat data besar dan oleh penyedia layanan cloud karena kinerja multi-core yang sangat tinggi.

Keunggulan 

  • Core Count yang Tinggi: EPYC memiliki jumlah core yang sangat tinggi dibandingkan pesaingnya, dengan beberapa model yang memiliki hingga 96 core per prosesor. Ini sangat menguntungkan untuk aplikasi yang membutuhkan pemrosesan paralel yang intensif.
  • Memory Bandwidth dan Capacity: EPYC mendukung banyak saluran memori (biasanya 8 channel per CPU), memungkinkan akses cepat ke data dan dukungan untuk kapasitas memori yang sangat besar, hingga terabyte per CPU.
  • PCIe Lanes: EPYC menawarkan banyak jalur PCIe (biasanya lebih dari 100 jalur), yang sangat penting untuk koneksi cepat antara CPU dan perangkat seperti GPU, SSD NVMe, dan jaringan cepat.

Keamanan

  • Secure Encrypted Virtualization (SEV): EPYC mendukung teknologi SEV, yang memungkinkan enkripsi data dalam memori untuk meningkatkan keamanan virtualisasi.
  • Hardware Root of Trust: EPYC dilengkapi dengan fitur keamanan berbasis hardware yang membantu mencegah berbagai serangan, seperti firmware attacks.

Pengertian VPS (Virtual Private Server)

- VPS adalah server virtual yang di-hosting di server fisik, tetapi berfungsi seperti server fisik terpisah. Setiap VPS mendapatkan alokasi sumber daya sendiri seperti CPU, RAM, dan storage, yang tidak dibagi dengan VPS lain di server yang sama.

- Keuntungan VPS: VPS menawarkan lebih banyak kontrol dan fleksibilitas dibandingkan shared hosting, karena pengguna mendapatkan akses root ke server dan bisa mengonfigurasi lingkungan server sesuai kebutuhan mereka.


VPS NEO Lite Pro

VPS NEO Lite Pro adalah salah satu jenis layanan Virtual Private Server (VPS) yang disediakan oleh Biznet Gio, sebuah perusahaan penyedia layanan cloud computing di Indonesia. VPS NEO Lite Pro dirancang untuk memberikan solusi hosting yang terjangkau namun tetap powerful bagi pengguna yang membutuhkan sumber daya komputasi yang lebih tinggi daripada shared hosting, tetapi tidak memerlukan seluruh sumber daya dari dedicated server.

Fitur-Fitur VPS NEO Lite Pro

- Prosesor AMD EPYC: VPS NEO Lite Pro menggunakan prosesor AMD EPYC yang terkenal dengan kinerja tinggi dan efisiensi daya, terutama dalam aplikasi komputasi yang memerlukan banyak core dan thread.

- SSD Storage: Layanan ini menggunakan penyimpanan SSD, yang memberikan kecepatan baca/tulis yang sangat cepat, sehingga meningkatkan performa aplikasi dan situs web yang di-hosting di server.

- Bandwidth Tak Terbatas: Menawarkan bandwidth tanpa batas (unlimited), sehingga pengguna tidak perlu khawatir tentang pembatasan lalu lintas data.

- Dukungan untuk Linux dan Windows: Pengguna dapat memilih untuk menginstal sistem operasi Linux atau Windows sesuai kebutuhan mereka.

- Pengelolaan Mudah: Biznet Gio menyediakan panel kontrol yang mudah digunakan, memungkinkan pengguna untuk mengelola server VPS mereka dengan mudah, termasuk melakukan restart, backup, dan pengaturan lainnya.

Penggunaan Umum

  1. E-commerce dan Aplikasi Bisnis: Sangat cocok untuk toko online, aplikasi bisnis, atau situs web perusahaan yang memerlukan stabilitas dan performa tinggi.
  2. Hosting untuk Banyak Situs: Neo Lite Pro ideal untuk agensi atau pengembang yang perlu menghosting beberapa situs web dalam satu VPS dengan kinerja yang optimal.
  3. Aplikasi dengan Kebutuhan Khusus: Cocok untuk aplikasi yang membutuhkan resource lebih besar atau fitur tertentu yang tidak tersedia di paket dasar

Keunggulan dan Kekurangan

1. Keunggulan:

  • Kinerja Lebih Baik: Dengan sumber daya tambahan, Neo Lite Pro mampu menangani beban kerja yang lebih berat dan lebih kompleks.
  • Fitur Lengkap: Lebih banyak fitur dan opsi konfigurasi dibandingkan dengan versi Lite, memberikan kontrol lebih kepada pengguna.
  • Keamanan Lebih Tinggi: Fitur keamanan yang lebih canggih membantu melindungi data dan aplikasi dari ancaman.

2. Kekurangan

    • Biaya Lebih Tinggi: Dengan fitur dan spesifikasi yang lebih tinggi, harga Neo Lite Pro biasanya lebih mahal dibandingkan versi Lite.
    • Lebih Kompleks: Karena menawarkan lebih banyak kontrol dan fitur, pengguna mungkin memerlukan pengetahuan teknis yang lebih untuk memanfaatkan semua potensi VPS ini.

Kesimpulan

VPS NEO Lite Pro adalah layanan VPS yang ditawarkan oleh Biznet Gio dengan fitur unggulan seperti prosesor AMD EPYC, SSD storage, dan bandwidth tak terbatas, yang menyediakan solusi hosting terjangkau dengan kinerja tinggi untuk berbagai kebutuhan pengguna.

Layanan seperti VPS NEO Lite Pro yang menggunakan teknologi AMD EPYC menunjukkan bagaimana integrasi hardware yang canggih dapat memberikan performa optimal dalam layanan cloud, mendukung berbagai jenis aplikasi dan beban kerja dengan efisiensi tinggi.

Sabtu, 10 Agustus 2024


 

LINUX FUNDAMENTAL


#Penjelasan Virtualisasi

Apa itu virtualisasi?

    Virtualisasi adalah teknologi yang memungkinkan satu perangkat keras fisik (seperti server atau komputer) untuk menjalankan beberapa sistem operasi atau lingkungan secara bersamaan, seolah-olah setiap lingkungan tersebut berjalan di perangkat keras yang terpisah. Ini dilakukan dengan menggunakan perangkat lunak yang disebut hypervisor atau virtual machine monitor (VMM) untuk membuat dan mengelola mesin virtual (virtual machines atau VM).

Dalam konteks ini, satu komputer fisik dapat menjalankan beberapa VM, masing-masing dengan sistem operasi dan aplikasi mereka sendiri, tanpa saling mempengaruhi. Virtualisasi memungkinkan penggunaan sumber daya komputer yang lebih efisien, fleksibilitas dalam pengelolaan, dan isolasi antara aplikasi atau sistem yang berbeda.


Konsep dasar tentang virtualisasi

Hypervisor: Perangkat lunak atau firmware yang menciptakan dan mengelola mesin virtual. Hypervisor membagi sumber daya server fisik (CPU, memori, penyimpanan, jaringan) dan mengalokasikannya ke VM sesuai kebutuhan.

 Mesin Virtual (VM): Lingkungan perangkat lunak yang meniru server fisik lengkap. Setiap VM memiliki sistem operasi, aplikasi, dan konfigurasinya sendiri.

 Host: Server fisik yang menjalankan hypervisor dan mesin virtual.


Jenis-jenis virtualisasi server

Virtualisasi Penuh (Full Virtualization): Hypervisor berjalan langsung di atas perangkat keras server fisik. VM sepenuhnya terisolasi satu sama lain dan dari host.

Paravirtualisasi: VM dimodifikasi untuk bekerja sama dengan hypervisor, meningkatkan kinerja tetapi mengurangi kompatibilitas. 

Virtualisasi Tingkat Sistem Operasi (OS-Level Virtualization): Beberapa instance sistem operasi yang terisolasi berjalan pada kernel yang sama.


Manfaat virtualisasi server

Pemanfaatan Sumber Daya yang Efisien: Mengurangi jumlah server fisik yang dibutuhkan, menghemat ruang, daya, dan pendinginan. 

Fleksibilitas dan Skalabilitas: VM dapat dengan mudah dibuat, dihapus, dipindahkan, atau dikloning sesuai kebutuhan. 

Peningkatan Ketersediaan: VM dapat dengan cepat dipulihkan ke server lain jika terjadi kegagalan perangkat keras. 

Pengujian dan Pengembangan yang Lebih Mudah: VM menyediakan lingkungan yang terisolasi untuk menguji aplikasi dan konfigurasi baru. 

Penghematan Biaya: Mengurangi biaya perangkat keras, energi, dan pemeliharaan.


Penerapan virtualisasi server

Konsolidasi Server: Menggabungkan beberapa server fisik ke dalam VM yang lebih sedikit. 

Disaster Recovery: Membuat replika VM untuk pemulihan cepat jika terjadi bencana. 

Cloud Computing: Menyediakan infrastruktur virtual sebagai layanan (IaaS). 

Lingkungan Pengembangan dan Pengujian: Membuat lingkungan virtual yang terisolasi untuk pengembangan dan pengujian perangkat lunak.


Contoh perangkat lunak virtualisasi server

-VMware vSphere/ESXi 

 -Microsoft Hyper-V 

 -Citrix XenServer 

 -KVM (Kernel-based Virtual Machine) 

 -Oracle VM VirtualBox (untuk penggunaan desktop) 

 -Oracle VBox


#Pengenalan linux

Apa itu linux?

    Linux adalah sistem operasi berbasis open-source yang pertama kali dikembangkan oleh Linus Torvalds pada tahun 1991. Linux mirip dengan sistem operasi lainnya seperti Windows atau macOS.


 Apa itu kernel linux?

    Kernel adalah inti dari sistem operasi yang bertanggung jawab untuk mengelola sumber daya perangkat keras, seperti CPU, memori, dan perangkat input/output. Kernel Linux dikenal karena stabilitas, keamanan, dan kemampuannya untuk berjalan di berbagai perangkat keras, mulai dari komputer desktop hingga server, perangkat embedded, dan bahkan smartphone.


Filosofi Open Source

    Linux adalah proyek open source, yang berarti kode sumbernya tersedia secara bebas untuk dilihat, dimodifikasi, dan didistribusikan oleh siapa saja. Hal ini mendorong kolaborasi dan inovasi dari komunitas pengembang global.


Apa saja keunggulan linux

Gratis dan Open Source: Tidak ada biaya lisensi, dan Anda bebas menggunakan, memodifikasi, dan mendistribusikan Linux sesuai kebutuhan Anda. 

Keamanan: Linux dikenal karena tingkat keamanannya yang tinggi, dengan pembaruan keamanan yang sering dirilis untuk mengatasi kerentanan. 

Stabilitas: Linux sangat stabil dan jarang mengalami crash atau masalah kinerja. 

Fleksibilitas: Linux dapat disesuaikan untuk berbagai kebutuhan, dari server hingga desktop, perangkat embedded, dan superkomputer. 

Komunitas yang Kuat: Komunitas Linux yang besar dan aktif memberikan dukungan, dokumentasi, dan pengembangan perangkat lunak yang berkelanjutan.


Distro linux

    Distro Linux (distribusi Linux) adalah sistem operasi lengkap yang dibangun di atas kernel Linux dan menyertakan berbagai perangkat lunak tambahan, seperti lingkungan desktop, aplikasi, utilitas, dan alat manajemen sistem. Setiap distro Linux memiliki karakteristik, tujuan, dan pengguna yang berbeda.

Ubuntu: Distro yang ramah pengguna, ideal untuk pemula dan pengguna desktop. 

Debian: Distro yang stabil dan konservatif, sering digunakan untuk server. 

Fedora: Distro yang inovatif dan mutakhir, sering digunakan oleh pengembang. 

CentOS: Distro yang stabil dan kompatibel dengan Red Hat Enterprise Linux (RHEL), sering digunakan untuk server perusahaan.

Linux Mint: Distro yang berbasis Ubuntu dengan antarmuka yang lebih tradisional dan mudah digunakan. 

Arch Linux: Distro yang fleksibel dan dapat disesuaikan, populer di kalangan pengguna tingkat lanjut.


#Command line linux

Manajemen Folder

cd = Masuk/keluar directory 

mkdir = membuat directory 

rmdir = menghapus directory 

Is = menampilkan isi directory 

pwd = menampilkan di directory mana kita berada


Manajemen File

touch = membuat file tanpa content 

echo/vim/vi/nano = membuat file dengan content 

cat = menampilkan isi konten file 

head = menampilkan isi 10 baris pertama sebuah file 

tail = menampilkan isi 10 baris terakhir sebuah file 

rm = menghapus file 

cp = menyalin file dan directory 

mv = memindahkan/merename file dan directory


Manajemen Package

    Manajemen Package adalah proses pengelolaan perangkat lunak pada sistem komputer dengan cara mengelola pemasangan, pembaruan, dan penghapusan perangkat lunak atau packet-packet yang berbentuk aplikasi atau service.

APT=Advanced Package Tool atau APT merupakan sistem manajemen paket yang umum digunakan pada distribusi Linux berbasis Debian, Termasuk Ubuntu


APT COMMAND

apt upgrade = mengupgrade paket yang sudah terinstall 

apt update = mengupdate daftar paket dari repositori 

apt install = menginstall packet baru 

apt remove/purge = menghapus packet 

apt list --installed = menampilkan list packet yang terinstall


Manajemen user dan group

adduser = Menambahkan user baru dengan password 

useradd = Menambahkan user baru tanpa password 

passwd = Menambahkan/mengganti password user 

deluser = Menghapus user 

groupadd = Menambahkan group baru 

delgroup = Menghapus group


Hak Akses

Readable ( r ) = Mengizinkan pengguna untuk melihat isi file 

Writeable( w ) = Mengizinkan pengguna untuk mengubah isi file atau direktori 

Executable( x ) = Mengizinkan pengguna untuk menjalankan file sebagai progam


Kategori pengguna

Pemilik (Owner) = pengguna yang memiliki file atau direktori 

Grup (Group) = Grup pengguna yang dapat mengakses file atau direktori 

Lainya (Others) = Semua pengguna lainya yang tidak termasuk dalam kategori diatas


Mengubah Hak Akses Menggunakan Notasi Simbolis 

“chmod [kategori][tindakan][hak] nama_file_atau_direktori”


Mengubah Hak Akses Menggunakan Notasi Oktal 

Nilai Oktal hak akses :

 ‘r’ = 4  ‘w’ = 2  ‘x’ = 1 

“chmod 755 nama_file”

angka 755 berarti = Pemilik memiliki hak baca,tulis,dan eksekusi Grup memiliki hak baca dan eksekusi Lainya memiliki hak baca dan eksekusi


IP Address

1. Buka file konfigurasi netplan dengan perintah “sudo nano /etc/netplan/50-cloud-init.yaml” 

2. Edit file tersebut untuk menambahkan konfigurasi IP statis, Contoh konfigurasi seperti disamping 

3. Setelah selesai simpan file (ctrl+x0 untuk menyimpan, ctrl+x untuk keluar) 4. Terapkan konfigurasi dengan perintah “sudo netplan apply”



#Cara instalasi vbox dan ubuntu

1. Instalasi VirtualBox

Langkah 1: Unduh VirtualBox

Langkah 2: Instal VirtualBox

  • Buka file installer yang telah diunduh.
  • Ikuti wizard instalasi dengan mengklik "Next".
  • Pilih komponen yang ingin diinstal (secara default, semua komponen biasanya terpilih).
  • Jika muncul peringatan mengenai jaringan, klik "Yes".
  • Klik "Install" dan tunggu hingga proses instalasi selesai.
  • Klik "Finish" untuk menyelesaikan instalasi dan membuka VirtualBox.

2. Unduh Ubuntu ISO

  • Buka situs resmi Ubuntu.
  • Pilih versi Ubuntu yang diinginkan (misalnya Ubuntu 22.04 LTS).
  • Klik "Download" untuk mengunduh file ISO.

3. Buat Virtual Machine (VM) di VirtualBox

Langkah 1: Buka VirtualBox

  • Jalankan VirtualBox yang telah diinstal.

Langkah 2: Buat Virtual Machine Baru

  • Klik "New" untuk membuat VM baru.
  • Isi nama VM (misalnya, "Ubuntu 22.04").
  • Pilih "Type" sebagai Linux dan "Version" sebagai Ubuntu (64-bit).
  • Klik "Next".

Langkah 3: Atur RAM

  • Pilih jumlah RAM yang akan digunakan oleh VM. Minimal 2 GB (2048 MB), tetapi disarankan 4 GB (4096 MB) atau lebih jika tersedia.
  • Klik "Next".

Langkah 4: Buat Hard Disk Virtual

  • Pilih "Create a virtual hard disk now" dan klik "Create".
  • Pilih "VDI (VirtualBox Disk Image)" sebagai format hard disk dan klik "Next".
  • Pilih "Dynamically allocated" (agar disk berkembang sesuai kebutuhan) dan klik "Next".
  • Tentukan ukuran hard disk (minimal 25 GB) dan klik "Create".

4. Instal Ubuntu di Virtual Machine

Langkah 1: Atur Ubuntu ISO sebagai Bootable Disk

  • Klik kanan pada VM yang baru saja dibuat, lalu pilih "Settings".
  • Pergi ke tab "Storage".
  • Di bawah "Controller: IDE", klik ikon CD dengan tanda plus untuk menambahkan file ISO.
  • Pilih "Choose a disk file" dan arahkan ke file ISO Ubuntu yang telah diunduh.
  • Klik "OK".

Langkah 2: Jalankan Virtual Machine

  • Pilih VM Ubuntu di VirtualBox dan klik "Start".
  • VM akan boot dari ISO dan menampilkan installer Ubuntu.

Langkah 3: Instalasi Ubuntu

  • Pilih bahasa yang diinginkan, lalu klik "Install Ubuntu".
  • Pilih "Normal installation" dan centang pilihan "Download updates while installing Ubuntu" serta "Install third-party software".
  • Klik "Continue".

Langkah 4: Partisi Disk

  • Pilih "Erase disk and install Ubuntu" (disk virtual, bukan disk fisik, jadi aman).
  • Klik "Install Now" dan konfirmasi dengan klik "Continue".

Langkah 5: Konfigurasi Akun

  • Isi informasi seperti zona waktu, nama pengguna, dan password.
  • Klik "Continue" dan tunggu proses instalasi selesai.

Langkah 6: Restart VM

  • Setelah instalasi selesai, klik "Restart Now".
  • Eject ISO dari Storage di pengaturan VirtualBox jika VM meminta ISO lagi saat booting.

Langkah 7: Masuk ke Ubuntu

  • Setelah restart, Anda akan melihat layar login Ubuntu.
  • Masukkan password yang telah dibuat, dan Anda siap menggunakan Ubuntu di VirtualBox.

#Cara kerja web server

1. Menerima Permintaan (Request) dari Klien

  • Ketika Anda mengetik URL di browser dan menekan enter, browser akan membuat permintaan HTTP ke web server yang sesuai dengan URL tersebut.
  • Permintaan ini biasanya berupa permintaan untuk sebuah halaman web, seperti index.html, atau untuk sumber daya lain seperti gambar, video, atau file CSS/JavaScript.

2. Memproses Permintaan

  • Setelah menerima permintaan, web server akan memprosesnya dengan langkah-langkah berikut:
    • Parsing URL: Web server menganalisis URL untuk menentukan konten apa yang diminta oleh klien. Misalnya, jika URL mengarah ke example.com/about, web server akan mencari halaman about.html atau about.php.
    • Pencarian Konten: Web server kemudian mencari konten yang diminta di sistem file-nya. Jika konten tersebut adalah file statis (seperti HTML atau gambar), server akan mencarinya di direktori yang sesuai.
    • Eksekusi Skrip: Jika permintaan adalah untuk halaman dinamis (misalnya, halaman PHP atau aplikasi Python), web server akan meneruskan permintaan tersebut ke interpreter skrip atau framework aplikasi web (seperti Apache yang bekerja dengan PHP atau Nginx dengan FastCGI).

3. Mengirimkan Respons (Response) ke Klien

  • Setelah konten ditemukan atau skrip dieksekusi, web server mengemas hasilnya ke dalam respons HTTP.
  • Respons HTTP terdiri dari:
    • Status Code: Misalnya, 200 (OK) jika permintaan berhasil, 404 (Not Found) jika konten tidak ditemukan, atau 500 (Internal Server Error) jika ada masalah pada server.
    • Headers: Berisi informasi tambahan seperti tipe konten (Content-Type: text/html), panjang konten (Content-Length), dan sebagainya.
    • Body: Isi dari respons, biasanya berupa HTML, JSON, XML, atau file lain yang diminta.

4. Mengirimkan Data ke Klien

  • Web server kemudian mengirimkan respons tersebut kembali ke browser.
  • Browser menerima respons, membaca header, dan menampilkan konten (seperti halaman web) kepada pengguna.

5. Penanganan Permintaan Tambahan

  • Jika halaman web yang dikirim berisi referensi ke sumber daya lain (misalnya gambar, stylesheet, atau skrip), browser akan mengirim permintaan tambahan ke web server untuk setiap sumber daya ini.
  • Proses yang sama diulangi untuk setiap permintaan baru.

6. Logging dan Monitoring

  • Web server biasanya mencatat setiap permintaan yang diterima dalam file log. Informasi ini berguna untuk analisis, debugging, dan monitoring performa server.

Jenis Web Server Populer

  • Apache HTTP Server: Salah satu web server yang paling banyak digunakan, terutama di sistem operasi Linux.
  • Nginx: Web server yang cepat dan efisien, sering digunakan untuk situs dengan trafik tinggi.
  • Microsoft IIS (Internet Information Services): Web server buatan Microsoft yang sering digunakan di lingkungan Windows.

 


INSTALL NGINX MARIADB & PHP

- Perintah untuk memperbarui daftar package di repository

$ sudo apt-get update && sudo apt-get upgrade -y

- Perintah untuk menginstall nginx mariadb dan php

$ sudo apt-get install nginx mariadb-server php8.1-fpm

php-mysql -y

- Perintah mengecek versi php

$ php -v


CEK STATUS NGINX MARIADB & PHP

lakukan perintah sudo systemctl status nginx untuk mengecek status service nginx, apabila nginx belum running atau active. gunakan perintah sudo systemctl enable nginx dan sudo systemctl start nginx untuk memulai service nginx. Lakukan hal yang sama pada php8.1-fpm dan mysql












INSTAL NGINX

untuk menguji apakah nginx sudah berjalan dapat menggunakan browser. jalankan 192.168.12.45 di browser kalian, ganti 192.168.12.45 dengan ip masing masing. untuk mengetahui ip bisa menggunakan hostname -I (i kapital).














SCRIPT PHP

kembali ke mesin virtual dan jalankan

perintah :

- sudo nano /var/www/html/info.php

dan ketik <?php phpinfo(); ?>, lalu simpan










SET PHP

jalankan perintah : - sudo nano

/etc/nginx/sites-available/default

lalu hapus tagar pada bagian : - location ~ \.php$ { - include snippets/fastcgi-php.conf - fastcgi_pass

unix:/run/php/php8.1-fpm.sock

- lalu pada “}” yang bawah










HASIL SCRIPT PHP

mulai ulang service nginx dengan

perintah : sudo systemctl restart nginx

lalu buka browser dan jalankan

192.168.12.45/info.php, ganti

192.168.12.45 dengan ip masing masing










KONFIGURASI MARIADB

kembali ke mesin virtual dan jalankan perintah sudo mysql untuk masuk ke mysql dengan akses root. Kemudian edit user root dengan perintah ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘1234’; (pada bagian root dan password dapat diganti sesuai keinginan masing masing) kemudian gunakan perintah FLUSH PRIVILEGES untuk menyegarkan perubahan. lalu EXIT










KONFIGURASI MARIADB

lakukan uji coba login menggunakan user dan password yang baru dengan perintah sudo mysql -u root -p dan masukan password yang telah dibuat tadi. lalu buat database dengan perintah CREATE DATABASE student_db; database ini yang akan menjadi tempat tabel yang berisi data yang akan digunakan.








BUAT USER DI MARIADB

gunakan CREATE USER ‘student’@’localhost’ IDENTIFIED BY ‘12345’; untuk membuat user baru. lalu berikan semua hak akses student_db ke user yang telah dibuat dengan GRANT ALL PRIVILEGES ON student_db.* TO 'student'@'localhost'; lalu gunakan perintah FLUSH PRIVILEGES; untuk menyegarkan perubahan. lalu EXIT







CREATE TABLE MARIADB

Gunakan mysql -u student -p untuk masuk sebagai user student. lalu

masuk ke dalam database student_db dengan USE student_db; lalu buat

tabel student seperti berikut:

CREATE TABLE student ( id INT AUTO_INCREMENT PRIMARY KEY,

name VARCHAR (100) NOT NULL, username VARCHAR (50) NOT

NULL, password VARCHAR (255) NOT NULL);










INSERT USER MARIADB

Masukkan data pada table student dengan perintah :

INSERT INTO student (name,username,password) VALUES (‘STUDENT 1’, ‘student1’, MD5(‘12345’)); lalu EXIT. (MD5(‘12345’) digunakan untuk mengenkripsi 12345, jadi ketika login tetap gunakan 12345)



SET MYSQL.PHP

buat file php yang digunakan untuk mengambil data dari database dengan

perintah :

sudo nano/var/www/html/mysql.php

tulis perintah yang ada pada gambar. untuk lebih jelasnya ada pada slide

selanjutnya. atau dapat mengunduh script melalui link dibawah ini :

https://drive.google.com/file/d/1r1DnAwkjioc5bsu2lu85__KcAOfapvSV/view?u

sp=sharing













HASIL KONFIGURASI NGINX MARIADB & PHP

restart service nginx dan coba akses 192.168.12.45/mysql.php

menggunakan browser kalian dan coba untuk login menggunakan

username dan password yang ada pada tabel student








#Firewall ufw

UFW (Uncomplicated Firewall) adalah antarmuka atau alat yang disederhanakan untuk mengelola firewall pada sistem operasi berbasis Linux, khususnya yang menggunakan iptables sebagai backend. UFW dirancang untuk memudahkan pengguna dalam mengonfigurasi firewall tanpa harus berurusan dengan perintah iptables yang kompleks.

1. Fungsi dan Tujuan UFW

  • Pengelolaan Akses Jaringan: UFW memungkinkan pengguna untuk dengan mudah mengontrol lalu lintas jaringan yang masuk dan keluar dari komputer atau server. Pengguna dapat menetapkan aturan untuk mengizinkan atau menolak lalu lintas berdasarkan alamat IP, port, dan protokol.
  • Kemudahan Penggunaan: Salah satu tujuan utama UFW adalah menyederhanakan proses manajemen firewall. Dengan UFW, pengguna tidak perlu memahami seluk-beluk iptables yang bisa sangat teknis dan kompleks.
  • Keamanan: Dengan mengontrol lalu lintas yang masuk dan keluar dari sistem, UFW membantu melindungi sistem dari akses yang tidak sah, serangan DDoS, dan ancaman keamanan lainnya.

2. Cara Kerja UFW

  • Backend Iptables: UFW bekerja sebagai antarmuka yang lebih ramah pengguna untuk iptables. Setiap aturan yang ditetapkan melalui UFW diterjemahkan menjadi aturan iptables yang sebenarnya.
  • Aturan Sederhana: Pengguna dapat menambahkan, menghapus, atau melihat aturan firewall menggunakan perintah UFW yang sederhana. Misalnya, untuk mengizinkan lalu lintas pada port tertentu, pengguna hanya perlu menggunakan satu perintah singkat.
  • Profil Aplikasi: UFW mendukung penggunaan profil aplikasi, yang memungkinkan pengguna mengaktifkan atau menonaktifkan akses untuk aplikasi tertentu dengan mudah, tanpa harus mengetahui port atau protokol yang digunakan aplikasi tersebut.

INSTALL UFW

Perintah Menginstall ufw
‘“sudo apt install ufw -y”
Mengaktifkan Service ufw
“sudo ufw enable”
Cek status ufw
“sudo ufw status”
Pastikan Status: active







ALLOW DENY UFW

“sudo ufw allow 80”

Untuk mengizinkan port http

“sudo ufw allow 443”

Untuk mengizinkan port https

“sudo ufw deny 23”

Untuk menolak port telnet

“sudo ufw enable”

Untuk menyimpan konfigurasi ufw

“sudo ufw status”

Untuk melihat rule ufw










Allow Ip tertentu

“sudo ufw allow from 192.168.12.49

to any port 22”

Untuk mengizinkan ip tersebut untuk

mengakses port ssh

“sudo ufw deny 22”

Untuk menolak semua ip yang ingin

mengakses port ssh kecuali yang

telah diizinkan

“sudo ufw enable” Simpan konfigurasi










HASIL UFW

uji coba menggunakan ip yang telah diberikan izin untuk mengakses port ssh, apabila konfigurasi benar maka hasil akan seperti disamping, jika gagal maka akan muncul pesan connection refused










Cara Pasang Debian12 di virtualbox dan install wordpress di debian12  1. Download ISO Debian 12 Unduh file ISO Debian 12 dari situs resmi De...