# Eng Websäit oder eng Applikatioun online stellen

Äre VPS Ultra huet seng eege IPv4-Adress a seng IPv6-Adress: Är Domaine weisen direkt op si, an Äre Server kritt den Trafic op all de Porten, déi Dir opmaacht. Dir servéiert esou vill Websäiten an Domainen, wéi Dir wëllt.

## 1. Ären Domain op Äre Server weise loossen

Do, wou d'DNS-Zon vun Ärem Domain verwalt gëtt, leet Dir zwou Androen un, mat den Adressen, déi an der Kaart vun Ärem Server ugewise ginn, Rubrik **VPS** vun Ärem Clientsberäich:

| Typ    | Numm                                     | Wäert                            |
| ------ | ---------------------------------------- | -------------------------------- |
| `A`    | `@`, `www` oder déi gewënschte Subdomain | d'**IPv4-Adress** aus Ärer Kaart |
| `AAAA` | deeselwechten Numm                       | d'**IPv6-Adress** aus Ärer Kaart |

Wann d'DNS-Zon vun Ärem Domain vu Simafri verwalt gëtt, leet eis Equipe dës Androen fir Iech un: schreift eis. Ier Dir eng Websäit, déi scho online ass, ëmstellt, frot eis och, d'Liewensdauer (TTL) vun der Androung erofzesetzen.

Fir et vun Ärem Computer aus z'iwwerpréiwen:

```
dig +short A app.meng-firma.lu

dig +short AAAA app.meng-firma.lu
```

## 2. Äre Webserver an Ären Zertifikat installéieren

Zwou gängeg Méiglechkeeten ënner Linux:

* **Caddy**, deen Är HTTPS-Zertifikater eleng kritt an erneiert:

  ```
  apt install caddy
  ```

  dann, an `/etc/caddy/Caddyfile`:

  ```
  app.meng-firma.lu {

      reverse_proxy 127.0.0.1:3000

  }
  ```

  an `systemctl reload caddy`;

* **Nginx** oder **Apache**, mat **Certbot** fir den Zertifikat vu Let's Encrypt:

  ```
  apt install nginx certbot python3-certbot-nginx

  certbot --nginx -d app.meng-firma.lu -d www.app.meng-firma.lu
  ```

  Certbot installéiert den Zertifikat, setzt d'Lauschteren um Port 443 derbäi a plangt seng automatesch Erneierung.

Ënner Windows Server servéiert **IIS** Är Websäiten, an en ACME-Client wéi win-acme installéiert an erneiert do Är Zertifikater vu Let's Encrypt.

## 3. Är Applikatioun am Gaang halen

Eng Node.js-, Python-, Go- oder Java-Applikatioun, déi permanent leeft, vertraut Dir **systemd** un: si start mam Server a start eleng nei, wann se ophält. Beispill, an `/etc/systemd/system/app.service`:

```
[Unit]

Description=Meng Applikatioun

After=network.target



[Service]

WorkingDirectory=/srv/app

ExecStart=/usr/bin/node server.js

Restart=always

Environment=NODE_ENV=production

User=www-data



[Install]

WantedBy=multi-user.target
```

```
systemctl daemon-reload

systemctl enable --now app

journalctl -u app -f    # seng Logs verfollegen
```

Docker an Docker Compose ginn och wéi op all Linux-Server installéiert.

## 4. Är Datebank

PostgreSQL, MySQL, MariaDB, Redis oder MongoDB gi mam Paketmanager installéiert, oder aus dem offiziellen Depot vum Hiersteller. De garantéierten Aarbechtsspäicher vun Ärem VPS Ultra eegent sech gutt fir eng usprochsvoll Datebank: stellt hiren Aarbechtsspäicher (`shared_buffers` fir PostgreSQL, `innodb_buffer_pool_size` fir MySQL) no dem Aarbechtsspäicher vun Ärer Gréisst an.

Loosst Är Datebank op `localhost` lauschteren, a verwalt se vun Ärem Computer aus iwwer en SSH-Tunnel:

```
ssh -L 5432:localhost:5432 root@app.meng-firma.lu
```

Ären Tool (DBeaver, pgAdmin, TablePlus) verbënnt sech dann mat `localhost:5432`.

## Dacks gestallte Froen

### Meng Websäit weist en Zertifikatsfeeler.

Iwwerpréift an dëser Reiefolleg: Är Androen `A` an `AAAA` weisen op d'Adressen aus Ärer Kaart (`dig`), Äre Webserver lauschtert op de Porten 80 an 443 (`ss -tlnp`), Är Firewall léisst se duerch (`ufw status`), an den Zertifikat deckt dësen Numm of (`certbot certificates`).

### Kann ech méi Websäiten op mengem VPS Ultra hosten?

Jo, esou vill, wéi Dir wëllt: loosst all Domain op Är Adresse weisen a setzt säi Block an Äre Webserver derbäi.
