LINUX.ORG.RU
ФорумAdmin

vsftpd и ssl


0

0

Всем доброго времени суток!

Проблема - хочу передачу аккаунта по ftp в шифрованном виде.

В vsftpd.conf указал:

ssl_enable=YES

ssl_tlsv1=YES

ssl_ciphers=DES-CBC3-SHA-RSA

force_local_logins_ssl=YES

#force_local_data_ssl=YES

rsa_cert_file=/etc/ssl/vsftpd/server.pem

server.pem содержит rsa private key и сертификат. Все это в base64. Openssl естественно присутствует.

При подключении пишет: 530 Non-anonymous sessions must use encryption. QUIT

Анонимного доступа нет вообще. Если строчки, перечисленные выше закомментировать, то все работает...

Люди, может кото-то это делал?? Поделитесь опытом? В Инете искал, натыкался только на интерпритацию man vsftpd.conf

Это был результат с клиентов totalcmd, explorer, firefox

Совсем другой с линуксового клиента "ftp":

(После ввода логина)

234 Proceed with negotiation.

[SSL Cipher AES256-SHA]

331 Please specify the password

(Ввожу пароль, принимает, пускает в систему)

НО!!!! Нигде нет надписи типа "SSL connection established". И почему она не ругается на самовыданный сертификат (он НЕ лежит в репозитории доверенных сертификатов)?

По идее, сначало должно устанавливаться шифрованное соединение, а уж потом запрос логина/пароля

Immunity
() автор топика

Вот debug в "ftp":

---> AUTH SSL

234 Proceed with negotiation.

[SSL Cipher AES256-SHA]

---> USER login

331 Please specify the password.

Password:

---> PASS XXXXX

230 Login successful.

---> SYST

215 UNIX Type: L8

Remote system type is UNIX.

Using binary mode to transfer files

По rfc после AUTH должно идти ADAT в случае шифрования не только аккаунта, но и самих файлов. Устанавливаю опцию в vsftpd.conf force_local_data_ssl=YES , ADAT все равно нет.

Я пока не могу локализовать проблему. Либо клиент, либо сервер сбоят

Immunity
() автор топика
Ответ на: комментарий от Immunity

#force_local_data_ssl=YES не пробовали раскоментировать? Попробуйте такой клиент secureftp2.5_setup.bin (это установочный файл) Он на java сделан, показывает хорошо процесс подключения... С FTPS работал у меня хорошо. Свободный для некоммерческого использования

anonymous
()

У меня так работает на версии vsftpd-2.0.3, скомпилированной с openssl. Шифруется В конфиге прописано:

#SSL option
ssl_enable=YES
# Path to RSA cert file, default is /usr/share/ssl/certs/vsftpd.pem
rsa_cert_file=/etc/vsftpd/vsftpd.pem

Единственная проблема в отсутствии нормальных ftp клиентов. Гладко с самоподписанными сертификатами работает только FileZilla, но работает отлично, я ее под wine запускаю, клиенты именно ее используют. Kasablanca тоже коннектится, но не позволяет простмотреть сертификат и русский в вопросах выводит.

kenneth ★★★
()
Ответ на: комментарий от kenneth

У меня 2.0.3-r2, естественно скомпиленный с ssl

FileZilla выдает такой же ответ как и все клиенты после запроса логина:

530 Non-anonymous sessions must use encryption.

Immunity
() автор топика
Ответ на: комментарий от Immunity

В FileZilla нужно выбрать Тип сервера = "FTP over SSL (explicit encryption)". У меня работает шифрование данных и пароля, поэтому force_local_logins_ssl=YES отсутствует.

kenneth ★★★
()
Ответ на: комментарий от kenneth

Да. Нашел чуть позже :)

Только вот незадача, он показывает, типа сертификат, принимать или нет, login successeful, а потом пишет не могу сделать ls

Immunity
() автор топика
Ответ на: комментарий от kenneth

ВСЕ!!! Разобрался!! Вот конфиги на будущее:

ssl_enable=YES

#ssl_sslv2=YES

#ssl_sslv3=YES

ssl_tlsv1=YES

ssl_ciphers=DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SH A:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DES-CBC3-MD5:DHE-RSA-AES128-SHA:DHE-DSS-AES1 28-SHA:AES128-SHA:IDEA-CBC-SHA:IDEA-CBC-MD5:RC2-CBC-MD5:DHE-DSS-RC4-SHA:RC4-SHA: RC4-MD5:RC4-MD5:RC4-64-MD5:EXP1024-DHE-DSS-DES-CBC-SHA:EXP1024-DES-CBC-SHA:EXP10 24-RC2-CBC-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:DES-CBC-MD5:E XP1024-DHE-DSS-RC4-SHA:EXP1024-RC4-SHA:EXP1024-RC4-MD5:EXP-EDH-RSA-DES-CBC-SHA:E XP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC2-CBC-MD5:EXP-RC4-M D5:EXP-RC4-MD5

force_local_logins_ssl=YES

force_local_data_ssl=YES

rsa_cert_file=/etc/ssl/vsftpd/server.pem

ssl_ciphers список взят с $openssl ciphers

Огромное спасибо всем за участие и помощь!

Immunity
() автор топика
Ответ на: комментарий от Immunity

ИМНО глупо так использовать ciphers. Данная опция предназначена для ограничения методов шифрования. Вы же прописали все доступные на сегодняшний день методы. Лучше уж вообще опустить эту опцию. Тогда в будущем не будет коллизий с openssl.
С шифрованием трафика, а оно мне действительно нужно, у меня только одна проблема. openssl сильно грузит процессор, так что он становиться узким местом. С ssh такого не наблюдается.

kenneth ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.