# Opret forbindelse

## Din SSH-nøgle

Din VPS Ultra med Linux åbnes med din **SSH-nøgle**: et par filer, der oprettes på din computer. Den **offentlige** del lægges på serveren; den **private** del bliver på din computer og gives ikke til nogen, heller ikke til vores team.

På macOS, Linux og Windows 10 eller 11 (PowerShell eller Terminal):

```
ssh-keygen -t ed25519
```

Accepter den foreslåede placering, og vælg en adgangssætning. Din offentlige nøgle er filen `id_ed25519.pub`: en linje, der begynder med `ssh-ed25519`. Send den til vores team ved bestillingen: vi lægger den på din server, når den klargøres.

## Opret forbindelse med SSH

Din servers kort i afsnittet **VPS** i dit kundeområde viser kommandoen **SSH-forbindelse**:

```
ssh root@203.0.113.20
```

Din server har sin egen IPv4-adresse: forbindelsen sker på den sædvanlige SSH-port, 22, eller på den, du vælger i `/etc/ssh/sshd_config`. Når dit domæne peger på din server, virker dens navn også: `ssh root@app.min-virksomhed.dk`.

### En genvej: filen \~/.ssh/config

```
Host minultra

    HostName 203.0.113.20

    User root

    IdentityFile ~/.ssh/id_ed25519
```

Derefter er `ssh minultra` nok, og den samme genvej virker for `scp`, `rsync`, `git` og din editor.

## Tilføj eller erstat en nøgle

Din servers nøgler ligger i `/root/.ssh/authorized_keys`, én pr. linje, og du administrerer dem selv:

* **tilføj en kollega**: indsæt kollegaens offentlige nøgle på en ny linje i filen, eller opret en konto til kollegaen (`adduser`) med nøglen i `/home/<kollegaens konto>/.ssh/authorized_keys`;
* **fjern en adgang**: slet personens linje;
* **skift computer**: tilføj din nye offentlige nøgle, før du fjerner den gamle.

Er din private nøgle forsvundet, og åbner ingen nøgle længere serveren for dig? Send din nye offentlige nøgle til supporten: vores team lægger den på din server.

## Overfør filer

```
# en fil, til serveren

scp archive.tar.gz root@203.0.113.20:/srv/



# en mappe, synkroniseret

rsync -avz ./build/ root@203.0.113.20:/var/www/app/
```

SFTP-programmer som FileZilla eller WinSCP forbinder via **SFTP** med din servers adresse og din private nøgle.

## Arbejd fra din editor

Udvidelsen **Remote - SSH** til Visual Studio Code åbner mapperne på din server, som om de lå på din computer: den læser din fil `~/.ssh/config`, og du skal blot vælge `minultra`. JetBrains-editorerne tilbyder den samme forbindelse via **Remote Development**.

## Windows Server: Fjernskrivebord

En VPS Ultra med Windows Server åbnes via **Fjernskrivebord** (RDP):

1. På Windows starter du **Forbindelse til fjernskrivebord** (`mstsc`); på macOS appen **Windows App** fra Microsoft; på Linux Remmina.
2. Angiv din servers IPv4-adresse, som vises på dens kort.
3. Log ind med den administratorkonto, som vores team giver dig ved leveringen, og skift derefter dens adgangskode ved første session.

Beskyt derefter din adgang: en lang og unik adgangskode, og Fjernskrivebord forbeholdt dine adresser i Windows-firewallen.

## Ofte stillede spørgsmål

### »Permission denied (publickey)«: hvad skal jeg kontrollere?

1. Den nøgle, du bruger, er den, du har sendt os: `ssh-keygen -lf ~/.ssh/id_ed25519.pub` viser dens fingeraftryk.
2. Din kommando angiver brugeren `root` og adressen fra dit kort.
3. Har din nøgle et andet navn, så angiv den: `ssh -i ~/.ssh/min_noegle root@...`.

Beskriv derefter situationen for supporten med den kørte kommando og den modtagne meddelelse: Totalsupport hjælper dig med at få adgangen tilbage.

### Min forbindelse afbrydes, når jeg er inaktiv.

Tilføj `ServerAliveInterval 60` til din blok i `~/.ssh/config`, og kør lange kommandoer i `tmux` eller `screen`, som holder dem i live, selv når du er koblet fra.
