Peta dunia

 

EN: Read in English

Dunia L4: Dapur Jauh

Misi capstone 7: Server dari kosong

Anda akan belajar: menyediakan server sebenar sendiri: pengguna, kunci, firewall, nginx, skrip dan timer.

Teks BM belum disemak oleh penutur asli.

Disemak dengan Linux (Debian 13) pada 1 Nov 2026

Masalahnya

Misi 7: buka dapur cawangan baharu, dari mesin kosong. Mula-mula, rancang binaannya. Susun kerja ikut tertib yang selamat.

Kerja pertama di atas. Susun ikut turutan. Guna anak panah, atau seret.

  • Uji dari laptop anda
  • Timer systemd untuk skrip itu
  • Kemas kini pakej
  • nginx dengan halaman anda sendiri
  • Tambah pengguna anda sendiri dengan sudo
  • Firewall: benarkan SSH dan web, kemudian hidupkan
  • Skrip sandaran dalam mod ketat
  • Log masuk dengan kunci SSH

Tengok

Server sebenar, risiko sebenar. Peraturan yang baik atau tidak?

Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.

1 / 4

Guna VM atau playground pakai buang, jangan server kerja.

Guna VM atau playground pakai buang, jangan server kerja.

Tengok

Skrip sandaran anda. Baris mana yang buat ia berhenti pada masalah pertama?

#!/bin/bash
set -euo pipefail
src="$HOME/kedai/menu"
dest="$HOME/backups"
mkdir -p "$dest"
cp -r "$src" "$dest/menu-$(date +%F)"
echo "backup done"

Pilih satu jawapan.

Tengok

Timer memulakan satu servis. Simpan ini sebagai /etc/systemd/system/kedai-backup.service, dengan pengguna anda sendiri. Tekan baris yang jalankan skrip.

Tekan baris yang jalankan skrip.

0 daripada 1 dijumpai

Cuba

Sekarang bina betul-betul. Tanda anda disimpan. Tukar aina dan SERVER-IP kepada milik anda.

Misi sebenar

  1. sudo apt update && sudo apt upgrade -y
  2. sudo adduser aina && sudo usermod -aG sudo aina
  3. ssh-copy-id aina@SERVER-IP
  4. sudo apt install -y ufw nginx
  5. sudo ufw allow OpenSSH && sudo ufw allow 'Nginx HTTP'
  6. sudo ufw enable && sudo ufw status
  7. echo '<h1>Kedai Kancil, branch 2</h1>' | sudo tee /var/www/html/index.html
  8. mkdir -p ~/kedai/menu && echo 'nasi lemak 5' > ~/kedai/menu/today.txt
  9. chmod +x ~/backup.sh && ~/backup.sh
  10. sudo systemctl daemon-reload && sudo systemctl enable --now kedai-backup.timer
  11. systemctl list-timers kedai-backup.timer

0 daripada 14 langkah siap · Tanda anda disimpan.

Semak

GitHub boleh lihat fail anda. Taip nama pengguna anda dan tekan Semak sekarang.

Semak di GitHub

Nama pengguna anda dihantar ke api.github.com sahaja.

  • Repo server-from-scratch anda awamBelum disemak
  • Ia ada backup.shBelum disemak
  • Ia ada kedai-backup.serviceBelum disemak
  • Ia ada kedai-backup.timerBelum disemak

Semak

Selebihnya hanya anda boleh lihat. Tanda yang benar.

Semakan sendiri

0 daripada 6 langkah siap · Tanda anda disimpan.

Anda berjaya!

Kini anda boleh sediakan server Linux kecil yang selamat dari mesin kosong.

Nak tahu lebih (pilihan)

Di mana cerita ini tak tepat: dapur cawangan sebenar ada pekerja yang terhidu asap. Server tak perasan apa-apa melainkan anda tambah semakan. Kursus Pemantauan & Observability tambah penggera asap. Nanti, kukuhkan SSH: matikan log masuk kata laluan, tetapi hanya selepas log masuk kunci berjaya.