Всем привет, делаю брут на Си + curl, сделал балванку, подрубил потоки. Все отлично работает, но когда пришло время подрубать прокси для обхода прокси и других блокировок, пошли проблемы.
Во-первых, socks5 отказывается работать, либо работает (что редко бывает) очень медленно. Я подумал что дело socks5, медленные и херовые купил. Купил другие - проблема та же.
Ошибка (Разные бывают, одна из них):
Код:
Я думал сертификат не может найти, или еще чтото с сертификатом, сгенерировал свой (openssl) вставил, но проблема не исчезла. Проверку сертификата тоже убирал.
Во-вторых, скорость. 30 запросов без прокси отправлялись за 3-4 секунды, подрубив прокси один запрос отправлялся +-32 сек. и как я думаю, это зависит всеже от прокси, и я вставил их в firefox.settings.network и у меня хоть и медленно, но всеже запросы в гугл быстро обрабатывались. Тестил уже многое, смотрел примеры на гитхабе - ничего помогло.
C https/socks4 прокси тоже самое, но вот с http чутка лучше по скорости и нет ошибок.
Надеюсь вы мне поможете. Заранее спасибо!
Во-первых, socks5 отказывается работать, либо работает (что редко бывает) очень медленно. Я подумал что дело socks5, медленные и херовые купил. Купил другие - проблема та же.
Ошибка (Разные бывают, одна из них):
Bash:
* Trying 72.195.34.60:27391...
* SOCKS5 connect to IPv4 51.195.232.168:443 (locally resolved)
* SOCKS5 request granted.
* Connected to 72.195.34.60 (72.195.34.60) port 27391 (#0)
* found 387 certificates in /etc/ssl/certs
* ALPN, offering h2
* ALPN, offering http/1.1
* SSL connection using TLS1.3 / ECDHE_RSA_AES_256_GCM_SHA384
* server certificate verification failed. CAfile: none CRLfile: none
* Closing connection 0
× curl_easy_perform() failed: SSL peer certificate or SSH remote key was not OK
C:
#include "curl/curl.h"
int main()
{
const char URL[] = "https://ipcheck.com";
char curl_fields[256];
long response_code;
CURL *curl;
CURLcode res;
curl_global_init(CURL_GLOBAL_ALL);
curl = curl_easy_init();
if (curl)
{
curl_easy_setopt(curl, CURLOPT_URL, URL);
curl_easy_setopt(curl, CURLOPT_PROXY, "socks5://72.195.34.60:27391");
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
curl_easy_setopt(curl, CURLOPT_USERAGENT, "Mozilla/9.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0");
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
res = curl_easy_perform(curl);
if (res != CURLE_OK)
{
fprintf(stderr, "× curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
}
else
{
res = curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response_code);
if ((res == CURLE_OK) && ((response_code / 100) != 3))
{
printf("- %ld\n", response_code);
}
}
}
curl_easy_cleanup(curl);
curl_global_cleanup();
return 0;
}
Во-вторых, скорость. 30 запросов без прокси отправлялись за 3-4 секунды, подрубив прокси один запрос отправлялся +-32 сек. и как я думаю, это зависит всеже от прокси, и я вставил их в firefox.settings.network и у меня хоть и медленно, но всеже запросы в гугл быстро обрабатывались. Тестил уже многое, смотрел примеры на гитхабе - ничего помогло.
C https/socks4 прокси тоже самое, но вот с http чутка лучше по скорости и нет ошибок.
Надеюсь вы мне поможете. Заранее спасибо!