Явный SSL\TSL для vsftpd (РЕШЕНО)

Автор magrega, 16 июня 2020, 11:10:23

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

magrega

Здравствуйте, дорогие специалисты! Очень прошу помощи как новичок. Пытаюсь сделать шифрованное соединение для своего фтп. Сделал сертификат, WinSCP пускает, но через несколько мгновений теряет соединение. Успеваю открыть файл один, пройти пару папок и пропадает соединение:

Превышено время ожидания (соединение потока передачи данных)
Не могу получить содержимое каталога


а иногда и не пускает, просто очень долго висит тут, пока не выходит время ожидания:



Когда отключаю ufw и захожу просто по фтп - всё работает как надо. Всё происходит локально. Запустил Debian 10 в VM box на вин10 и пытаюсь подключиться с вин10 на дебиан по winSCP.

вот файрвол

Status: active

To                         Action      From
--                         ------      ----
21/tcp                     ALLOW       Anywhere                 
22/tcp                     ALLOW       Anywhere                 
60000:65535/tcp            ALLOW       Anywhere                 
Samba                      ALLOW       Anywhere                 
OpenSSH                    ALLOW       Anywhere                 
20/tcp                     ALLOW       Anywhere                 
80/tcp                     ALLOW       Anywhere                 
443/tcp                    ALLOW       Anywhere                 
3306/tcp                   ALLOW       Anywhere                 
990/tcp                    ALLOW       Anywhere                 
989/tcp                    ALLOW       Anywhere                 
40000:50000/tcp            ALLOW       Anywhere                 
10000:30000/tcp            ALLOW       Anywhere                 
50000:60000/tcp            ALLOW       Anywhere                 
10000:11000/tcp            ALLOW       Anywhere                 
21/tcp (v6)                ALLOW       Anywhere (v6)             
22/tcp (v6)                ALLOW       Anywhere (v6)             
60000:65535/tcp (v6)       ALLOW       Anywhere (v6)             
Samba (v6)                 ALLOW       Anywhere (v6)             
OpenSSH (v6)               ALLOW       Anywhere (v6)             
20/tcp (v6)                ALLOW       Anywhere (v6)             
80/tcp (v6)                ALLOW       Anywhere (v6)             
443/tcp (v6)               ALLOW       Anywhere (v6)             
3306/tcp (v6)              ALLOW       Anywhere (v6)             
990/tcp (v6)               ALLOW       Anywhere (v6)             
989/tcp (v6)               ALLOW       Anywhere (v6)


а вот конфиг vsftpd

>rsa_cert_file=/etc/ssl/certs/vsftpd.pem
>rsa_private_key_file=/etc/ssl/private/vsftpd.key
>ssl_enable=YES
>listen_port=990
>allow_anon_ssl=NO
>force_local_data_ssl=YES
>force_local_logins_ssl=YES
>ssl_tlsv1=YES
>ssl_sslv2=NO
>ssl_sslv3=NO
>require_ssl_reuse=NO
>ssl_ciphers=HIGH
>force_dot_files=YES
>user_config_dir=/etc/vsftpd_user_conf

Kato

Зачем в локальной сети шифрование? ???
Сертификат то с доменом, вот и с него нужно заходить

endru

Смотри в логах причины разрыва.

magrega

Kato, Просто учусь это делать, в будущем понадобится, потому тестирую.
Да, я тоже подозревал, что в этом может быть дело, но из-за недостатка знаний не был уверен. Мне нужно сертификат выписать конкретно на свой домен, могу ли я выписать его чисто на свой локальный айпи, чтобы проверить?

endru, да, нашел в логах кое-что интересное, но не знаю как трактовать:
Вот лог с ufw:

Jun 16 13:14:32 debiantryout kernel: [ 9676.942485] [UFW BLOCK] IN=enp0s3 OUT= MAC=08:00:27:32:d9:ee:8c:89:a5:80:4e:7f:08:00 SRC=192.168.1.65 DST=192.168.1.72 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=30083 DF PROTO=TCP SPT=57034 DPT=8636 WINDOW=65320 RES=0x00 SYN URGP=0

Jun 16 13:14:33 debiantryout kernel: [ 9677.944099] [UFW BLOCK] IN=enp0s3 OUT= MAC=08:00:27:32:d9:ee:8c:89:a5:80:4e:7f:08:00 SRC=192.168.1.65 DST=192.168.1.72 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=30085 DF PROTO=TCP SPT=57034 DPT=8636 WINDOW=65320 RES=0x00 SYN URGP=0

Jun 16 13:14:35 debiantryout kernel: [ 9679.944352] [UFW BLOCK] IN=enp0s3 OUT= MAC=08:00:27:32:d9:ee:8c:89:a5:80:4e:7f:08:00 SRC=192.168.1.65 DST=192.168.1.72 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=30086 DF PROTO=TCP SPT=57034 DPT=8636 WINDOW=65320 RES=0x00 SYN URGP=0

Jun 16 13:14:39 debiantryout kernel: [ 9683.944494] [UFW BLOCK] IN=enp0s3 OUT= MAC=08:00:27:32:d9:ee:8c:89:a5:80:4e:7f:08:00 SRC=192.168.1.65 DST=192.168.1.72 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=30087 DF PROTO=TCP SPT=57034 DPT=8636 WINDOW=65320 RES=0x00 SYN URGP=0


А вот с vsftpd:
Tue Jun 16 13:18:08 2020 [pid 2463] [alex] DEBUG: Client "192.168.1.65", "SSL version: TLSv1.2, SSL cipher: ECDHE-RSA-AES256-GCM-SHA384, reused, no cert"

Tue Jun 16 13:18:08 2020 [pid 2463] [alex] DEBUG: Client "192.168.1.65", "SSL shutdown state is: NONE"

Tue Jun 16 13:18:08 2020 [pid 2463] [alex] DEBUG: Client "192.168.1.65", "SSL shutdown state is: SSL_SENT_SHUTDOWN"

Tue Jun 16 13:18:08 2020 [pid 2463] [alex] DEBUG: Client "192.168.1.65", "SSL shutdown state is: 3"

Tue Jun 16 13:18:09 2020 [pid 2463] [alex] DEBUG: Client "192.168.1.65", "Control connection terminated without SSL shutdown."


yoric

Если не обязательно голый ftp, да ещё и сертификаты на него наворачивать, то есть в природе sftp, в составе ssh-сервера.

magrega

yoric, да, это известно и было опробовано, но я хочу набить экспы и разобрать этот момент, понять, как заставить работать.

magrega

#6
Kato, переписал новый сертификат, только в качестве имени указал айпи сервера, куда подрубаюсь по фтп. Всё тоже самое. Указывал так: "192.168.0.72"

UPD. Проблему решил. Указал в конфиге всфтпд диапазон рабочих портов (pasv_min\max_port) в соответствии с разрешенными портами в uwf.