Kumpulan skrip utilitas untuk Ubuntu server, database, dan SSH key management.
├── macos/
│ ├── macos-install-lemp.sh # Modular LEMP stack installer (Homebrew)
│ └── macos-setup-vhost.sh # Nginx vhost management (create, list, edit, /etc/hosts)
├── mysql/
│ ├── mysql_sync.sh # Sinkronisasi / backup database MySQL
│ └── mysql_user_manager.sh # Manajemen user dan privileges MySQL
├── ssh/
│ ├── generate_ssh_key.sh # Interactive SSH key generator (ed25519)
│ └── simple_ssh_gen.sh # CLI SSH key generator (ed25519)
└── ubuntu/
├── ubuntu-install-lemp.sh # Modular LEMP stack installer
└── ubuntu-setup-vhost.sh # Nginx vhost management (create, list, edit, certbot)
Installer stack LEMP (Linux, Nginx, MySQL, PHP) modular untuk Ubuntu/Debian. Bisa install semua komponen sekaligus atau dipilih sesuai kebutuhan (Nginx, PHP-FPM, Composer, Certbot, MySQL).
sudo ./ubuntu/ubuntu-install-lemp.shCLI menu interaktif untuk mengelola Nginx virtual hosts:
- Buat virtual host baru (auto webroot, FastCGI PHP-FPM, dynamic nested subfolder routing, SSL Certbot otomatis).
- List domain aktif.
- Edit konfigurasi vhost domain.
- Request atau renew SSL Certbot.
- Switch versi PHP (pilih socket
/run/php/php*-fpm.sockaktif, reload Nginx, opsi set PHP CLI viaupdate-alternatives).
sudo ./ubuntu/ubuntu-setup-vhost.shInstaller stack LEMP lokal via Homebrew di macOS (Nginx, multi-versi PHP-FPM shivammathur/php, Composer, MySQL Server).
./macos/macos-install-lemp.shCLI menu interaktif manajemen Nginx virtual host di macOS (/opt/homebrew/etc/nginx/servers/):
- Buat virtual host baru (auto docroot, FastCGI PHP port mapping, dynamic nested subfolder routing, opsi append otomatis ke
/etc/hosts). - List virtual host terpasang.
- Edit konfigurasi vhost domain.
- Switch versi PHP (ganti port
fastcgi_pass127.0.0.1:PORT, reload Nginx, opsi link PHP CLI via Homebrew).
./macos/macos-setup-vhost.shSkrip backup dan sinkronisasi database MySQL (remote/local) via mysqldump dan ssh.
./mysql/mysql_sync.shSkrip interaktif manajemen user MySQL (list, create user, change password, rename/host scope, grant privileges, show grants, drop user) dengan integrasi profil koneksi lokal.
./mysql/mysql_user_manager.shScript bash untuk membuat SSH key dengan algoritma ed25519 dan menambahkannya secara otomatis ke file SSH config.
Script interaktif lengkap dengan validasi input dan konfigurasi yang detail.
Fitur:
- Validasi email
- Input interaktif untuk semua parameter
- Cek dan konfirmasi jika key sudah ada
- Otomatis membuat direktori
.sshjika belum ada - Menambahkan key ke SSH agent
- Menampilkan public key untuk di-copy
- Konfigurasi SSH config yang lengkap
- Output berwarna untuk kemudahan pembacaan
Penggunaan:
./ssh/generate_ssh_key.shScript sederhana yang dapat dijalankan dengan parameter atau menggunakan default values.
Penggunaan:
# Dengan parameter
./ssh/simple_ssh_gen.sh "your.email@example.com" "my_key" "github" "github.com"
# Menggunakan default values
./ssh/simple_ssh_gen.shParameter:
email- Email untuk SSH key (default: user@example.com)key_name- Nama file key (default: id_ed25519)host_alias- Alias untuk SSH config (default: myserver)hostname- Hostname server (default: example.com)
./ssh/simple_ssh_gen.sh "youremail@gmail.com" "github_key" "github" "github.com"./ssh/simple_ssh_gen.sh "youremail@gmail.com" "gitlab_key" "gitlab" "gitlab.com"./ssh/simple_ssh_gen.sh "youremail@gmail.com" "server_key" "myserver" "192.168.1.100"Kedua script akan:
- Membuat SSH key pair (private & public key) dengan algoritma ed25519
- Menyimpan key di
~/.ssh/[key_name] - Menambahkan konfigurasi ke
~/.ssh/config - Menambahkan key ke SSH agent
- Menampilkan public key untuk di-copy ke server
Host [host_alias]
HostName [hostname]
User git
IdentityFile ~/.ssh/[key_name]
IdentitiesOnly yes
AddKeysToAgent yes
- Script menggunakan algoritma ed25519 yang lebih aman dibanding RSA
- Key dibuat tanpa passphrase untuk kemudahan otomasi
- Permission direktori
.sshdiset ke700 - Permission file config diset ke
600
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/[key_name]Edit script dan hapus parameter -N "" dari perintah ssh-keygen
ssh-add -l- Linux/macOS dengan bash
- OpenSSH client (ssh-keygen, ssh-add)
- Permission untuk menulis ke direktori
~/.ssh