I am trying to install RCurl package that has sftp support. I install curl with sftp. On console, when I do curl -V, I do get the list of protocols supported:
curl 7.39.0 (x86_64-unknown-linux-gnu) libcurl/7.39.0 OpenSSL/0.9.8j zlib/1.2.7 libssh2/1.4.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: Largefile NTLM NTLM_WB SSL libz
However, when I try to install RCurl version RCurl_1.95, I dont see sftp as one of the protocols:
curlVersion()$protocols
[1] "tftp" "ftp" "telnet" "dict" "ldap" "ldaps" "http" "file"
[9] "https" "ftps"
Is there a way to force Rcurl include sftp when manually installing the RCurl from the source?
I do not thinks so. While curl/libcurl might provide a huge amount of protocols -- as far as I understand the matter -- RCurl does not port all theoretically available protocols to be used in R.
You might either do that yourself or maybe kindly ask Duncan Temple Lang to add further protocols. A workaround might be to access curl from within R via shell() like this:
shell("curl example.com", intern = TRUE)
Related
Since I have to use the sftp protocol to retrieve some documents from a remote server I reinstalled the curl library with ssl.
The curl --version now correctly returns
curl 7.72.0 (x86_64-pc-linux-gnu) libcurl / 7.72.0 OpenSSL / 1.1.1 zlib / 1.2.11 brotli / 1.0.4 libidn2 / 2.0.4 libpsl / 0.19.1 (+ libidn2 / 2.0.4 ) libssh / 0.7.0 / openssl / zlib nghttp2 / 1.30.0 librtmp / 2.3
Release-Date: 2020-08-19
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS brotli GSS-API HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM NTLM_WB PSL SPNEGO SSL TLS-SRP UnixSockets
and the sftp protocol is now enabled.
In R I tried to reinstall the RCurl package from source with install.package('RCurl', type = 'source') but the libcurlVersion() command keeps returning
[1] "7.58.0"
attr (, "ssl_version")
[1] "OpenSSL / 1.1.1"
attr (, "libssh_version")
[1] ""
attr (, "protocols")
[1] "dict" "file" "ftp" "ftps" "gopher" "http" "https" "imap"
[9] "imaps" "ldap" "ldaps" "pop3" "pop3s" "rtmp" "rtsp" "smb"
[17] "smbs" "smtp" "smtps" "telnet" "tftp"
where, as you can see, the library version is different from the one installed on the machine and the sftp protocol is not enabled.
How can I force R to use the correct curl version?
You need to re-install Older curl to solve the issue. You can specify the version of curl what you want, the guide build curl by source code
exampe:
wget https://curl.haxx.se/download/curl-7.58.0.zip
The guide to re-install curl by zip
https://yannmjl.medium.com/how-to-manually-update-curl-on-ubuntu-server-899476062ad6
Am trying to use SQLMap with https but when i try
"C:\Python27\sqlmap>sqlmap.py -u https://localhost:8774/App/console/index.jsp --force-ssl" it returns
"Can't establish SSL Connection".
So it there any way that i can pass SSL certificate to SQLMap?
Environment Details:
OS: Windows 10
Python: 2.7
SQLMap: 1.4.2.42
Refer to attached image for more details.
remove https:// from 'u' paremeter, just put:
-u localhost:8774/App/console/index.jsp
A simple solution for that is to set up a proxy listener like Burp Suite, browse over to the site with the bad SSL certificate and Trust it.
After that, you can include the following option in your SQLMap command:
--proxy="http://PROXY-IP:PROXY-PORT"
where proxy ip is generally 127.0.0.1 and proxy port 8080.
I'm tring to install R_3.3.1 in CentOS.
So i download tar file and build it.
During build this file i got some erros because of the defendency.
I solve this errors by reference.
https://oguya.ch/posts/2017-03-18-building-R-on-rhel-6/ here.
But At the libcurl step.I can't solve it.
checking if libcurl is version 7 and >= 7.28.0... yes
checking if libcurl supports https... no
configure: error: libcurl >= 7.28.0 library and headers are required with support for https
and My curl version is 7.47.1 so i think version is not matter
[nubiz#localhost R-3.3.1]$ curl --version
curl 7.47.1 (x86_64-pc-linux-gnu) libcurl/7.47.1 zlib/1.2.8
Protocols: dict file ftp gopher http imap pop3 rtsp smtp telnet tftp
but the error say this libcurl can't use http.
So is there any version can use http or something way to this error?
I check my protocols what can i use in curl using this command 'curl-config --protocols'
And i can using only HTTP like this
DICT
FILE
FTP
GOPHER
HTTP
IMAP
POP3
RTSP
SMTP
TELNET
TFTP
it can be enable to HTTPS?
I have an FTPS server which I can already work with using clients such as Filezilla and Syncback. I also have admin access to this FTPS server and I know that it is working properly with TLS because I see "TLS" in the Filezilla connection log.
I cannot, however, access this same FTPS server from R using the RCurl library (R version=3.4.3, RCurl version = 1.95-4.9, windows 7 PC). I expect it has something to do with my invocation of getURL(). Here's what happens when I try to list the files in a directory on the FTPS server:
library(RCurl)
url <- "FTPS://<myIpaddress>/<path>/"
userpwd <- "myname:mypasswd"
filenames <- getURL(url, userpwd=userpwd, ftp.use.epsv = FALSE, dirlistonly = TRUE, .opts=curlOptions(verbose=TRUE))
It complains about connection refused on port 990 (presumably the default port for FTPS?). I happen to have the FTPS server setup to use port 21. Filezilla didn't require a port number so I had left it out here too. Explicitly specifying port 21, however, gives another problem...
url <- "FTPS://<myIpaddress>:21/<path>/"
This time the complaint is about "unknown protocol". Don't understand. I am using a FTPS server listening on port 21, I specify the same on the URL. What could be wrong?
Can anyone recommend some ways to troubleshoot this further?
For completeness here's the FTPS server configuration (it's a synology diskstation NAS)...
Add ftp.ssl = TRUE to the getURL options for SFTP.
This is the equivalent of --ftp-ssl in actual curl.
I'm trying to fetch the following URL via various libraries and command-line tools, but running into a SSL handshake error.
> curl https://www.joelosteen.com/Views/RSS/Feed?t=PodcastVideo&ct=CustomList&cst=Podcasts
curl: (35) error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error
I've seen here it may be fixed by reducing possible ciphers, but trying this less strict call with restricted ciphers doesn't fix it.
curl -vlkL "https://www.joelosteen.com/Views/RSS/Feed?t=PodcastVideo&ct=CustomList&cst=Podcasts" --ciphers DHE-RSA-AES256-SHA
Any ideas how I can fix this? It's a shared account, ie no root available.
The server supports only TLS version 1.2, i.e. no TLS 1.0 or even SSL 3.0. My guess is that the curl you use is simply too old to use TLS 1.2, but without further details about the version you use this guess can not be verified.
To determine the version of curl use curl --version. If you see it is compiled with OpenSSL than it should show at least version 1.0.1 of OpenSSL to have TLS 1.2 support.
curl -vlkL ... --ciphers DHE-RSA-AES256-SHA
This is not a cipher supported by the server. One of the ciphers supported is AES128-SHA but again, no chance if your curl does not support TLS 1.2.