Linux Fundamentals Part 2
2. Accessing Your Linux Machine Using SSH (Deploy)
Untuk ssh masukkan perintah ssh username@machineIP
Berhasil Masuk
3. Introduction to Flags and Switches
ls melihat direktori "File/Folder tersebunyi tidak terlihat"
ls --allatau singkatan dari --all ls -a melihat direktori "File/Folder tersebunyi terlihat"
--help Mencantumkan opsi yang dapat kita gunakan "Contoh" ls --help
man untuk melihat halaman manual "Contoh" man ls
4. Filesystem Interaction Continued
touch membuat file
mkdir membuat folder
cp copy file
mv memindahkan file
rm menghapus file
file Tentukan jenis file
- Bagaimana Anda membuat file bernama "newnote"? touch newnote
- Pada mesin yang dapat di-deploy, apa jenis file "unknown1" di direktori home "tryhackme"? ssh sesuai No.2 Command "file unknown1" ASCII text
- Bagaimana cara memindahkan file “myfile” ke direktori “myfolder” cp myfile myfolder
- Apa isi berkas ini? cat myfiles
5. Permissions 101
ls -l Untuk melihat Permissions
-RRead Izin Read digunakan untuk mengakses konten berkas.
-WWrite Izin Write memungkinkan Anda untuk mengubah atau memodifikasi konten suatu berkas.
-EExecute Izin Execute memungkinkan Anda untuk mengeksekusi konten suatu berkas.
order: owner/group/world
chmod 777 - rwx for everyone
chmod 555 - rw for owner. rx for group world
su untuk berlaih ke user Lainya
- Pada mesin yang dapat dikerahkan, siapa pemilik "important"? user2
- Apa perintah untuk beralih ke pengguna "user2"?su user2
- Keluarkan konten "important", apa benderanya?"setelah (su user2) di terminal" command "cat important"
6. Common Directories
/etc (kependekan dari etcetera) merupakan lokasi umum untuk menyimpan berkas sistem yang digunakan oleh sistem operasi. yang disorot di bawah adalah file "passwd" dan "shadow" Kedua file ini khusus untuk Linux karena menunjukkan bagaimana sistem Anda menyimpan kata sandi untuk setiap pengguna dalam format terenkripsi yang disebut sha512.
/var merupakan lokasi untuk menyimpan data yang sering diakses atau ditulis oleh layanan atau aplikasi yang berjalan pada sistem. Misalnya, file log dari layanan dan aplikasi yang berjalan ditulis di sini ( /var/log )
/root Tidak ada yang lebih penting dari folder ini selain pemahaman bahwa ini adalah direktori rumah bagi pengguna "root". Namun, perlu disebutkan bahwa asumsi logisnya adalah bahwa pengguna ini akan memiliki data mereka di direktori seperti " /home/root" secara default.
/tmp merupakan lokasi untuk menyimpan data yang hanya perlu diakses sekali atau dua kali. Mirip dengan memori pada komputer Anda, setelah komputer dihidupkan ulang, isi folder ini akan dihapus. Yang berguna bagi kami dalam pengujian penetrasi adalah bahwa setiap pengguna dapat menulis ke folder ini secara default. Artinya, setelah kami memiliki akses ke suatu mesin, folder ini berfungsi sebagai tempat yang baik untuk menyimpan hal-hal seperti skrip enumerasi kami.
- Apa jalur direktori tempat kita diharapkan menyimpan log?/var/log
- Direktori root apa yang mirip dengan cara kerja RAM pada komputer?tmp
- Beri nama direktori home dari pengguna root /root
Linux Fundamentals Part 3
3. Terminal Text Editors
Nano digunakan untuk mengedit dan membuat file. untuk keluar Tekan "CTRL" dan "X"
Vim sama seperti nano cuma jauh lebih cangih
-Edit "task3" yang terletak di direktori home "tryhackme" menggunakan Nano. Apa tandanya? ssh di nomor 2nano task3THM{TEXT_EDITORS}
4. General/Useful Utilities
Wget Mengunduh File perintah wget, mendukung protokol HTTP, HTTPS, dan FTP. "Contoh ingin downloads myfile.txt"wget https://assets.tryhackme.com/additional/linux-fundamentals/part3/myfile.txt
- SCP Menyalin file & direktori dari sistem Anda saat ini ke sistem jarak jauh Contoh :
192.168.1.30IP sistem jarak jauh
ubuntu Pengguna pada sistem jarak jauh
important.txtNama file pada sistem lokal
transferred.txtNama yang kita inginkan untuk menyimpan file pada sistem jarak jauh
Command : scp important.txt ubuntu@192.168.1.30:/home/ubuntu/transferred.txt
- SCP Salin file & direktori dari sistem jarak jauh ke lokal
192.168.1.30IP sistem jarak jauh
ubuntu Pengguna pada sistem jarak jauh
documents.txtNama file pada sistem jarak jauh
notes.txtNama yang kita inginkan untuk menyimpan file di sistem kita
Command : scp ubuntu@192.168.1.30:/home/ubuntu/documents.txt notes.txt
python3 -m http.server Start Webserver
dig -x host
wget -c file
wget -r url
curl url
curi -o meh.html uri
- Unduh berkas http://10.10.209.7:8000/.flag.txt ke TryHackMe AttackBox. Ingat, Anda perlu melakukan ini di terminal baru.
jalankan python3 -m http.server dan wget http://10.10.209.7:8000/.flag.txt
"cat flag.txt"THM{WGET_WEBSERVER}
5. Processes 101
ps melihat daftar proses yang sedang berjalan
Detail Informasi
-USER : Pengguna yang memiliki proses.
-PID : ID proses
-%CPU : Persentase CPU yang digunakan oleh proses.
-%MEM : Persentase memori fisik yang digunakan oleh proses.
-VSZ : Ukuran virtual memory yang digunakan oleh proses (dalam kilobytes).
-TTY : Terminal yang terhubung ke proses (jika ada).
-STAT : Status proses (misalnya, R untuk running, S untuk sleeping).
-START : Waktu mulai proses.
-TIME : Jumlah waktu CPU yang telah digunakan oleh proses.
-COMMAND : Perintah yang digunakan untuk memulai proses.
ps aux melihat proses yang dijalankan oleh pengguna lain dan proses yang tidak dijalankan dari sesi (proses sistem).
killall procmenghentikan semua proses yang bernama proc.
kill [PID] Menghentikan Proccess dari PID tersebut
Detail Kill
SIGTERM Meghentikan proses, tetapi izinkan proses melakukan beberapa tugas pembersihan terlebih dahulu.
SIGKILL Meghentikan proses - tidak melakukan pembersihan setelah kejadian.
SIGSTOP Menghentikan/menangguhkan suatu proses.
systemd salah satu proses pertama yang dimulai.
Detail Option systemctl
startMemulai (menjalankan) layanan.
stopMenghentikan layanan yang sedang berjalan.
enableMenghentikan dan kemudian memulai kembali layanan.
disableMengaktifkan layanan untuk dimulai secara otomatis saat boot.
restartMenonaktifkan layanan sehingga tidak dimulai secara otomatis saat boot.
systemctl [option] [service] Menjalankan Process "Contoh" :systemctl start apache2
-Jika kita hendak meluncurkan suatu proses dengan ID sebelumnya "300", apa ID dari proses baru tersebut? 301
-Jika kita ingin menghentikan suatu proses dengan bersih , sinyal apa yang akan kita kirimkan?SIGTERM
-Temukan proses yang sedang berjalan pada instance yang di-deploy (MACHINE_IP). Bendera apa yang diberikan?THM{PROCESSES}
-Perintah apa yang akan kita gunakan untuk menghentikan layanan "myservice"?systemctl stop myservice
-Perintah apa yang akan kita gunakan untuk memulai layanan yang sama saat sistem boot? systemctl enable myservice
-Perintah apa yang akan kita gunakan untuk mengembalikan proses yang sebelumnya berada di latar belakang ke latar depan?fg
6. Maintaining Your System: Automation
Pengguna mungkin ingin menjadwalkan tindakan atau tugas tertentu untuk dilakukan setelah sistem di-boot. Misalnya, menjalankan perintah, mencadangkan file, atau meluncurkan program favorit Anda di Spotify atau Google Chrome.
crontabs / cronsalah satu proses yang dimulai selama boot, yang bertanggung jawab untuk memfasilitasi dan mengelola pekerjaan cron.
cron proses untuk mengeksekusi setiap baris langkah demi langkah. Crontab memerlukan 6 nilai khusus:
MIN Menit berapa untuk mengeksekusi.
HOUR Jam berapa untuk mengeksekusinya.
DOM Hari apa dalam bulan untuk melakukan eksekusi?
MON Bulan apa dalam setahun untuk melakukan eksekusi?
DOW Hari apa dalam seminggu untuk melakukan eksekusi?
CMD Perintah sesungguhnya yang akan dieksekusi.
Mari kita gunakan contoh pencadangan berkas. Anda mungkin ingin mencadangkan "Dokumen" "cmnatic" setiap 12 jam. Kami akan menggunakan format berikut: 0 */12 * * * cp -R /home/cmnatic/Documents /var/backups/ fitur crontab yang menarik adalah bahwa crontab juga mendukung karakter pengganti atau tanda bintang ( * ). Jika kita tidak ingin memberikan nilai untuk kolom tertentu, yaitu kita tidak peduli bulan, tanggal, atau tahun eksekusi -- yang penting eksekusi dilakukan setiap 12 jam, kita cukup memberi tanda bintang.
Generate Otomatis Kunjungi
Refrensi Kunjungi
-Kapan crontab pada instance yang di-deploy (MACHINE_IP) akan dijalankan?@reboot
7. Maintaining Your System: Package Management
apt updateMemperbaharui apt
apt install [Nama Aplikasi]menginstall aplikasi
apt remove [Nama Aplikasi]menghapus aplikasi
8. Maintaining Your System: Logs
Kami telah menyinggung sedikit tentang berkas log dan tempat menemukannya di Dasar-Dasar Linux Bagian 1. Namun, mari kita rangkum ulang dengan cepat. Berlokasi di direktori /var/log, berkas dan folder ini berisi informasi pencatatan untuk aplikasi dan layanan yang berjalan di sistem Anda. Sistem Operasi (OS) telah menjadi cukup baik dalam mengelola log ini secara otomatis dalam proses yang dikenal sebagai "rotating".
-Berapa alamat IP pengguna yang mengunjungi situs tersebut?10.9.232.111
-Berkas apa yang mereka akses?catsanddogs.jpg