Чи відчуваєте ви розчарування через обмежений доступ до певних інтернет-ресурсів?
Чи прагнете обійти ці перешкоди та вільно користуватися необхідним контентом?
Якщо ви відповіли “так”, то використання проксі-сервера через командний рядок за допомогою cURL або wget може стати для вас вдалим рішенням.
Для початку розберемося, що саме являє собою проксі та як він функціонує.
Що таке проксі-сервер?
Проксі-сервер виступає в ролі посередника між вашим пристроєм (комп’ютером, смартфоном тощо) та інтернетом.
Коли ви звертаєтеся до вебсайту чи сервісу, ваш запит спершу надходить на проксі-сервер, а не безпосередньо до цільового ресурсу.
Далі проксі-сервер передає ваш запит до потрібного сервера від вашого імені та отримує відповідь. Зрештою, проксі-сервер відправляє отриману відповідь на ваш пристрій.
Це можна порівняти з особистим помічником, який бере на себе весь процес спілкування між вами та сервером призначення.
Але чому взагалі потрібен проксі-сервер?
На це є декілька причин.
Використання проксі-сервера дозволяє підвищити рівень конфіденційності та анонімності. Коли ви підключаєтеся до вебсайту чи сервісу через проксі, ваша IP-адреса залишається прихованою від цільового сервера. Замість вашої адреси, сервер бачить IP-адресу проксі-сервера. Це значно ускладнює відстеження вашої інтернет-активності.
І ще…
Ще однією перевагою проксі-сервера є можливість фільтрування контенту. Це особливо актуально для організацій, які хочуть контролювати або обмежувати доступ до певних видів матеріалів.
Проксі-сервери можна налаштувати так, щоб блокувати доступ до певних вебсайтів на основі заданих критеріїв, таких як ключові слова або категорії URL-адрес. Це допомагає гарантувати, що співробітники не відвідують неприйнятні або відволікаючі вебсайти під час роботи.
Якщо вас цікавлять основні відмінності між проксі та VPN, зверніться до цієї статті.
Як використовувати проксі з cURL?
cURL – це командний інструмент з відкритим кодом, призначений для передачі даних між серверами. Він популярний серед технічних фахівців завдяки своїй сумісності з різноманітними протоколами, включаючи HTTP, FTP та SMTP.
cURL легко справляється навіть зі складними завданнями передачі даних. Крім того, він підтримує надійні методи шифрування, що забезпечує безпеку даних під час передачі.
cURL доступний для більшості операційних систем. Якщо він не встановлений на вашій системі, ви легко можете завантажити його вручну. Дотримуйтесь інструкцій нижче, щоб встановити cURL і скористатися всіма його можливостями.
Windows
- Завантажте виконуваний файл curl з офіційного вебсайту.
- Розпакуйте zip-архів до потрібної папки на вашому комп’ютері.
- Додайте шлях до цієї папки у системну змінну середовища PATH.
macOS
- Відкрийте програму Термінал.
- Встановіть Homebrew (якщо ще не встановлено), виконавши команду:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- Тепер встановіть cURL, виконавши наступну команду:
brew install curl
Linux
У більшості дистрибутивів Linux cURL встановлено за замовчуванням. Якщо він відсутній, встановіть його за допомогою пакетного менеджера вашого дистрибутива.
Наприклад, в Ubuntu або Debian ви можете встановити cURL, виконавши команду:
sudo apt-get install curl
У CentOS або Fedora використайте наступну команду:
sudo yum install curl
Після встановлення cURL ви можете перевірити його версію, виконавши команду “curl –version” у терміналі.
Перейдемо до нашої основної теми.
Використовувати проксі-сервер з cURL можна, вказавши адресу проксі-сервера та номер порту в команді cURL за допомогою опції -x або –proxy.
Ось базовий синтаксис команди cURL, яка використовує проксі:
curl -x <адреса-проксі>:<номер-порту> <URL-адреса>
Замініть <адреса-проксі> на доменне ім’я або IP-адресу проксі-сервера, <номер-порту> на порт, який використовується проксі, а <URL-адреса> на адресу вебсайту або API, до якого ви хочете звернутися.
Ось приклад:
curl -x 5.189.184.6:80 ipinfo.io
Ця команда відправляє запит на вебсайт ipinfo.io через проксі-сервер з адресою 5.189.184.6 на порту 80. Цю адресу проксі-сервера я взяв з публічно доступного списку проксі. Не соромтеся відвідати цей вебсайт, якщо вам потрібна тимчасова проксі-адреса. Використовуйте на свій страх і ризик! ☢️
Іноді для аутентифікації на проксі-сервері можуть знадобитися облікові дані. В цьому випадку використовуйте параметри “–proxy-user” та “–proxy-password” для введення імені користувача та пароля. Наприклад:
curl -x 5.189.184.6:80 --proxy-user ім'я-користувача:пароль <цільова-URL-адреса>
Замініть “ім’я-користувача” та “пароль” на ваші реальні облікові дані для проксі-сервера.
Тестування проксі-з’єднання з cURL
Перед використанням проксі
Тут cURL показує мою початкову IP-адресу та місцезнаходження. З міркувань безпеки я приховав свою IP-адресу.
Після використання проксі
Тут cURL відображає адресу проксі замість моєї початкової IP-адреси.
Як використовувати проксі з wget?
wget – це командний інструмент для завантаження файлів з інтернету. Він попередньо встановлений у більшості систем Linux, Unix та macOS, а також доступний для Windows.
Для встановлення wget в Linux, скористайтеся пакетним менеджером вашого дистрибутива.
Наприклад, в Debian або Ubuntu виконайте команду:
sudo apt-get install wget
У CentOS або Fedora:
sudo yum install wget
У macOS wget можна встановити за допомогою Homebrew:
brew install wget
У Windows ви можете встановити wget, завантаживши бінарний файл з офіційного вебсайту GNU та додавши його до системного шляху.
Після встановлення wget, ви можете завантажувати файли, вказавши URL-адресу файлу. Наприклад, для завантаження файлу “example.zip” з вебсайту, виконайте команду:
wget http://example.com/example.zip
Ви також можете використовувати додаткові параметри для налаштування завантаження, наприклад, вказати ім’я вихідного файлу, каталог, обмежити швидкість завантаження або відновити перервані завантаження. Щоб дізнатися більше про доступні параметри, скористайтеся посібником wget, ввівши “man wget” у терміналі.
Давайте розглянемо налаштування проксі з wget.
Спочатку встановіть змінні середовища для проксі-сервера, виконавши наступну команду в терміналі:
export http_proxy=http://<адреса-проксі>:<порт> export https_proxy=https://<адреса-проксі>:<порт>
Перевірте правильність налаштування проксі, виконавши команду:
wget <цільова-URL-адреса>
Замініть <цільова-URL-адреса> на адресу файлу або вебсторінки, яку потрібно завантажити через проксі. Якщо команда успішно завантажить файл або сторінку, це означає, що проксі налаштовано правильно. Якщо цього не станеться, перевірте налаштування проксі та облікові дані.
(Необов’язково) Щоб зробити налаштування проксі постійними, додайте змінні середовища до файлу профілю оболонки, наприклад ~/.bashrc або ~/.bash_profile. Додайте такі рядки в кінець файлу:
export http_proxy=http://<адреса-проксі>:<порт> export https_proxy=https://<адреса-проксі>:<порт>
Якщо ваш проксі-сервер вимагає аутентифікації, вкажіть ім’я користувача та пароль у змінних “http_proxy” та “https_proxy”.
export http_proxy=http://<ім'я-користувача>:<пароль>@<адреса-проксі>:<порт> export https_proxy=https://<ім'я-користувача>:<пароль>@<адреса-проксі>:<порт>
Примітка: Деякі проксі можуть використовувати іншу схему протоколу, наприклад, socks замість “http” або “https”. У такому випадку вам потрібно налаштувати схему відповідно до змінних середовища та URL-адрес.
Тестування проксі-з’єднання з wget
Перед використанням проксі
wget показує мою початкову IP-адресу перед використанням проксі. З міркувань безпеки я приховав свою IP-адресу.
Після використання проксі
Тут видно, що wget намагається підключитися до проксі-сервера перед доступом до вебсайту.
Усунення поширених проблем
Використання проксі-сервера з cURL та wget іноді може призвести до проблем. Не хвилюйтеся, у нас є кілька порад щодо усунення несправностей, які допоможуть вам розібратися з цим.
#1. Проксі-сервер не відповідає
Якщо ваш проксі-сервер не відповідає, можливо, він не працює або має проблеми. Спробуйте наступні дії:
- Перевірте, чи працює проксі-сервер, виконавши команду ping на його IP-адресу.
- Переконайтеся, що ви ввели правильну адресу проксі та номер порту.
- Спробуйте інший проксі-сервер, щоб виключити проблеми з поточним.
#2. З’єднання відхилено
Ой, підключення відхилено?
Це недобре.
Ця помилка зазвичай вказує, що проксі-сервер не приймає підключення. Ось кілька кроків:
- Перевірте, чи налаштовано проксі-сервер на прийом підключень з вашої IP-адреси або підмережі.
- Переконайтеся, що проксі-сервер не блокується брандмауером або антивірусом.
- Перевірте, чи вимагає проксі-сервер облікові дані, і переконайтеся, що ви ввели їх правильно.
Спробуйте інший проксі-сервер, якщо ці поради не допомагають.
#3. Не вдалося перевірити сертифікат SSL/TLS
Не вдалося перевірити сертифікат?
Схоже на проблему з сертифікатом SSL/TLS проксі-сервера.
Спробуйте наступне:
- Перевірте сертифікат проксі, щоб переконатися, що він дійсний та не прострочений.
- Якщо сертифікат недійсний, зверніться до адміністратора проксі-сервера.
- Якщо сертифікат дійсний, але все одно не працює, ви можете вимкнути перевірку сертифіката, але це може поставити під загрозу вашу безпеку.
#4. Помилка аутентифікації
Якщо проксі-сервер вимагає аутентифікації, і ви не можете її пройти, можливо, ви ввели неправильні ім’я користувача та пароль або проксі використовує інший метод аутентифікації.
Спробуйте налаштувати облікові дані або зверніться за допомогою до адміністратора проксі.
Примітка автора✍️
В інтернеті є багато безкоштовних та платних проксі-серверів, але одним з рекомендованих варіантів для комерційного використання є IPRoyal. IPRoyal пропонує широкий вибір проксі-рішень для бізнесу, зокрема проксі для домашніх користувачів та дата-центрів з різними типами IP-адрес на вибір.
Він надає надійні та безпечні проксі-сервіси для різних цілей, таких як веб-скрапінг, аналіз даних та автоматизація.
Сподіваюся, ця стаття допомогла вам розібратися з використанням проксі-сервера з cURL та wget. Можливо, вас також зацікавить, як анонімізувати трафік Linux за допомогою ланцюжків проксі та мережі Tor.