Estou tentando me conectar a um site parceiro do servidor Ubuntu via FTP usando curl. O comando é dado pelo parceiro de negócios
curl -v -kG --ftp-method nocwd --ftp-ssl -cert "domainname.crt" --key "domainname.key" -u user:password ftp://ftp.partner.biz/
Recebo o seguinte erro.
* Could not resolve host: domainname.crt
* Closing connection 0
curl: (6) Could not resolve host: domainname.crt
* Trying <ipaddr>:21...
* TCP_NODELAY set
* Connected to ftp.partner.biz (<ipaddr>) port 21 (#1)
< 220 (<partnername>)
> AUTH SSL
< 504 unknown security mechanism
> AUTH TLS
< 234 AUTH TLS OK starting TLS negotiation
* successfully set certificate verify locations:
* CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Request CERT (13):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS alert, handshake failure (552):
* error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure
* Closing connection 1
Vejo as portas 22 e 443 escutando no meu servidor
tcp6 0 0 :::22 :::* LISTEN 1570/sshd: /usr/sbi
tcp6 0 0 :::443 :::* LISTEN 5802/apache2
O parceiro diz que não há registro de erros da sua parte. Tem algo a ver com tcp6 ou outra coisa. Não posso alterar o formato do comando porque o parceiro diz que funciona com outros clientes. Estou indefeso. Alguém pode me dizer o que há de errado?
Você cometeu um pequeno erro no comando. O texto:
devemos ser
curl
está reclamando que não consegue acessar "domainname.crt" porque não conhece o endereço IP desse nome de host, gerando a seguinte mensagem mencionada na sua pergunta.Presumivelmente, você não pretende se conectar a algum site chamado "domainname.crt"; provavelmente é o nome do seu arquivo de certificado armazenado em algum lugar da máquina cliente. Por favor, verifique seu
curl
comando. Em vez do seu comando original, deveria serAcho que você perdeu um hífen na
--cert
discussão.