LINUX.ORG.RU

curl+vsftpd

 ,


0

1

Здравствуйте использую vsftpd а в качестве клиента curl вот конфиг сервера vsftpd.conf

anonymous_enable=YES
no_anon_password=YES
write_enable=YES
listen=YES
local_enable=YES
local_umask=022
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
anon_root=/server/ftp
local_root=/server/ftp
anon_upload_enable=YES
anon_mkdir_write_enable=YES
max_clients=10000
pam_service_name=vsftpd
listen_address=10.4.13.65
listen_port=7070
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO
tcp_wrappers=YES
rsa_cert_file=/etc/cups/private/vsftpd.pem
rsa_private_key_file=/etc/cups/private/vsftpd.pem


ssl_enable=YES

allow_anon_ssl=YES

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
пытаюсь подключиться к серверу через curl командой
 curl --user "root:12345678" ftps://192.168.160.135 
но выдается ошибка
Curl Error: 35 - error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
что может быть?

Ответ на: комментарий от tiandrey

я подключаюсь с клиентской машины на сервер с адресом 192.168.160.135 там в конфиге все нормально

listen_address=10.4.13.65 listen_port=7070

проблема в том что если выполняю curl -insecure --user «root:12345678» ftps://192.168.160.135:7070

то команда проходит но это как без ssl curl --user «root:12345678» ftps://192.168.160.135:7070 не проходит

kold2015 ()
Ответ на: комментарий от snaf

команда

 curl  -v --user "root:12345678" ftps://192.168.160.135:7070/ 
вывод
* About to connect() to 192.168.160.135 port 7070
*   Trying 192.168.160.135... connected
* Connected to 192.168.160.135 (192.168.160.135) port 7070
* SSLv2, Client hello (1):
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
* Closing connection #0
curl: (35) error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol

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

Вот скажи, мил человек, как с тобой разговаривать, если ты даже прочитать сообщение не можешь?

Я тебе указал на то, что у тебя в конфиге сервера указан не тот IP, на который ты подключиться пытаешься. Если у тебя NAT или ещё что-то, так скажи об этом.

snaf тебе предложил проверить, поддерживает ли твоя сборка curl протокол sftp, а ты вместо этого подробный вывод включил. Разуй глазки, curl -V - это не то же самое, что curl -v.

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

по поводу ip я уже исправил.... я использую виртуальную машину те клиент у меня на виртуалке и сервер на виртуалке сервер с клиента пингуется клиент с сервера тоже в настройках двух виртуалок сеть стоит NAT....

вывод команды

[root@maks vsftpd]# curl -V

curl 7.15.5 (x86_64-vniins-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
Protocols: tftp ftp telnet dict ldap http file https ftps
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz

[root@maks vsftpd]#  

понимаете тут такое дело что когда я использую lftp я захожу на сервер и даже скачаиваю папки и файлы через TLS с помощью mirror.... но мне нужно именно curl

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

вообщем вроде дело сдвинулось... после выполнения данной команды

curl --ftp-ssl -v --user "root:12345678" ftp://192.168.160.135:7070/ 

вываливается следующее

* About to connect() to 192.168.160.135 port 7070
*   Trying 192.168.160.135... connected
* Connected to 192.168.160.135 (192.168.160.135) port 7070
< 220 (vsFTPd 2.0.5)
[quote] AUTH SSL[br][/quote]< 234 Proceed with negotiation.
* SSLv2, Client hello (1):
SSLv3, TLS handshake, Server hello (2):
SSLv3, TLS handshake, CERT (11):
SSLv3, TLS alert, Server hello (2):
SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
* Closing connection #0
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html
 
 curl performs SSL certificate verification by default, using a "bundle"
  of Certificate Authority (CA) public keys (CA certs). The default
   bundle is named curl-ca-bundle.crt; you can specify an alternate file
    using the --cacert option.
    If this HTTPS server uses a certificate signed by a CA represented in
     the bundle, the certificate verification probably failed due to a
      problem with the certificate (it might be expired, or the name might
       not match the domain name in the URL).
       If you'd like to turn off curl's verification of the certificate, use
        the -k (or --insecure) option.

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

я понял что проблемы с сертификатом.. что нужно сделать на стороне клиента.... на стороне сервера сертификат и ключ есть...

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

ну собственно curl -V | grep sftp ничего не выводит....

Значит, твой curl не поддерживает sftp, всё просто. Мой поддерживает:

curl -V | grep ftps
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smtp smtps telnet tftp

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

Тьфу ты, sftp это не ftps, sftp это совсем другое

упс. Прощу прощение что ввёл всех в заблуждение)

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

вообщем решил я проблему так

root@maks /]# curl  --ftp-ssl --cacert /etc/cups/ssl/vsftpd.pem ftp://192.168.160.135:7070/

-rwxr-xr-x    1 0        0             481 Dec 09  2014about.cpp
[root@maks /]# curl  --ftp-ssl --cacert /etc/cups/ssl/vsftpd.pem ftp://192.168.160.135:7070/about.cpp -o /jjj/about.cpp 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                   Dload  Upload   Total   Spent    Left  Speed
                                   100   481  100   481    0     0   8614      0 --:--:-- --:--:-- --:--:--     0

файл скачивается.... скажите а он точно передается с помощью шифрования да?

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