-
Notifications
You must be signed in to change notification settings - Fork 59
Security Hardening id
Panduan ini memberikan langkah-langkah praktis untuk meningkatkan keamanan sistem MiniOS Anda. Karena MiniOS adalah sistem live, perhatian utama keamanan adalah melindungi data pengguna pada penyimpanan persisten dan mengontrol akses ke sistem yang sedang berjalan. Pengaturan default dirancang untuk kenyamanan penggunaan portabel, namun mungkin tidak optimal untuk semua skenario penggunaan. Rekomendasi berikut akan membantu Anda mengonfigurasi sistem untuk keamanan yang lebih baik.
Secara default, MiniOS melakukan login otomatis tanpa kata sandi. Ini memberikan kemudahan untuk penggunaan portabel, namun dapat menjadi risiko keamanan dalam beberapa skenario.
Kredensial Akun Default:
-
User:
live/evil -
Root:
root/toor
Sebelum mengatur password, disarankan untuk membuat hash password terenkripsi:
<a id="the-command-will-prompt-you-to-enter-a-password-and-output-the-hash"></a>
# The command will prompt you to enter a password and output the hash
mkpasswd -m yescrypt
<a id="example-output-yj9tlong-hashspigfup"></a>
# Example output: $y$j9T$...(long hash)...$Spig/F.uPAnda dapat mengatur password dengan dua cara: sangat disarankan menggunakan password terenkripsi.
Penting: Pengaturan password dan parameter akun pengguna melalui parameter boot dan file konfigurasi hanya berlaku pada boot sistem pertama. Setelah itu, password hanya dapat diubah menggunakan metode standar Linux (passwd, sudo passwd).
Tambahkan parameter ke command line kernel di menu boot (GRUB untuk UEFI atau SYSLINUX untuk BIOS):
Untuk password terenkripsi (disarankan):
user-password-crypted='$y$j9T$...(hash).../'
root-password-crypted='$y$j9T$...(hash).../'
Untuk password biasa (tidak disarankan):
user-password='your_password'
root-password='root_password'
Penting: Password biasa akan terlihat di command line kernel dan dapat dibaca oleh pengguna sistem lain.
Edit file minios/config.conf di direktori root USB drive:
Untuk password terenkripsi:
LIVE_USER_PASSWORD_CRYPTED="$y$j9T$...(hash).../"
LIVE_ROOT_PASSWORD_CRYPTED="$y$j9T$...(hash).../"
Untuk password biasa:
LIVE_USER_PASSWORD="your_password"
LIVE_ROOT_PASSWORD="root_password"
Setelah boot sistem pertama, password dapat diubah menggunakan perintah Linux standar:
<a id="change-current-user-password"></a>
# Change current user password
passwd
<a id="change-root-user-password-requires-sudo"></a>
# Change root user password (requires sudo)
sudo passwd root
<a id="change-specific-user-password-requires-sudo"></a>
# Change specific user password (requires sudo)
sudo passwd usernameSetelah mengatur password, nonaktifkan login otomatis agar autentikasi diperlukan:
noautologin
LIVE_CONFIG_CMDLINE="components noautologin"
Menonaktifkan autologin sebagian:
-
nox11autologin- hanya menonaktifkan autologin grafis (login manager akan meminta autentikasi) -
nottyautologin- hanya menonaktifkan autologin konsol (sudah dinonaktifkan secara default)
Secara default, pengguna live memiliki hak administrator penuh tanpa permintaan password baik di konsol (sudo) maupun aplikasi grafis (melalui polkit). Ini memberikan kenyamanan untuk penggunaan sistem live, namun mungkin perlu diubah untuk keamanan yang lebih baik.
Untuk meminta password saat menggunakan sudo, jalankan setelah sistem boot:
<a id="change-rule-to-require-password"></a>
# Change rule to require password
echo "live ALL=(ALL:ALL) ALL" | sudo tee /etc/sudoers.d/liveSetelah itu, perintah sudo akan meminta password pengguna.
Agar program administratif grafis meminta password, hapus aturan polkit:
sudo rm /usr/share/polkit-1/rules.d/sudo_on_live.rulesSetelah itu, installer software, pengaturan sistem, dan aplikasi GUI administratif lainnya akan meminta password.
Untuk keamanan maksimal, Anda dapat menonaktifkan sudo dan akses root sepenuhnya:
Melalui parameter boot:
noroot
Melalui file konfigurasi:
LIVE_CONFIG_NOROOT=true
Dampak: Perintah sudo tidak akan berfungsi, login root akan dinonaktifkan, dan tidak ada tindakan administratif yang tersedia.
Mengapa SSH diaktifkan secara default: MiniOS dirancang sebagai sistem pemulihan dan diagnostik untuk servis perangkat keras bermasalah. SSH diaktifkan dengan pengaturan permisif untuk menyediakan akses jarak jauh saat tampilan lokal tidak tersedia, rusak, atau saat bekerja dengan sistem tanpa layar.
Pengaturan SSH saat ini:
- Layanan SSH diaktifkan dan berjalan otomatis
- Login root melalui SSH diizinkan
- Autentikasi password diaktifkan
Implikasi keamanan: Konfigurasi ini menimbulkan risiko keamanan pada jaringan yang tidak terpercaya, namun diperlukan untuk skenario pemulihan.
Jika akses jarak jauh tidak diperlukan, nonaktifkan SSH sepenuhnya:
Melalui parameter boot:
disable-services=ssh,avahi-daemon
Melalui file konfigurasi:
DISABLE_SERVICES=ssh,avahi-daemon
Jika SSH diperlukan, amankan dengan metode berikut:
Gunakan metode pengaturan password yang dijelaskan di atas.
Tempatkan file authorized_keys di direktori root USB drive:
-
authorized_keys.root- untuk pengguna root -
authorized_keys.live- untuk pengguna live -
authorized_keys.username- untuk pengguna lain
Komponen sistem akan secara otomatis menyalinnya ke direktori home saat boot.
Setelah sistem boot, edit konfigurasi SSH:
sudo nano /etc/ssh/sshd_config.d/minios.confUbah pengaturan ke yang lebih aman:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Restart layanan SSH:
sudo systemctl restart sshPenting: Selalu uji akses kunci SSH sebelum menonaktifkan autentikasi password.
MiniOS sepenuhnya kompatibel dengan Secure Boot, karena menggunakan kernel Debian standar dengan bootloader yang sudah ditandatangani. Secure Boot memberikan perlindungan terhadap malware sebelum boot (bootkit) dan direkomendasikan untuk keamanan yang lebih baik.
Untuk keamanan fisik, atur password di BIOS/UEFI komputer Anda untuk mencegah pengguna tidak sah melakukan boot dari perangkat lain atau mengubah pengaturan boot.
🌐 Languages
📋 About MiniOS
🚀 Installation
⚙️ Configuration
🛡️ Administration
🛠️ Development
📋 Über MiniOS
🚀 Installation
- Schnellstartanleitung
- Hardware-Kompatibilität
- MiniOS Installation
- MiniOS Installer
- USB-Erstellungstools
⚙️ Konfiguration
🛡️ Administration
🛠️ Entwicklung
📋 Acerca de MiniOS
🚀 Instalación
- Guía de Inicio Rápido
- Compatibilidad de Hardware
- Instalando MiniOS
- Instalador de MiniOS
- Herramientas para Crear USB
⚙️ Configuración
- Menús de Arranque
- Parámetros de Arranque
- Archivo de Configuración
- Parámetros de live-config
- Gestión de Sesiones
🛡️ Administración
- Lista de Paquetes
- Gestión del Kernel
- Endurecimiento de Seguridad
- Optimización de Rendimiento
- Virtualización
🛠️ Desarrollo
📋 À propos de MiniOS
🚀 Installation
- Guide de démarrage rapide
- Compatibilité matérielle
- Installation de MiniOS
- Programme d’installation MiniOS
- Outils de création USB
⚙️ Configuration
- Menus de démarrage
- Paramètres de démarrage
- Fichier de configuration
- Paramètres live-config
- Gestion de session
🛡️ Administration
- Liste des paquets
- Gestion du noyau
- Renforcement de la sécurité
- Optimisation des performances
- Virtualisation
🛠️ Développement
📋 Tentang MiniOS
🚀 Instalasi
- Panduan Mulai Cepat
- Kompatibilitas Perangkat Keras
- Menginstal MiniOS
- Installer MiniOS
- Alat Pembuatan USB
⚙️ Konfigurasi
🛡️ Administrasi
🛠️ Pengembangan
📋 Informazioni su MiniOS
🚀 Installazione
- Guida Rapida
- Compatibilità Hardware
- Installazione di MiniOS
- Installatore MiniOS
- Strumenti per Creare USB
⚙️ Configurazione
🛡️ Amministrazione
- Elenco Pacchetti
- Gestione Kernel
- Rafforzamento della Sicurezza
- Ottimizzazione Prestazioni
- Virtualizzazione
🛠️ Sviluppo
📋 Sobre o MiniOS
🚀 Instalação
- Guia de Início Rápido
- Compatibilidade de Hardware
- Instalando o MiniOS
- Instalador do MiniOS
- Ferramentas de Criação de USB
⚙️ Configuração
- Menus de Boot
- Parâmetros de Boot
- Arquivo de Configuração
- Parâmetros live-config
- Gerenciamento de Sessão
🛡️ Administração
- Lista de Pacotes
- Gerenciamento de Kernel
- Reforço de Segurança
- Otimização de Desempenho
- Virtualização
🛠️ Desenvolvimento
📋 О MiniOS
🚀 Установка
- Краткое руководство
- Совместимость с оборудованием
- Установка MiniOS
- Установщик MiniOS
- Инструменты для создания USB
⚙️ Конфигурация
🛡️ Администрирование
🛠️ Разработка