# Instalarea unui certificat SSL gratuit cu Certbot și Nginx

### Ce vei obține

La final vei avea:

* certificat SSL gratuit de la Let's Encrypt
* activare HTTPS pentru site
* reînnoire automată a certificatului

### Cerințe înainte de instalare

* [domeniu](https://ititanhosting.ro/) sau subdomeniu activ
* înregistrare DNS de tip `A` sau `AAAA` către server
* porturile `80` și `443` deschise
* Nginx funcțional

### 1. Verifică rezolvarea DNS

Pe calculatorul tău sau pe server:

```bash
nslookup exemplu.ro
```

sau

```bash
dig +short exemplu.ro
```

IP-ul afișat trebuie să fie IP-ul serverului tău.

### 2. Instalează Certbot și pluginul pentru Nginx

```bash
sudo apt update
sudo apt install certbot python3-certbot-nginx -y
```

### 3. Verifică configurația Nginx

Înainte să emiți certificatul:

```bash
sudo nginx -t
```

Dacă există erori de configurare, rezolvă-le înainte de pasul următor.

### 4. Rulează Certbot

Exemplu pentru domeniul principal și varianta `www`:

```bash
sudo certbot --nginx -d exemplu.ro -d www.exemplu.ro
```

Certbot te va întreba:

* adresa de email
* acceptarea termenilor
* dacă vrei redirecționare automată HTTP → HTTPS

În majoritatea cazurilor, redirecționarea către HTTPS este alegerea corectă.

### 5. Testează accesul HTTPS

Deschide în browser:

```
https://exemplu.ro
```

Poți verifica și din terminal:

```bash
curl -I https://exemplu.ro
```

### 6. Verifică reînnoirea automată

Testează simularea unei reînnoiri:

```bash
sudo certbot renew --dry-run
```

Dacă acest test trece, reînnoirea automată este configurată corect.

### Unde găsești certificatele

Fișierele sunt de obicei în:

```
/etc/letsencrypt/live/exemplu.ro/
```

Dar, dacă folosești Nginx cu pluginul Certbot, de regulă nu trebuie să modifici manual căile.

### Probleme frecvente

#### Certbot nu poate valida domeniul

Verifică:

* DNS-ul indică spre IP-ul corect
* portul 80 este accesibil public
* nu există alt server/proxy care răspunde pentru acel domeniu

#### Nginx nu pornește după modificări

Testează configurația:

```bash
sudo nginx -t
```

Apoi verifică logurile:

```bash
sudo journalctl -u nginx --no-pager -n 50
```

### Best practices

* Folosește HTTPS pe toate site-urile publice.
* Activează redirecționarea de la HTTP la HTTPS.
* Reînnoirea automată trebuie verificată periodic, mai ales după schimbări mari în configurație.
* Dacă folosești Cloudflare, modul SSL trebuie configurat corect pentru a evita bucle sau erori.

### Concluzie

Certbot + Nginx este una dintre cele mai rapide metode de a securiza un site pe VPS cu un certificat gratuit și ușor de întreținut.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ititanhosting.ro/docs/romana/vps/linux/instalarea-unui-certificat-ssl-gratuit-cu-certbot-si-nginx.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
