CH-J Server Managerserverbeheer over SSH
Menu
Alle handleidingen en artikelen →

Meerdere SSH-servers tegelijk beheren

Houd meerdere servers overzichtelijk met SSH-aliassen en terminals naast elkaar, en voorkom dat u een opdracht op de verkeerde server uitvoert.

Geef elke server een duidelijke naam

Een consistente alias bespaart tijd en vermindert fouten. Bewaar in ~/.ssh/config het adres, de gebruiker, de poort en de sleutel van elke server onder één naam, en verwerk de rol en omgeving in die naam, zodat productie direct herkenbaar is. Voor opties die u niet voor een specifieke host instelt, gelden de waarden uit het blok Host *.

Host prod-web-1
    HostName 203.0.113.10
    User admin
    IdentityFile ~/.ssh/id_ed25519_prod
    IdentitiesOnly yes

Host test-web-1
    HostName 203.0.113.20
    User admin

Voorkom werken op de verkeerde server

Wanneer u op meerdere servers werkt, typt u al snel een opdracht in het verkeerde venster. Toon de hostnaam in de prompt, gebruik op productie een andere promptkleur en controleer waar u bent voordat u iets destructiefs doet. Bewaar de gevaarlijkste stappen voor een moment waarop slechts één terminal openstaat.

hostname -f; whoami; pwd

Laat langdurig werk doorgaan

Een verbroken verbinding beëindigt normaal gesproken de shell en de opdrachten die daarin draaien. Voer langdurige taken op de server uit in tmux of screen, zodat ze doorgaan en u er opnieuw verbinding mee kunt maken. Keepalive op de client detecteert een verbroken verbinding eerder, maar houdt de taak op zichzelf niet draaiend.

tmux new -s upgrade
tmux attach -t upgrade

Weet welke servers reageren

Controleer voordat u op meerdere servers gaat werken of hun SSH-poorten reageren. Een gesloten poort betekent niet altijd dat een server uitstaat: de dienst kan gestopt zijn of een firewall kan uw netwerk blokkeren.

for host in prod-web-1 test-web-1; do
    ssh -o ConnectTimeout=5 "$host" 'hostname; uptime' || echo "$host: no connection"
done

Meerdere servers in CH-J Server Manager

Serverprofielen worden opgeslagen in een lokale versleutelde kluis en er kunnen meerdere SSH-sessies tegelijk openstaan. In Alpha 0.1.1 staan twee terminals naast of boven elkaar, op één of twee servers, en het verbergen van een terminal beëindigt de sessie niet. Modules gebruiken automatisch de verbinding als er slechts één openstaat en vragen om een keuze als er meerdere openstaan, zodat een module nooit uit zichzelf naar een andere server overschakelt. Het vergrendelen van de kluis verbreekt de SSH-sessies, dus rond lopend werk eerst af of laat het in tmux draaien.

Beschikbaarheid in één oogopslag

In Alpha 0.1.1 controleert de beschikbaarheidsmonitor opgeslagen servers op de achtergrond via een TCP-verbinding met de SSH-poort, standaard elke 12 seconden, zonder aan te melden. Offline betekent dan dat de SSH-poort vanuit uw netwerk niet bereikbaar is; de server zelf kan nog steeds draaien.

Gedetailleerde documentatie

OpenSSH: ssh_config →

Biometrische ontgrendeling en beveiliging →