Mikrotik :

ssh -m hmac-sha1 admin@10.100.1.1 -p 255

    # Daftarkan SSH key (sekali, butuh password admin saat setup)
    .\scripts\setup-ssh-mikrotik.ps1

    # RouterOS 7.5 butuh RSA (ed25519 user key baru di 7.12+)
    .\scripts\setup-ssh-mikrotik.ps1 -KeyType rsa

    # Login tanpa password (setelah key terdaftar)
    .\scripts\ssh-mikrotik.ps1
    .\scripts\ssh-mikrotik.ps1 -Command "/system resource print"

    # Jika password admin ditolak setelah import key, login paksa password:
    .\scripts\ssh-mikrotik.ps1 -UsePassword

    # Recovery manual di RouterOS (via Winbox/terminal):
    #   /user ssh-keys remove [find user=admin]
    #   /ip ssh set password-authentication=yes



Reverse_proxy:

    ssh -m hmac-sha1 root@10.100.1.24 -p 22

    ssh -m hmac-sha1 root@10.100.1.24 -p 22 "perintah"

    /opt/stacks/geonet-console/
    https://console.gisportal.id

    /opt/stacks/sqlservercheck/



Main_Database:

    ssh -m hmac-sha1 root@10.100.1.25 -p 22

    ssh -m hmac-sha1 root@10.100.1.25 -p 22 "perintah"



AD-LDAP:

    ssh -m hmac-sha1 Administrator@10.100.1.40 -p 22





# =============================================================================

# REMOTE DOCKER DEVELOPMENT (laptop tanpa Hyper-V/Docker lokal)

# =============================================================================

# Model: edit kode di laptop → deploy via SSH → build & run di 10.100.1.24

# Kredensial (.env) hanya di server, tidak di-sync dari laptop.



# --- SSH key (sekali saja) ---

ssh-keygen -t ed25519 -f "$env:USERPROFILE\.ssh\id_ed25519" -C "admin@$(hostname)" -N ""

# Private key : C:\Users\admin\.ssh\id_ed25519

# Public key  : C:\Users\admin\.ssh\id_ed25519.pub



# Daftarkan public key ke reverse proxy (PowerShell)

type "$env:USERPROFILE\.ssh\id_ed25519.pub" | ssh -m hmac-sha1 root@10.100.1.24 -p 22 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"



# Daftarkan public key ke main database (PowerShell)

type "$env:USERPROFILE\.ssh\id_ed25519.pub" | ssh -m hmac-sha1 root@10.100.1.25 -p 22 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"



# Daftarkan public key ke Mikrotik (RouterOS — upload + import, bukan authorized_keys)

.\scripts\setup-ssh-mikrotik.ps1



# Verifikasi (tanpa password)

ssh -o BatchMode=yes -m hmac-sha1 root@10.100.1.24 -p 22 "hostname && whoami"

ssh -o BatchMode=yes -m hmac-sha1 root@10.100.1.25 -p 22 "hostname && whoami"

ssh -o BatchMode=yes -i "$env:USERPROFILE\.ssh\id_rsa_mikrotik" -m hmac-sha1 admin@10.100.1.1 -p 255 "/system identity print"



# --- Deploy dari laptop (PowerShell, di folder project) ---

.\scripts\deploy-databaselist.ps1              # build + deploy databaselist

.\scripts\deploy-databaselist.ps1 -NoBuild     # restart saja (tanpa rebuild image)

.\scripts\deploy-sqlservercheck.ps1            # build + deploy sqlservercheck

.\scripts\ssh-remote.ps1                       # SSH shell ke reverse proxy

.\scripts\ssh-remote.ps1 -Command "docker ps"  # jalankan perintah remote



# --- URL setelah deploy ---

# databaselist     : https://databaselist.gisportal.id/

# ldap-users       : https://databaselist.gisportal.id/ldap-users

# sqlservercheck   : https://sqlservercheck.gisportal.id/ts | /nts



# --- Edit .env di server (jangan dari laptop) ---

ssh -m hmac-sha1 root@10.100.1.24 -p 22

nano /opt/stacks/databaselist/.env

cd /opt/stacks/databaselist && docker compose up -d


