Siguria
Lidhja, përmbajtja dhe header-at që i mbrojnë të dyja — dhe sinjalet e besimit që shfletuesit u tregojnë përdoruesve.
0.13 e pikëzimit të përgjithshëmPse ka rëndësi për renditjet, trafikun dhe besimin?
HTTPS është sinjal renditjeje që nga 2014, dhe që nga 2018 Chrome etiketon çdo faqe HTTP "Not secure" — një fjalë që s’do ta dëshironit kurrë pranë markës suaj në address bar. TLS modern (minimum 1.2, ideale 1.3) është bazë; çfarë e ndan A-në nga C-ja janë protokollet, shkëmbimi i çelësave dhe hijenia e certifikatave.
Header-at e sigurisë janë sigurimi më i lirë i markës në web. HSTS ndalon sulmet downgrade, CSP bllokon XSS, X-Frame-Options dhe frame-ancestors ndalojnë clickjacking (sajti juaj i vizatuar brenda një faqeje mashtrimi), dhe Referrer-Policy ndalon rrjedhjen e URL-ve të përdoruesve cross-site. Asnjë nuk kushton në performancë; të gjitha dalin në çdo auditim serioz.
Header-at që zbulojnë versionin (Server: nginx/1.24.0, X-Powered-By: Express) u japin sulmuesve fingerprint falas të stack-ut tuaj, dhe cookie-t pa Secure/HttpOnly/SameSite mund të vidhen apo të falsifikohen në sulme banale. Për një sajt marketing-u këto janë rregullime një-mbrëmje me fitim të përhershëm.
Çdo sinjal në këtë ndarje — pikërisht ajo që kontrollon motori
Si riparohet?
Shkaqet më të shpeshta të dështimeve këtu
- TLS 1.0/1.1 ende aktivë "për klientë të vjetër" — apo certifikatë që skadon.
- Header-a default të framework-ut: pa HSTS, pa CSP, pa X-Frame-Options.
- Server dhe X-Powered-By që i bërtasin versionet ekzakte internetit.
- Cookie sesioni pa Secure / HttpOnly / SameSite.
- Pa MTA-STS dhe TLS-RPT — enkriptimi i transportit të postës i përforsuar dhe i pambikëqyrur.
Konfigurimi me praktikat më të mira
Një server block nginx i vetëm mbulon anën TLS dhe anën e header-ave bashkë. Publikoji header-at fillimisht me vlerat e sigurta; CSP-në përforcoje gradualisht duke parë konsolën tënde për shkelje.
server {
listen 443 ssl http2;
server_name example.com;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 1d;
ssl_session_tickets off;
# seti i header-ave (HSTS në fund — nis me max-age të shkurtër për test)
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header Content-Security-Policy "default-src 'self'; img-src 'self' data:; object-src 'none'; base-uri 'self'; frame-ancestors 'self'" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "DENY" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
# ndalo zbulimin e versioneve
server_tokens off;
}Set-Cookie: session=abc123; Secure; HttpOnly; SameSite=Lax; Path=/
# Secure → kurrë nuk dërgohet via http://
# HttpOnly → e padukshme për JavaScript (XSS s’e vidhet)
# SameSite → nuk bashkëngjitet kërkesave cross-site (mbrojtje CSRF)# Express
app.disable('x-powered-by');
# nginx (nëse aplikacioni e vendos gjithsesi)
proxy_hide_header X-Powered-By;; përforco TLS për postën ardhëse
mta-sts.example.com. 3600 IN TXT "v=STSv1; id=20261001"
; https://mta-sts.example.com/.well-known/mta-sts.txt shërben:
; version: STSv1
; mode: enforce
; mx: mail.example.com
; max_age: 31536000
; merr raportet e dështimeve
_smtp._tls.example.com. 3600 IN TXT "v=TLSRPT1; rua=mailto:[email protected]"