Acest tutorial vă arată cum să generați un CSR pentru FileZilla Server. Începem cu partea care vă economisește cel mai mult timp: FileZilla Server nu poate crea o Certificate Signing Request. Nu există niciun buton pentru asta nicăieri în interfața de administrare, în nicio versiune. Serverul poate genera un certificat autosemnat, poate obține automat unul de la Let’s Encrypt sau poate încărca un certificat și o cheie privată pe care i le furnizați, iar această a treia opțiune este cea în care intră un certificat de la o Autoritate de Certificare comercială. Astfel, cererea este construită în afara FileZilla Server, cu OpenSSL sau cu un generator online, iar serverului i se predau doar cheia și certificatul finalizate.
O observație despre versiuni, înainte de comenzi, deoarece aceasta decide ce terminal deschideți. FileZilla Server a fost rescris pentru versiunea 1.0 în septembrie 2021, iar versiunea curentă este 1.12.6, publicată în mai 2026. Pachetele pentru Debian și macOS au apărut odată cu versiunea 1.2.0 în decembrie 2021; înainte de aceasta, serverul rula doar pe Windows, iar Windows este în continuare locul unde trăiesc majoritatea instalărilor. Instrucțiunile mai vechi care încep cu „conectați-vă prin SSH” presupun în mod tacit o gazdă Linux. Ramura veche 0.9.x s-a încheiat cu versiunea 0.9.60.2 în februarie 2017 și nu a mai primit actualizări de securitate de atunci, așa că, dacă încă o folosiți, planificați upgrade-ul odată cu certificatul.
Ce face FileZilla Server cu certificatele
Merită să vedeți destinația înainte de a construi cererea, pentru că aceasta vă spune ce formă trebuie să aibă fișierele. Deschideți interfața de administrare a FileZilla Server, conectați-vă la server, apoi alegeți Server și Configure… din bara de meniu (scurtătura de la tastatură este Ctrl+F). În arborele din stânga, deschideți Protocols settings, apoi FTP and FTP over TLS (FTPS), apoi fila Connection Security.
Acea pagină conține două lucruri: un meniu Minimum allowed TLS version care oferă v1.2 și v1.3, și un selector TLS credentials cu trei opțiuni și nimic altceva:
- Provide a X.509 certificate and private key. Două câmpuri, Certificate și Private key, fiecare acceptând fie date PEM brute lipite direct în interfață, fie o cale către un fișier de pe sistemul de fișiere al serverului. Câmpul pentru cheie acceptă suplimentar un URL PKCS#11 dacă cheia se află pe un token hardware. Sub acestea se află Private key password (stored in plaintext). Aici ajunge un certificat emis de o CA.
- Use a self-signed X.509 certificate. Un buton Generate new care creează un certificat semnat de server însuși. Util pentru un test închis, dar niciun client nu are încredere în el, așa că fiecare conexiune produce un avertisment.
- Use a Let’s Encrypt® certificate. Suport ACME integrat, adăugat în FileZilla Server 1.0. Serverul solicită și reînnoiește certificatul singur, fără niciun CSR de gestionat de dvs.
Niciuna dintre cele trei opțiuni nu produce o cerere de semnare a certificatului pe care să o puteți trimite unei Autorități de Certificare. FileZilla Server construiește într-adevăr una intern, ca parte a schimbului cu Let’s Encrypt, dar aceasta nu este niciodată scrisă pe disc sau afișată în interfață, și este legată de acea comandă automatizată.
Două detalii de pe acel ecran merită reținute pentru secțiunea următoare. Mai întâi, câmpurile de cale sunt rezolvate pe mașina care rulează motorul serverului, nu pe mașina care rulează interfața de administrare, ceea ce contează deoarece cele două sunt adesea calculatoare diferite. În al doilea rând, deoarece interfața acceptă și certificatul și cheia ca text lipit, nu trebuie neapărat să copiați fișiere pe server. Oricum ar fi, cheia privată pe care sunteți pe cale să o creați trebuie să ajungă cumva pe acea mașină, iar generarea ei acolo este cea mai simplă cale.
Generați CSR-ul pentru FileZilla Server
Dacă ați generat deja CSR-ul, treceți peste această secțiune și mergeți direct la instalarea certificatului SSL pe FileZilla Server odată ce certificatul este emis. În caz contrar, alegeți una dintre cele două căi de mai jos. Ambele produc aceeași pereche de fișiere.
Opțiunea 1: Folosiți generatorul de CSR SSL Dragon
Generatorul nostru de CSR construiește cererea și cheia privată corespunzătoare dintr-un singur formular, ceea ce evită instalarea OpenSSL pe un server Windows doar pentru a rula o singură comandă. Salvați cheia privată pe care o produce și păstrați-o într-un loc sigur. Certificatul emis de CA este inutil fără ea, și nimeni nu vă poate trimite un înlocuitor.
Opțiunea 2: Generați CSR-ul cu OpenSSL
Locul unde rulați comanda depinde de sistemul de operare care găzduiește FileZilla Server:
- Windows. Deschideți Command Prompt sau PowerShell. Windows nu vine cu OpenSSL preinstalat, așa că aveți nevoie de unul: Git for Windows include o versiune care este disponibilă în calea din Git Bash, sau puteți instala un pachet OpenSSL independent pentru Windows, sau puteți folosi Windows Subsystem for Linux. Indiferent ce alegeți, rulați mai întâi
openssl versionși asigurați-vă că răspunde. - Linux. Deschideți un terminal pe server, sau conectați-vă prin SSH. OpenSSL este instalat implicit pe distribuțiile principale.
- macOS. Deschideți Terminal. Comanda
opensslpe macOS este de fapt o versiune LibreSSL, nu OpenSSL, ceea ce contează pentru câteva opțiuni menționate mai jos. Fiecare comandă din acest tutorial a fost rulată pe ambele versiuni și funcționează pe amândouă.
Treceți într-un director pe care îl puteți regăsi ușor, apoi rulați această comandă unică. Ea creează atât cheia privată, cât și cererea:
openssl req -new -newkey rsa:2048 -nodes -keyout ftp.yourdomain.com.key -out ftp.yourdomain.com.csr -addext "subjectAltName=DNS:ftp.yourdomain.com"
Ce face fiecare parte:
req -newcreează o nouă cerere de semnare a certificatului.-newkey rsa:2048generează simultan o cheie RSA nouă de 2048 de biți. Aceasta este cea mai mică cheie pe care CA-urile publice o vor semna. Folosițirsa:4096dacă politica dvs. de securitate o cere.-nodesscrie cheia privată fără o parolă, astfel încât FileZilla Server o poate citi fără intervenție după o repornire. Folosiți această formă, nu aliasul mai nou-noenc: OpenSSL 3.x acceptă ambele, dar versiunea LibreSSL pe care macOS o livrează caopensslrespinge-noencși afișează blocul de utilizare în loc să ruleze.-keyoutși-outnumesc cele două fișiere de ieșire. Numirea lor după numele gazdei este mai bună decât server.key și server.csr, pentru că peste un an veți avea mai multe.-addext "subjectAltName=..."pune numele gazdei în extensia Subject Alternative Name. Nu o omiteți. Cerințele de bază ale CA/Browser Forum descriu acum Common Name ca nefiind recomandat și cer ca orice valoare din el să fie derivată din intrările SAN, deci lista SAN este cea autoritară.
Pentru mai multe nume de gazdă, sau pentru un wildcard, extindeți aceeași opțiune cu o listă separată prin virgulă. Repetați Common Name în interiorul ei:
-addext "subjectAltName=DNS:ftp.yourdomain.com,DNS:files.yourdomain.com"
-addext "subjectAltName=DNS:*.yourdomain.com,DNS:yourdomain.com"
Dacă preferați să folosiți o cheie cu curbă eliptică, comanda echivalentă este mai jos. Verificați mai întâi dacă Autoritatea dvs. de Certificare emite certificate ECDSA pentru produsul pe care îl cumpărați, deoarece nu toate mărcile o fac.
openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -pkeyopt ec_param_enc:named_curve -nodes -keyout ftp.yourdomain.com.key -out ftp.yourdomain.com.csr -addext "subjectAltName=DNS:ftp.yourdomain.com"
Al doilea -pkeyopt nu este decorativ. Pe OpenSSL nu schimbă nimic, pentru că o curbă numită este deja implicită, dar pe versiunea LibreSSL livrată cu macOS, absența sa face ca cererea să descrie curba scriind toți parametrii ei, în loc să o numească. RFC 5480 interzice acea formă în certificatele publice, iar o cerere construită astfel nu identifică nicio curbă.
Răspundeți la întrebări
OpenSSL vă cere acum detaliile care intră în cerere, în această ordine:
- Country Name (2 letter code): codul din două litere pentru țara dvs., de exemplu US. Iată lista completă a codurilor de țară.
- State or Province Name (full name): scris complet. California, nu CA.
- Locality Name (eg, city): numele complet al orașului, de exemplu San Jose.
- Organization Name (eg, company): numele legal exact al organizației dvs., de exemplu Example Holding LLC. Dacă achiziționați un certificat cu Domain Validation, CA nu verifică și nu folosește acest câmp, deci poate fi omis.
- Organizational Unit Name (eg, section): omiteți-l. Din 1 septembrie 2022, Cerințele de bază ale CA/Browser Forum au inclus acest atribut pe lista celor pe care CA-urile nu trebuie să le includă, deci orice tastați este ignorat.
- Common Name: numele complet și calificat al gazdei la care se conectează clienții dvs. FTPS, de exemplu ftp.yourdomain.com, sau wildcard-ul *.yourdomain.com. Formularea acestei întrebări diferă ușor între versiuni, dar în configurația implicită este a șasea întrebare.
- Email Address: opțional, și de obicei omis.
- A challenge password: omiteți-l. Este un atribut vechi al cererii în sine, nu ajunge niciodată în certificatul emis, iar formularele de comandă pentru certificate nu îl cer.
- An optional company name: omiteți-l de asemenea.
O capcană merită cunoscută înainte de a începe să tastați. „Omiteți-l” nu înseamnă „apăsați Enter”. Mai multe câmpuri au o valoare implicită din fișierul de configurare al OpenSSL, afișată între paranteze pătrate la sfârșitul întrebării, iar apăsarea tastei Enter acceptă acea valoare implicită, nu lasă câmpul gol. Pe o configurație OpenSSL standard, apăsarea tastei Enter prin primele câteva întrebări a produs o cerere care spunea C=AU, ST=Some-State și O=Internet Widgits Pty Ltd, ceea ce nimeni nu vrea trimis unei Autorități de Certificare. Pentru a lăsa un câmp cu adevărat gol, tastați un singur punct și apăsați Enter. OpenSSL menționează acest lucru chiar în preambulul afișat deasupra întrebărilor.
Când ați răspuns la ultima întrebare, aveți două fișiere noi în directorul curent:
- ftp.yourdomain.com.csr: cererea de semnare a certificatului. Aceasta este cea pe care o lipiți în formularul dvs. de comandă.
- ftp.yourdomain.com.key: cheia privată. Aceasta nu ajunge niciodată la Autoritatea de Certificare și nu părăsește niciodată controlul dvs. Oricine o deține poate imita serverul dvs., așa că restricționați cine o poate citi și faceți o copie de rezervă undeva la care veți avea acces și peste trei ani. Dacă o pierdeți, certificatul emis devine inutilizabil: trebuie să generați o nouă cerere și să solicitați o reemisiune.
Verificați CSR-ul înainte de a comanda
O greșeală de tastare în cerere înseamnă că CA emite un certificat pe care nu îl puteți folosi, iar rezolvarea costă o nouă rundă de validare. Recitiți cererea înainte de a o trimite:
openssl req -noout -text -verify -in ftp.yourdomain.com.csr
Verificați trei lucruri în rezultat: linia Subject conține detaliile pe care ați dorit să le introduceți, secțiunea Subject Alternative Name listează fiecare nume de gazdă pe care îl vor folosi clienții, iar verificarea semnăturii trece cu succes. OpenSSL 3.x raportează ultimul lucru ca Certificate request self-signature verify OK, în timp ce versiunea LibreSSL de pe macOS îl scurtează la verify OK. Ambele înseamnă același lucru. Dacă preferați să nu lucrați în linia de comandă, lipiți cererea în Decodorul nostru de CSR.
Merită de asemenea confirmat că cheia de pe disc este într-adevăr cea din care a fost construită această cerere, în special dacă ați generat mai multe. Compararea cheilor publice funcționează pentru orice tip de cheie și atât pe OpenSSL, cât și pe LibreSSL:
openssl req -noout -pubkey -in ftp.yourdomain.com.csr
openssl pkey -pubout -in ftp.yourdomain.com.key
Cele două blocuri trebuie să fie identice, caracter cu caracter. Aceasta este versiunea portabilă a comparației mai cunoscute prin modulus și md5, care funcționează doar pentru cheile RSA și raportează o pereche sănătoasă cu curbă eliptică ca nepotrivire.
În final, deschideți fișierul .csr într-un editor de text simplu, precum Notepad sau TextEdit, și copiați întregul bloc, inclusiv primele și ultimele linii:
-----BEGIN CERTIFICATE REQUEST-----
MIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWEx
... (many lines of base64) ...
-----END CERTIFICATE REQUEST-----
Fiecare linie marcator constă din exact cinci cratime, cuvintele, apoi alte cinci cratime. Nu le retastați manual și nu le lipiți printr-un procesor de text, care poate converti șirurile de cratime în liniuțe și poate produce o cerere pe care CA o respinge ca fiind malformată.
Când nu aveți deloc nevoie de un CSR
Începând cu versiunea 1.0, FileZilla Server poate obține și reînnoi singur un certificat gratuit Let’s Encrypt, fără nicio cerere de generat de dvs. și fără fișiere de importat. Aceeași fereastră de setări conține o pagină de nivel superior Let’s Encrypt®, sub Logging în arbore. Bifați Enable Let’s Encrypt® certificate generation, apăsați Create new account și acceptați termenii de utilizare, apoi alegeți sub How to perform the challenges dacă FileZilla Server ar trebui să răspundă provocărilor cu propriul server web intern (propune implicit portul 80) sau dacă îl veți îndrepta către folderul pe care un server web existent îl folosește pentru a răspunde cererilor sub /.well-known/acme-challenge/. După aceea, alegeți Use a Let’s Encrypt® certificate în fila Connection Security și lăsați bifată opțiunea Automatically try to renew the certificate in due time.
Două limitări decid dacă acest lucru este realist pentru dvs. Serverul răspunde doar la provocări de validare HTTP, deci numele gazdei trebuie să fie accesibil din internet pe portul de provocare atât în timpul emiterii certificatului, cât și la fiecare reînnoire. Și pentru că certificatele wildcard de la Let’s Encrypt necesită validare bazată pe DNS, pe care FileZilla Server nu o efectuează, nu puteți obține un wildcard în acest mod.
Calea CSR de mai sus este așadar cea de urmat dacă aveți nevoie de un wildcard, de un certificat Organization Validation sau Extended Validation, sau de un certificat pentru un server care nu este expus pe internet. Tutorialele noastre ACME acoperă emiterea automatizată în mai multe detalii. Opțiunea rămasă, butonul Generate new de sub Use a self-signed X.509 certificate, este destinată doar testării: pune FTPS în funcțiune în câteva secunde și face ca fiecare client să afișeze un avertisment pe care utilizatorii învață rapid să îl ignore.
Întrebări frecvente
Nu. Interfața de administrare oferă trei moduri de a atribui un certificat serverului, și niciunul dintre ele nu produce o cerere pe care să o puteți trimite unei Autorități de Certificare: furnizarea unui certificat și a unei chei private pe care le aveți deja, generarea unui certificat autosemnat, sau obținerea automată a unuia de la Let’s Encrypt. Generați CSR-ul cu OpenSSL sau cu generatorul nostru de CSR, apoi încărcați cheia rezultată și certificatul emis prin prima dintre cele trei opțiuni.
Rulați aceasta pe mașina care găzduiește FileZilla Server, înlocuind numele gazdei cu al dvs.:openssl req -new -newkey rsa:2048 -nodes -keyout ftp.yourdomain.com.key -out ftp.yourdomain.com.csr -addext "subjectAltName=DNS:ftp.yourdomain.com"
Aceasta scrie cererea și cheia privată una lângă alta, apoi vă cere detaliile organizației.
În Command Prompt, PowerShell sau Git Bash pe serverul propriu-zis. Windows nu are OpenSSL preinstalat, așa că instalați mai întâi unul: Git for Windows include o versiune adecvată, iar pachete independente pentru Windows există de asemenea. Rulați openssl version pentru a confirma că este disponibilă comanda înainte de a continua. Instrucțiunile care vă spun să vă conectați prin SSH presupun o gazdă Linux, pe care FileZilla Server o suportă abia din versiunea 1.2.0.
Nu. Un pachet .pfx sau .p12 conține deja un certificat și cheia sa privată, deci nu mai există nimic de cerut. Este însă în containerul greșit: câmpurile pentru certificat și cheie din FileZilla Server sunt documentate ca PEM, iar caseta de lipire este etichetată ca așteptând PEM. Împărțiți pachetul în cele două fișiere PEM cerute de server, introducând parola pachetului atunci când vi se solicită:openssl pkcs12 -in bundle.pfx -nokeys -out certificate.pemopenssl pkcs12 -in bundle.pfx -nocerts -nodes -out privatekey.pem
Ambele fișiere ies cu câteva linii Bag Attributes deasupra fiecărui bloc, care sunt inofensive și pot fi lăsate pe loc sau șterse.
Nu. Crearea unei cereri doar scrie două fișiere pe disc și nu schimbă nimic din ce face serverul. FileZilla Server nu știe că cererea există până când nu încărcați certificatul emis, iar acesta este aplicat din fila Connection Security fără o reinstalare.
Cererea în sine este identică, deoarece o construiți cu OpenSSL în orice caz. Ce s-a schimbat este locul unde ajung fișierele finalizate. Interfața de administrare din 0.9.x plasa setările certificatului sub Edit și Settings, în timp ce 1.x folosește Server, Configure… și fila Connection Security descrisă mai sus. Ramura 0.9.x a avut ultima lansare în februarie 2017 și nu primește actualizări de securitate, deci tratați orice lucru pe ea ca fiind temporar.
Economisește 10% la certificatele SSL în momentul plasării comenzii!
Eliberare rapidă, criptare puternică, încredere în browser de 99,99%, suport dedicat și garanție de returnare a banilor în 25 de zile. Codul cuponului: SAVE10


