{"id":1155,"date":"2021-12-30T18:05:23","date_gmt":"2021-12-30T17:05:23","guid":{"rendered":"https:\/\/www.howto-do.it\/de\/?post_type=howto&#038;p=1155"},"modified":"2023-10-21T16:05:03","modified_gmt":"2023-10-21T14:05:03","slug":"tls-fuer-proftpd-unter-debian-11-einrichten","status":"publish","type":"howto","link":"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/","title":{"rendered":"TLS f\u00fcr proftpd unter Debian 11 einrichten"},"content":{"rendered":"<p>In diesem Howto installieren wir proftp und erstellen eine Konfiguration, mit der die eher <strong>unsichere Kommunikation<\/strong> via ftp auf Port 21 mit<strong> TLS (Transport Layer Security)<\/strong> verschl\u00fcsselt werden kann. Unser Test-System ist ein frisch installiertes Debian 11. Los geht&#8217;s:<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_83 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Inhalt<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a3ce9091ac6a\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a3ce9091ac6a\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_1_Installation_von_proftpd\" >Schritt 1: Installation von proftpd<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_2_Daemon_starten\" >Schritt 2: Daemon starten<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_3_Zertifikat_fuer_tls_unter_proftpd_erstellen_mit_Lets_encrypt\" >Schritt 3: Zertifikat f\u00fcr tls unter proftpd erstellen mit Let&#8217;s encrypt<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_4_Konfig_von_proftpd_anpassen\" >Schritt 4: Konfig von proftpd anpassen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_5_Konfigiuration_pruefen\" >Schritt 5: Konfigiuration pr\u00fcfen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_6_Testen_von_einem_anderen_Host\" >Schritt 6: Testen von einem anderen Host<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_7_SSL_Zertifikat_pruefen\" >Schritt 7: SSL Zertifikat pr\u00fcfen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.howto-do.it\/de\/howto\/tls-fuer-proftpd-unter-debian-11-einrichten\/#Schritt_8_Anmelden_mit_einem_FTP_Client\" >Schritt 8: Anmelden mit einem FTP Client<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_1_Installation_von_proftpd\"><\/span>Schritt 1: Installation von proftpd<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">apt update\r\napt -y install proftpd<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_2_Daemon_starten\"><\/span>Schritt 2: Daemon starten<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Der Start des Dienstes bzw. Daemons erledigen wir mit:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">systemctl restart proftpd<\/pre>\n<p>Ob der Daemon ordentlich l\u00e4uft kontrollieren wir so:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">root@ftpserver:\/etc\/proftpd# ps axu | grep -i ftp\r\nproftpd     1087  0.0  0.1  21952  4044 ?        Ss   17:42   0:00 proftpd: (accepting connections)\r\nroot        1245  0.0  0.0   6200   720 pts\/0    R+   18:11   0:00 grep -i ftp\r\nroot@ftpserver:\/etc\/proftpd# systemctl status proftpd\r\n\u25cf proftpd.service - ProFTPD FTP Server\r\n     Loaded: loaded (\/lib\/systemd\/system\/proftpd.service; enabled; vendor preset: enabled)\r\n     Active: active (running) since Thu 2021-12-30 17:42:55 CET; 28min ago\r\n    Process: 1085 ExecStartPre=\/usr\/sbin\/proftpd --configtest -c $CONFIG_FILE (code=exited, status=0\/SUCCESS)\r\n    Process: 1086 ExecStart=\/usr\/sbin\/proftpd -c $CONFIG_FILE $OPTIONS (code=exited, status=0\/SUCCESS)\r\n   Main PID: 1087 (proftpd)\r\n      Tasks: 1 (limit: 4675)\r\n     Memory: 1.9M\r\n        CPU: 137ms\r\n     CGroup: \/system.slice\/proftpd.service\r\n             \u2514\u25001087 proftpd: (accepting connections)\r\n\r\nDez 30 17:42:55 ftpserver systemd[1]: Starting ProFTPD FTP Server...\r\nDez 30 17:42:55 ftpserver proftpd[1085]: Checking syntax of configuration file\r\nDez 30 17:42:55 ftpserver systemd[1]: Started ProFTPD FTP Server.\r\n<\/pre>\n<p>&nbsp;<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_3_Zertifikat_fuer_tls_unter_proftpd_erstellen_mit_Lets_encrypt\"><\/span>Schritt 3: Zertifikat f\u00fcr tls unter proftpd erstellen mit Let&#8217;s encrypt<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Damit wir ein m\u00f6glichst valides Zertifikat bekommen, nutzen wir das kostenfreie Let&#8217;s encrypt und das dazu passende &#8220;acme.sh&#8221; Skript<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">cd \/root\r\ncurl https:\/\/get.acme.sh | sh\r\nsource ~\/.bashrc\r\nacme.sh --register-account -m mail@domain.tld\r\nacme.sh --issue -d ftpserver.biteno.com --webroot \/var\/www\/html\/ --log<\/pre>\n<p>Die Mail-Adresse &#8220;mail@domain.tld&#8221; sowie den FQDN-Servernamen ersetzen sie logischerweise durch ihre Werte.<\/p>\n<p>Anschlie\u00dfend sollten unter \/root\/.acme\/&lt;hostname&gt;\/ die erstellten Zertifikate liegen.<br \/>\nIn unserem Beispiel hei\u00dft unser Host &#8220;ftpserver.biteno.com&#8221; und daher die Zertifikats-Dateien wie folgt:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">TLSRSACertificateFile \/root\/.acme.sh\/ftpserver.biteno.com\/ftpserver.biteno.com.cer\r\nTLSRSACertificateKeyFile \/root\/.acme.sh\/ftpserver.biteno.com\/ftpserver.biteno.com.key\r\nTLSCACertificateFile \/root\/.acme.sh\/ftpserver.biteno.com\/ca.cer<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_4_Konfig_von_proftpd_anpassen\"><\/span>Schritt 4: Konfig von proftpd anpassen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Damit TLS wirksam wird, muss man bl\u00f6derweise an <strong>zwei Stellen TLS einstellen bzw. aktivieren<\/strong>. Einmal in der Datei <strong>modules.conf.<\/strong> Hier wird einfach nur die Funktionalit\u00e4t f\u00fcr TLS eingeschaltet. Dazu werden die folgenden Zeilen auskommentiert (&#8216;#&#8217; am Zeilenanfang entfernen)<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\"># Install proftpd-mod-crypto to use this module for TLS\/SSL support.\r\nLoadModule mod_tls.c\r\n# Even these modules depend on the previous one\r\nLoadModule mod_tls_fscache.c\r\nLoadModule mod_tls_shmcache.c\r\n<\/pre>\n<p>Au\u00dferdem in der <strong>proftpd.conf<\/strong>: Hier muss die Datei <strong>tls.conf<\/strong> mit geladen werden. Das macht die Zeile <strong>Include<\/strong> <strong>\/etc\/proftpd\/tls.conf<\/strong> .<br \/>\nDie zweite Konfigurationsdatei &#8220;tls.conf&#8221; muss man dann noch detailliert an die eigenen Bed\u00fcrfnisse anpassen:<\/p>\n<p>Dabei schalten wir die TLSEngine erst einmal pauschal an und die Protokollierung gleich mit.<br \/>\n<strong>Wichtig<\/strong> ist danach die Zeile mit &#8220;<strong>TLSProtocol<\/strong>&#8220;. Hier wird festgelegt, welche der bekannten TLS-Protokolle \u00fcberhaupt verwendet werden d\u00fcrfen.<br \/>\nDa TLS 1.0 und 1.1 nicht mehr als sicher angesehen werden, lassen wir diese weg. In der u.a. Konfig erlauben wir also nur TLS 1.2 und 1.3. Die Zeilen der Zertifikate werden auf jedem Server anders hei\u00dfen. Das Prinzip der Benennung der Zertifikat-Dateien ist in proftpd \u00e4hnlich wie in Apache2.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">nano \/etc\/proftpd\/tls.conf<\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">&lt;IfModule mod_tls.c&gt;\r\nTLSEngine on\r\nTLSLog \/var\/log\/proftpd\/tls.log\r\nTLSProtocol TLSv1.2 TSLv1.3 SSLv3\r\nTLSRSACertificateFile \/root\/.acme.sh\/ftpserver.biteno.com\/ftpserver.biteno.com.cer\r\nTLSRSACertificateKeyFile \/root\/.acme.sh\/ftpserver.biteno.com\/ftpserver.biteno.com.key\r\nTLSCACertificateFile \/root\/.acme.sh\/ftpserver.biteno.com\/ca.cer\r\nTLSVerifyClient off\r\nTLSRequired off\r\n&lt;\/IfModule&gt;<\/pre>\n<p>Wie schon weiter oben ersetzen Sie ihren Hostnamen an den Stellen, an denen hier &#8220;ftpserver.biteno.com&#8221; steht.<\/p>\n<p>In der Konfiguration von TLS lassen wir den Schalter <strong>TLSRequired<\/strong> absichtlich auf &#8220;aus&#8221; (engl. off) stehen. Sonst k\u00f6nnen sich alte FTP-Clients die kein TLS beherrschen nicht mehr anmelden.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_5_Konfigiuration_pruefen\"><\/span>Schritt 5: Konfigiuration pr\u00fcfen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Mit dem Befehl<br \/>\n\/usr\/sbin\/proftpd &#8211;configtest -c \/etc\/proftpd\/proftpd.conf<br \/>\nkann man zumindest schon einmal die gr\u00f6bsten Fehler in der Konfiguration vermeiden.<\/p>\n<p>Eine Ausgabe sieht dann z.B. so aus:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">root@ftpserver:\/etc\/proftpd# \/usr\/sbin\/proftpd --configtest -c \/etc\/proftpd\/proftpd.conf\r\nChecking syntax of configuration file\r\n2021-12-30 17:12:40,991 ftpserver proftpd[748]: fatal: unknown configuration directive 'TSLProtocol' on line 15 of '\/etc\/proftpd\/tls.conf'\r\n2021-12-30 17:12:40,992 ftpserver proftpd[748]: fatal: Did you mean:\r\nTLSProtocol\r\nTLSNextProtocol\r\n2021-12-30 17:12:40,992 ftpserver proftpd[748]: warning: unable to include '\/etc\/proftpd\/tls.conf': Die Operation ist nicht erlaubt<\/pre>\n<p>Auch wenn die Ausgabe gar nicht so schlecht aussieht: Hier ist mit &#8216;T<strong>SL<\/strong>Protocol&#8217; (statt T<strong>LS<\/strong>Protocol) ein Vertipper drin.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_6_Testen_von_einem_anderen_Host\"><\/span>Schritt 6: Testen von einem anderen Host<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Mit nmap pr\u00fcfen wir auf welchem Port unser neu installierter Daemon &#8220;lauscht&#8221;. F\u00fcr einen echten Test sollten wir das von einem anderen Server aus machen. Das geht mit : nmap &lt;hostname&gt;<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">Starting Nmap 7.80 ( https:\/\/nmap.org ) at 2021-12-30 17:15 CET\r\nNmap scan report for ftpserver.biteno.com (185.136.xx.yy)\r\nHost is up (0.000061s latency).\r\nNot shown: 997 closed ports\r\nPORT STATE SERVICE\r\n21\/tcp open ftp\r\n22\/tcp open ssh<\/pre>\n<p>Unser ftp-Server h\u00f6rt also schon mal auf Port 21. Das ist gut.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_7_SSL_Zertifikat_pruefen\"><\/span>Schritt 7: SSL Zertifikat pr\u00fcfen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Mit dem Befehl:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">openssl s_client -connect ftpserver.biteno.com:21 -starttls ftp<\/pre>\n<p>k\u00f6nnen wir auf Bash-Ebene pr\u00fcfen ob die Verbindung zum Server auf Port 21 \u00fcber tls abgesichert werden kann. Das erledigt bei openssl die Option &#8220;-starttls&#8221;<\/p>\n<p>Das Ergebnis sieht dann z.B. so aus:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\">CONNECTED(00000003)\r\ndepth=2 C = US, ST = New Jersey, L = Jersey City, O = The USERTRUST Network, CN = USERTrust RSA Certification Authority\r\nverify return:1\r\ndepth=1 C = AT, O = ZeroSSL, CN = ZeroSSL RSA Domain Secure Site CA\r\nverify return:1\r\ndepth=0 CN = ftpserver.biteno.com\r\nverify return:1\r\n---\r\nCertificate chain\r\n0 s:CN = ftpserver.biteno.com\r\ni:C = AT, O = ZeroSSL, CN = ZeroSSL RSA Domain Secure Site CA\r\n1 s:C = AT, O = ZeroSSL, CN = ZeroSSL RSA Domain Secure Site CA\r\ni:C = US, ST = New Jersey, L = Jersey City, O = The USERTRUST Network, CN = USERTrust RSA Certification Authority\r\n2 s:C = US, ST = New Jersey, L = Jersey City, O = The USERTRUST Network, CN = USERTrust RSA Certification Authority\r\ni:C = GB, ST = Greater Manchester, L = Salford, O = Comodo CA Limited, CN = AAA Certificate Services\r\n---\r\nServer certificate\r\n-----BEGIN CERTIFICATE-----\r\nMIIGcTCCBFmgAwIBAgIRAOVLbY3FGadSdU+JcCe3CaswDQYJKoZIhvcNAQEMBQAw\r\nSzELMAkGA1UEBhMCQVQxEDAOBgNVBAoTB1plcm9TU0wxKjAoBgNVBAMTIVplcm9T\r\nU0wgUlNBIERvbWFpbiBTZWN1cmUgU2l0ZSBDQTAeFw0yMTEyMjgwMDAwMDBaFw0y\r\nMjAzMjgyMzU5NTlaMBwxGjAYBgNVBAMTEXJhZGl1cy5iaXRlbm8uY29tMIIBIjAN\r\nBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2gXixjCjXKx7H2eCczffjNCObfkj\r\n94MoYcwPOoE4Y3Get\/d9Q6yyv6GU1\/BR4ahevAifLU0aBD43j5qzAcNh7Qp8W6ED\r\nl+ccrGDuoEs90ZzX8+HPxaogBfeYVJh8XsHTyeKaNrnOBmgoaqQlCT+qmEw75AgU\r\nEwu6TnEpC1+nv4+d7PyTo8YJvo0xfj+5qoI+pIwcQ1zT3USdhoTZCcOe72Qm9Z9y\r\nHBXEu20XEAlcvjfqK7K1\/EGn0DdB6cQNZmSts+7D5KJSwkmJx516V54mRX+R2UhK\r\nGP1uKknhqjotZMkVGdMu\/CRzi0wdC5LZjlFfWponAyFnkXwm7v1FgKIh+wIDAQAB\r\no4ICfTCCAnkwHwYDVR0jBBgwFoAUyNl4aKLZGWjVPXLeXwo+3LWGhqYwHQYDVR0O\r\nBBYEFDKJ0dsxTDbVD4\/3Eon76lG+XPhhMA4GA1UdDwEB\/wQEAwIFoDAMBgNVHRMB\r\nAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBJBgNVHSAEQjBA\r\nMDQGCysGAQQBsjEBAgJOMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGlnby5j\r\n...\r\ncmFkaXVzLmJpdGVuby5jb20wDQYJKoZIhvcNAQEMBQADggIBABaebz+K4MywK1NH\r\nVVTzyjh+LwYmDJ9rtw9cXdRswwaDxSv3VGhGiWThg00msBXZVsULxB9CO39HeUdt\r\nGaLGOeb\/iKRKJQZmndJx\/LkeYfXbDdgRNJPss7obwGSJqJSlv2cJbaDjxHPbxTaB\r\nPqhooEItSu5HaJbcOkilKLx4dulBWyKo8ubZdz4blGmItosqMxDTG+550m3E04PG\r\nstUAQUCL6S9G0xIolm\/2HUx6pq486DwTiH0Mdkl+gElLp2efljazDNYQ2OZZnl0j\r\nVyh7YULsvbDUBCe1sgZxBIYUcj\/PBZiGgyb4GVNJGAc0rvwGY9a25BEHSDN5QEom\r\nrjbuFgzNfMAH\/4uGwZzp+3CdHo6U7TC+BNGC9AYYRRa6IHGPwdjhFlFGqAU6ovnp\r\npQxrkxJwgLIMonkMrRKenOTSKZcVB4BSUvlYrY0t248kOz9wq7s2KRZ1czBCe3pS\r\npY2LjwWYlVmdaFWj0wOlo4Uvc1Ry6iPaFLviwz\/5XQ\/XGfl639S+ZzMNYRm0h8Y4\r\nCeSfLa07uQDkdikBSGQ3KCESPjM\/kwkaRUp1rhS\/DHm9RPzy7TH5GkMV0iCpbMku\r\n\/kx2hJvXQmTGCkWgAFNVFZygWR4RFOB1uJ2WucjLUjkCuY8uWf+CU+LILMMJb\/k\/\r\ngOMDamJ5mZwey5PjCydABF5o8XNJ\r\n-----END CERTIFICATE-----\r\nsubject=CN = ftpserver.biteno.com\r\n\r\nissuer=C = AT, O = ZeroSSL, CN = ZeroSSL RSA Domain Secure Site CA\r\n\r\n---\r\nNo client certificate CA names sent\r\nPeer signing digest: SHA256\r\nPeer signature type: RSA-PSS\r\nServer Temp Key: X25519, 253 bits\r\n---\r\nSSL handshake has read 5479 bytes and written 399 bytes\r\nVerification: OK\r\n---\r\nNew, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384\r\nServer public key is 2048 bit\r\nSecure Renegotiation IS NOT supported\r\nCompression: NONE\r\nExpansion: NONE\r\nNo ALPN negotiated\r\nEarly data was not sent\r\nVerify return code: 0 (ok)\r\n---\r\n220 ProFTPD Server (ftpserver.biteno.com) [::ffff:185.136.112.178]\r\n---\r\nPost-Handshake New Session Ticket arrived:\r\nSSL-Session:\r\nProtocol : TLSv1.3\r\nCipher : TLS_AES_256_GCM_SHA384\r\nSession-ID: AA23904D53C1B402274F02E483C0281772EBB2AD370EF062080227A5EE43CCDB\r\nSession-ID-ctx:\r\nResumption PSK: 8031D6DCB3D33FA83EF88844CCAD2752151D9064735BF5F7869C1D50452597716232E4443EADAE7770B6FA433525DDCC\r\nPSK identity: None\r\nPSK identity hint: None\r\nSRP username: None\r\nTLS session ticket lifetime hint: 15840 (seconds)\r\nTLS session ticket:\r\n0000 - eb c4 68 df 6c af 15 28-ca 93 08 fc ef 13 bf 0f ..h.l..(........\r\n0010 - 0e 36 f7 8c 54 98 4d 01-e6 a1 87 a9 3f 00 da 5a .6..T.M.....?..Z\r\n0020 - b8 3f 95 f0 d4 40 71 ed-e6 05 8a bb b5 14 f5 bc .?...@q.........\r\n0030 - 5c 77 ac 07 a8 a6 e2 4e-8d 37 cd 30 d3 fb 02 6c \\w.....N.7.0...l\r\n0040 - a0 16 e5 b7 ee f5 df 07-e4 72 f6 b4 a3 8e 5d 67 .........r....]g\r\n0050 - ff 6f 98 1c 2c 6f d5 46-23 11 de 48 0d 79 19 61 .o..,o.F#..H.y.a\r\n0060 - e8 f3 93 5b a3 5e ef 9d-c2 57 27 99 94 e6 71 ef ...[.^...W'...q.\r\n0070 - 4d 6e ea 92 a5 2f 50 32-95 35 64 d8 4c b8 ea dc Mn...\/P2.5d.L...\r\n0080 - 91 b1 10 b9 05 1a 00 85-e6 b6 78 2e 11 a1 a8 d0 ..........x.....\r\n0090 - c6 ac bf 89 c8 92 ae 24-1b d8 09 2f 49 24 ce 4d .......$...\/I$.M\r\n00a0 - d0 78 b0 b3 a9 da c2 24-b9 72 9d f3 0e 7d e7 bf .x.....$.r...}..\r\n00b0 - a4 96 77 02 40 17 06 1e-78 63 d3 40 29 16 92 e8 ..w.@...xc.@)...\r\n00c0 - 83 b6 b1 5d ae de bb bb-b7 1c bf 20 af ba fe 26 ...]....... ...&amp;\r\n00d0 - d4 2f 56 fb e2 ff d2 50-5a 84 70 31 43 49 f3 71 .\/V....PZ.p1CI.q\r\n00e0 - fe d5 9f ce ca 2f 6d 25-fe fb bb 13 3f c5 07 2b .....\/m%....?..+\r\n00f0 - 36 a2 a4 04 9e 19 c9 84-9a 4f 40 be d0 82 36 e2 6........O@...6.\r\n\r\nStart Time: 1640881096\r\nTimeout : 7200 (sec)\r\nVerify return code: 0 (ok)\r\nExtended master secret: no\r\nMax Early Data: 0\r\n---\r\nread R BLOCK\r\n---\r\nPost-Handshake New Session Ticket arrived:\r\nSSL-Session:\r\nProtocol : TLSv1.3\r\nCipher : TLS_AES_256_GCM_SHA384\r\nSession-ID: 81C682559AF19172E761A9F0EBD133DEBEC8F17F610A97635403EC56E9F278A4\r\nSession-ID-ctx:\r\nResumption PSK: DB4D181A9FFA9DC1ED3FBD7A555C19EE4EB970E4D5BFDA8AA511DC416E31FCD198BA756B723C4C6DD523DD6E606C64E5\r\nPSK identity: None\r\nPSK identity hint: None\r\nSRP username: None\r\nTLS session ticket lifetime hint: 15840 (seconds)\r\nTLS session ticket:\r\n0000 - eb c4 68 df 6c af 15 28-ca 93 08 fc ef 13 bf 0f ..h.l..(........\r\n0010 - 53 29 7a 0b a3 20 be 38-b2 e5 8f 94 1f d6 30 c0 S)z.. .8......0.\r\n0020 - 93 56 a2 35 3a bc 3a de-2f 6e e2 18 94 9e 80 36 .V.5:.:.\/n.....6\r\n0030 - 09 26 0c 3b d2 20 92 cf-51 22 61 96 21 63 c6 c1 .&amp;.;. ..Q\"a.!c..\r\n0040 - 54 22 63 b9 30 04 82 e4-66 1f 1f 67 78 f5 ec 2b T\"c.0...f..gx..+\r\n0050 - b7 53 0f 25 f6 8a d2 93-a8 87 62 0a dd 35 c4 84 .S.%......b..5..\r\n0060 - ab ec f5 2d 93 5c fd 0e-3f 84 12 b0 26 80 86 7f ...-.\\..?...&amp;...\r\n0070 - 4e 36 0e dd 75 1a 0b df-3d ed 22 e3 d7 a1 b2 7d N6..u...=.\"....}\r\n0080 - 2a 50 46 af 37 4a 5a dc-fe 29 64 6e 0d 0a 66 29 *PF.7JZ..)dn..f)\r\n0090 - 62 91 6f 8a 62 16 5d 05-62 36 5c 88 9c 1e b7 cb b.o.b.].b6\\.....\r\n00a0 - 35 70 91 c8 80 82 1e fb-34 60 6a a7 50 ce d9 31 5p......4`j.P..1\r\n00b0 - 23 69 e3 04 dc 95 d4 dd-5f 30 27 b3 72 7c eb b2 #i......_0'.r|..\r\n00c0 - 50 75 68 1b 7e 4d b0 e3-0b 7d 63 d5 f9 7d 44 a4 Puh.~M...}c..}D.\r\n00d0 - 07 24 e6 88 4a c1 4d 62-ff a2 ba bd f3 af fa c1 .$..J.Mb........\r\n00e0 - f2 d0 ce 46 6b 3c e3 5f-02 1d 52 a4 91 f6 3e 2b ...Fk&lt;._..R...&gt;+\r\n00f0 - 01 97 0b ef 8f 37 fe 3e-44 c8 a7 c3 73 b4 73 14 .....7.&gt;D...s.s.\r\n\r\nStart Time: 1640881096\r\nTimeout : 7200 (sec)\r\nVerify return code: 0 (ok)\r\nExtended master secret: no\r\nMax Early Data: 0\r\n---\r\nread R BLOCK<\/pre>\n<p>Das sieht insgesamt gut aus. &#8211; Daher kommen wir nun zum letzten Schritt:<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Schritt_8_Anmelden_mit_einem_FTP_Client\"><\/span>Schritt 8: Anmelden mit einem FTP Client<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Ich bin kein gro\u00dfer Freund von FileZilla seit es dort keine werbefreie Version mehr gibt. F\u00fcr einen Test nehme ich lieber <a href=\"https:\/\/winscp.net\/eng\/download.php\" target=\"_blank\" rel=\"noopener\">winscp<\/a>.<br \/>\nDort erstellen wir eine neue Sitzung. Hostname, Benutzername und Passwort sind selbsterkl\u00e4rend. Das \u00dcbertragungsprotokoll bleibt auf &#8220;ftp&#8221; eingestellt, ebenso die Portnummer &#8220;21&#8221;.<\/p>\n<figure id=\"attachment_1159\" aria-describedby=\"caption-attachment-1159\" style=\"width: 434px\" class=\"wp-caption alignright\"><a href=\"https:\/\/www.howto-do.it\/de\/wp-content\/uploads\/winscp-einstellung-tls.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1159\" src=\"https:\/\/www.howto-do.it\/de\/wp-content\/uploads\/winscp-einstellung-tls.png\" alt=\"WinSCP Einstellungen f\u00fcr TLS\" width=\"434\" height=\"151\" srcset=\"https:\/\/www.howto-do.it\/de\/wp-content\/uploads\/winscp-einstellung-tls.png 434w, https:\/\/www.howto-do.it\/de\/wp-content\/uploads\/winscp-einstellung-tls-300x104.png 300w, https:\/\/www.howto-do.it\/de\/wp-content\/uploads\/winscp-einstellung-tls-150x52.png 150w\" sizes=\"auto, (max-width: 434px) 100vw, 434px\" \/><\/a><figcaption id=\"caption-attachment-1159\" class=\"wp-caption-text\">WinSCP Einstellungen f\u00fcr TLS<\/figcaption><\/figure>\n<p>Um <strong>TLS zu aktivieren<\/strong> muss in der Box &#8220;Verschl\u00fcsselung&#8221; der Eintrag &#8220;TLS\/SSL &#8211; explizite Verschl\u00fcsselung&#8221; gew\u00e4hlt werden.<br \/>\nDie erste Anmeldevorgang dauert ein wenig l\u00e4nger und man muss einmalig nach der ersten Anmeldung das Zertifikat best\u00e4tigen.<\/p>\n<p>Danach kann man als Anwender dann guten Gewissens auf den entfernten ftp-Server zugreifen ohne sich Gedanken \u00fcber fehlende Sicherheit bzw. Verschl\u00fcsselung im Internet zu machen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In diesem Howto installieren wir proftp und erstellen eine Konfiguration, mit der die eher unsichere Kommunikation via ftp auf Port 21 mit TLS (Transport Layer Security) verschl\u00fcsselt werden kann. Unser Test-System ist ein frisch installiertes Debian 11. Los geht&#8217;s: Schritt 1: Installation von proftpd apt update apt -y install proftpd Schritt 2: Daemon starten Der&#8230;<\/p>\n","protected":false},"author":3,"featured_media":1159,"template":"","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"default","_kad_post_title":"default","_kad_post_layout":"default","_kad_post_sidebar_id":"","_kad_post_content_style":"default","_kad_post_vertical_padding":"default","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[45],"tags":[80,79],"class_list":["post-1155","howto","type-howto","status-publish","has-post-thumbnail","hentry","category-linux","tag-proftpd","tag-tls"],"_links":{"self":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/howto\/1155","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/howto"}],"about":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/types\/howto"}],"author":[{"embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/users\/3"}],"version-history":[{"count":0,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/howto\/1155\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/media\/1159"}],"wp:attachment":[{"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/media?parent=1155"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/categories?post=1155"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.howto-do.it\/de\/wp-json\/wp\/v2\/tags?post=1155"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}