# Csatlakozás

## Az SSH-kulcsa

Linux rendszerű VPS Ultra szervere az Ön **SSH-kulcsával** nyílik meg: ez egy fájlpár, amelyet a számítógépén hoz létre. A **nyilvános** rész a szerverre kerül; a **privát** rész a számítógépén marad, és senkinek sem adja át, csapatunknak sem.

macOS-en, Linuxon és Windows 10 vagy 11 alatt (PowerShell vagy Terminál):

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

Fogadja el a felajánlott helyet, és válasszon jelmondatot. A nyilvános kulcsa az `id_ed25519.pub` fájl: egyetlen sor, amely `ssh-ed25519` előtaggal kezdődik. Küldje el csapatunknak a rendeléskor: az előkészítéskor felhelyezzük a szerverére.

## Csatlakozás SSH-n

Szervere kártyája, ügyfélfelülete **VPS** rovatában, megjeleníti az **SSH-kapcsolat** parancsot:

```
ssh root@203.0.113.20
```

Szerverének saját IPv4-címe van: a csatlakozás a szokásos, 22-es SSH-porton történik, vagy azon, amelyet az `/etc/ssh/sshd_config` fájlban választ. Amint a domainje a szerverére mutat, a neve is működik: `ssh root@app.azoncege.hu`.

### Egy rövidítés: a \~/.ssh/config fájl

```
Host monultra

    HostName 203.0.113.20

    User root

    IdentityFile ~/.ssh/id_ed25519
```

Ezután elég az `ssh monultra` parancs, és ugyanez a rövidítés működik az `scp`, az `rsync`, a `git` és a szerkesztője számára is.

## Kulcs hozzáadása vagy cseréje

Szervere kulcsai a `/root/.ssh/authorized_keys` fájlban találhatók, soronként egy, és Ön maga kezeli őket:

* **kolléga hozzáadása**: illessze be a nyilvános kulcsát a fájl egy új sorába, vagy hozzon létre neki saját fiókot (`adduser`), a kulcsával a `/home/<felhasználónév>/.ssh/authorized_keys` fájlban;
* **hozzáférés visszavonása**: törölje a sorát;
* **számítógépcsere**: adja hozzá az új nyilvános kulcsát, mielőtt a régit eltávolítja.

Eltűnt a privát kulcsa, és már egyetlen kulcs sem nyitja meg a szervert? Küldje el új nyilvános kulcsát a támogatásnak: csapatunk felhelyezi a szerverére.

## Fájlok átvitele

```
# egy fájl a szerverre

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



# egy mappa, szinkronizálva

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

Az SFTP-programok, mint a FileZilla vagy a WinSCP, **SFTP**-n csatlakoznak, szervere címével és a privát kulcsával.

## Munka a szerkesztőjéből

A Visual Studio Code **Remote - SSH** bővítménye úgy nyitja meg a szervere mappáit, mintha a számítógépén lennének: beolvassa a `~/.ssh/config` fájlját, elég kiválasztania a `monultra` bejegyzést. A JetBrains-szerkesztők ugyanezt a kapcsolatot a **Remote Development** révén kínálják.

## Windows Server: a Távoli asztal

A Windows Server rendszerű VPS Ultra a **Távoli asztallal** (RDP) nyílik meg:

1. Windowson indítsa el a **Távoli asztali kapcsolat** (`mstsc`) alkalmazást; macOS-en a Microsoft **Windows App** alkalmazását; Linuxon a Remminát.
2. Adja meg szervere IPv4-címét, amely a kártyáján látható.
3. Jelentkezzen be a csapatunk által az átadáskor megadott rendszergazdai fiókkal, majd az első munkamenetben változtassa meg a jelszavát.

Ezután védje a hozzáférését: hosszú és egyedi jelszóval, és a Távoli asztalt a Windows tűzfalában az Ön címeire korlátozva.

## Gyakori kérdések

### „Permission denied (publickey)”: mit ellenőrizzek?

1. A használt kulcs az, amelyet elküldött nekünk: az `ssh-keygen -lf ~/.ssh/id_ed25519.pub` megjeleníti az ujjlenyomatát.
2. A parancsa a `root` felhasználót és a kártyáján lévő címet adja meg.
3. Ha a kulcsa más nevet visel, adja meg: `ssh -i ~/.ssh/ma_cle root@...`.

Ezután írja le a helyzetet a támogatásnak, a futtatott paranccsal és a kapott üzenettel: a Teljes körű támogatás segít helyreállítani a hozzáférést.

### A kapcsolatom megszakad, ha egy ideig inaktív vagyok.

Adja hozzá a `ServerAliveInterval 60` sort a `~/.ssh/config` fájlban lévő blokkjához, a hosszú parancsokat pedig `tmux` vagy `screen` alatt indítsa, amelyek a kapcsolat megszakadása után is életben tartják őket.
