Proxy in linux terminal

Использование HTTP proxy и SOCKS в Linux

В Linux существует много полезных консольных команд, которые при необходимости хотелось бы запустить через proxy. Некоторые приложения имеют встроенную поддержку proxy, а некоторые нет. Далее описано как пользоваться востребованными утилитами через proxy, даже теми, которые этой поддержки не имеют.

curl: передача данных через proxy

curl имеет полноценную поддержку как HTTP proxy так и SOCKS.

Для тестирования возможно использовать proxy сервера из бесплатных списков (socks — sockslist.net, и HTTP proxy — proxyhttp.net). Проверка IP адреса будет производиться с помощью ресурса check-host.net

Часть параметров curl можно записать в файл

С помощью time и curl также можно замерить время отклика сервера:

Результат будет выглядеть так:

wget: закачка файлов через proxy

wget имеет встроенную поддержку proxy. Недостаток лишь в том, что только поддержку HTTP proxy. Для использования совместно с SOCKS рекомендуется использовать соксификатор dante.

Чтобы все время не указывать —proxy-user и —proxy-password можно их прописать в файл

ssh: доступ к серверам

Для доступа к серверам через ssh и proxy также лучше использовать соксификатор dante.

Соксификатор dante

С помощью socksify можно направить через proxy почти любое приложение, не только консольное.

Чтобы все время не вводить данные о proxy можно создать файл /etc/socks.conf
Пример для SOCKS:

Пример для HTTP proxy с авторизацией:

А также экспортировать переменные SOCKS_USERNAME и SOCKS_PASSWORD, если для SOCKS или HTTP proxy требуется авторизация:

DNS запросы через proxy

Часто требуется чтобы и преобразование имен происходило через proxy. Если использовать dante, то запрос на преобразование имен идет и через proxy, и через именной сервер указанный в /etc/resolv.conf . Понять почему же идет два одинаковых запроса вместо одного не удалось. Поэтому можно предложить два варианта:
1) Закомментировать именные сервера в файле /etc/resolv.conf, чтобы преобразование имен шло только через proxy. Это отразится на всей системе.
2) Изменить /etc/resolv.conf и выставить именные сервера необходимой страны, или просто отличные от серверов провайдера. Например установить сервера Google:

Чтобы данные не были перезаписаны именными серверами провайдера (при переподключении), можно запретить обновление списка именных серверов сетевому менеджеру (NetworkManager/wicd) или DHCP-клиенту (спасибо ergil за корректировку).

Или воспользоваться «грубым» методом — запрещением изменения файла /etc/resolv.conf:

Если есть какие-то дополнения, пожалуйста, напишите, это будет полезно узнать и применить.

Источник

Настройка proxy в Linux через терминал

В этой статье поговорим о том, как можно настроить прокси в системе Linux через терминал.

Проще всего для использования прокси в командной строке, определить переменные окружения http_proxy, https_proxy, socks_proxy или ftp_proxy.

Практически все утилиты командной строки, такие как curl, ssh, ftp и прочие, используют данные переменные.

Рассмотрим настройку переменных для использования прокси

Используйте следующий синтаксис для настройки таких типов трафика как http, https, socks и ftp из командной строки:

Используйте следующий синтаксис, если прокси-сервер требует аутентификацию:

Если Ваш пароль содержит спец. символы, Вы должны заменить их на ASCII коды.

Например символ собаки @, должен быть заменен на «%40».

Читайте также:  Как редактировать язык windows

Настроить прокси на системном уровне можно и через конфигурационные файлы (True UNIX-way). Для этого нужно открыть на редактирования с правами root файл /etc/environment

В конец файла добавим строки:

Если прокси без авторизации, то строки должны быть вида:

Для применения настроек придется перезагрузит систему, изменения в файле /etc/environment вступили в силу при запуске процесса init — родителя всех процессов в системе и именно от него все дочерние процессы унаследуют настройки прокси в переменных окружения.

Тестирование работы

Используйте следующую команду для проверки текущих переменных прокси:

Можно проверить работу прокси, узнав ваш внешний IP адрес из командной строки:

Отключение

Используйте следующие команды для отключения прокси:

Упрощенное использование прокси

Если у Вас один и тот же прокси-сервер для http, https и ftp трафика, Вы можете использовать следующие команды для включения и отключения прокси:

Если Вам приходится очень часто пользоваться прокси, Вы можете создать следующие bash функции (добавьте в Ваш

Примените настройки, перезагрузив

Теперь, для включения и отключения прокси можно использовать команды setproxy и unsetproxy.

Как правила глобальной настройки прокси достаточно для того что бы все остальные приложения работали через прокси без необходимости настраивать прокси внутри приложения. Однако некоторые приложения не умеют работать с глобальными настройками или им нужны особенные настройки.

Прокси для команды apt

В новых версиях умеет работать с глобальными настройками, но в более старых мог работать только с персональными настройками. Для внесения нашего прокси открываем файл:

В нем указываем наш прокси и выключаем данную настройку последней строчкой:

Если сервер с авторизацией, то необходимо добавить логин:пароль@ по аналогии с предыдущими примерами.

Прокси для команды wget

И в конце дописываем необходимый прокси:

Если прокси без авторизации, то proxy-user и proxy-password нужно убрать

Настройка proxy в Ubuntu

Все настройки среды рабочего стола в Ubuntu хранятся в базе данных DConf, в том числе и настройки прокси сервера. Настройки записываются в виде пар ключ значение. Если изменить какой либо параметр из меню настроек системы все изменения сразу же запишутся в DConf. Из командной строки настройками DConf можно управлять с помощью команд gsettings и dconf. Дальше я покажу как настроить прокси в Ubuntu из терминала с помощью gsettings.

Базовое использование gsettings для работы с базой данных Dconf выглядит следующим образом. Для чтения данных используем:

Если вы хотите использовать HTTPS прокси то вам нужно выполнить:

Для других протоколов я думаю вы поняли что необходимо поменять в данных командах.

Если есть вопросы, то пишем в комментариях.

Также можете вступить в Телеграм канал, ВК или подписаться на Twitter. Ссылки в шапки страницы.
Заранее всем спасибо.

Источник

How to configure proxy settings on Ubuntu 18.04

Overview

Proxies are commonly found on business networks, but they are increasingly becoming popular for personal use. The following tutorial will show you multiple ways of setting your proxy in Ubuntu 18.04, allowing you to browse the Internet with additional privacy.

This tutorial will cover the following three areas. Use the one the fits your needs.

Desktop: learn how to set your proxy settings from within the desktop.

Terminal: set environment variables for your proxy server when using a terminal or console.

All users: setting the proxy settings for all users on the system.

Ubuntu Desktop Network Settings

To configure your proxy settings in Ubuntu Desktop you need to access Network Settings. Within there you can set a number of parameters, including proxy settings for HTTP traffic, HTTPS traffic, and FTP traffic.

Equally as important as setting your Internet proxy settings is setting Ignore Hosts, to prevent local traffic from going through your proxy server.

Читайте также:  Linux для acer swift 3

To set your proxy in Ubuntu Desktop, do the following:

  1. Open the Application launcher by clicking the “Show Applications” icon, located at the bottom of the left-hand quick application access bar.
  2. Type in ‘Settings’
  3. Click the ‘Settings’ icon.
  4. From the left-hand navigation, click the Network tab.

Network Settings Configuration Screen
Click the cog icon near the Network Proxy label.

Network settings proxy icon

  • A dialog box will appear where you can set your proxy settings.
  • In the appropriate text fields, enter your proxy server’s hostname or IP address. Ensure you change the port number to match your proxy server’s, too.

    Ubuntu Proxy Settings Dialog Box

  • Close the dialog box. Your settings will be automatically saved.
  • Ubuntu Terminal Proxy Settings

    Like every Linux distribution, proxy settings can be set using environment variables. There are a number of variables available to use, ranging from HTTP traffic to FTP traffic.

    Proxy settings can be either persistent by setting them in your profile, or non-persistent by setting them from the shell session.

    Proxy Environment Variables

    Variable Description
    http_proxy Proxy server for HTTP Traffic.
    https_proxy Proxy server for HTTPS traffic
    ftp_proxy Proxy server for FTP traffic
    no_proxy Patterns for IP addresses or domain names that shouldn’t use the proxy

    The value for every proxy setting, except for no_proxy, uses the same template. They all require a hostname, but you may optionally specify a proxy server port and your user credentials if required to do so. For example:

    Single User Temporary Proxy Settings

    You may not always want to force Internet traffic through a proxy. Sometimes you need to override existing settings, and you can do this safely by setting the proxy environment variables from the command line.

    The following will set a proxy for HTTP and HTTPS, while preventing local traffic from going through the proxy. Our example proxy server endpoint is my.proxy.server:8080 for HTTP traffic and my.proxy.server:8081 for HTTPS.

    1. Open a Terminal window where you need proxy access.
    2. Set and export the HTTP_PROXY variable.
    3. Set and export the HTTPS_PROXY variable.
    4. Set and export the NO_PROXY variable to prevent local traffic from being sent to the proxy.

    Single User Persistent Proxy Settings

    1. Open your bash profile file into a text editor.
    2. Add the following lines, modifying them to match your environment.
    3. Save your settings.
    4. The proxy settings will be applied the next time you start a session, by logging into the server or opening a new Terminal window from a Desktop.
    5. To force apply your new proxy settings in the current Terminal session, execute the source command against your bash profile.

    All Users

    You will need administrative rights to perform this task. All versions of Ubuntu and Debian have a file called /etc/environment. Within this file, we can set global variables and other such things.

    Similar to how you set proxy settings for your own local proxy, we’ll be adding the environment variables to this file. The variables will be set when a new user session is created, which is to say when you log in next.

    1. Using an administrator account, open /etc/environment into a text editor.
    2. Add the following lines, modifying them to fit your environment. Username and password may be omitted, if not required.

    For example, if you do not need to enter a username or password, and your proxy server is my.proxyserver.net at port 8080, and you do not want local traffic going through the proxy, you would enter the following:

  • Save your changes and exit the text editor.
  • Источник

    Как настроить прокси в Ubuntu

    С помощью прокси сервера вы можете скрыть свой реальный ip адрес и заставить веб-сайт думать, что вы совсем из другой страны или используете другого провайдера, чем это есть на самом деле. Прокси может использоваться не только для просмотра сайтов интернета, но и для обновления системы, загрузки пакетов через apt и многого другого.

    В этой статье мы поговорим о том как выполняется настройка прокси Ubuntu с помощью графического интерфейса или через терминал.

    Настройка прокси на Ubuntu через GUI

    В Ubuntu можно настроить прокси Ubuntu через стандартное приложение Параметры. Откройте программу, затем перейдите в раздел Сеть и кликните по шестеренке Сетевой прокси:

    Здесь надо прописать IP адрес вашего прокси и порт в подходящем поле. Это зависит от типа вашего прокси, например, HTTP/HTTPS или SOCKS:

    Если для прокси необходима авторизация, вы можете прописать данные авторизации в поле IP адреса:

    логин : пароль @ ip_адрес

    Теперь вы можете проверить работает ли новый прокси по всей системе. Например, через терминал:

    Настройка прокси в Ubuntu через терминал

    Все настройки среды рабочего стола в Ubuntu хранятся в базе данных DConf, в том числе и настройки прокси сервера. Настройки записываются в виде пар ключ значение. Если изменить какой либо параметр из меню настроек системы все изменения сразу же запишутся в DConf. Из командной строки настройками DConf можно управлять с помощью команд gsettings и dconf. Дальше я покажу как настроить прокси в Ubuntu из терминала с помощью gsettings.

    Базовое использование gsettings для работы с базой данных Dconf выглядит следующим образом. Для чтения данных используем:

    $ gsettings get

    А для редактирования:

    $ gsettings set

    Рассмотрим подробнее как выполняется настройка прокси через консоль Ubuntu. Выполните следующие команды чтобы установить в качестве прокси сервера my.proxy.com:8000

    gsettings set org.gnome.system.proxy.http host ‘my.proxy.com’
    gsettings set org.gnome.system.proxy.http port 8000
    gsettings set org.gnome.system.proxy mode ‘manual’

    Если вы хотите использовать HTTPS/FTP прокси то вам нужно выполнить:

    gsettings set org.gnome.system.proxy.https host ‘my.proxy.com’
    gsettings set org.gnome.system.proxy.https port 8000
    gsettings set org.gnome.system.proxy.ftp host ‘my.proxy.com’
    gsettings set org.gnome.system.proxy.ftp port 8000

    Для использования SOCKS прокси наберите:

    gsettings set org.gnome.system.proxy.socks host ‘my.proxy.com’
    gsettings set org.gnome.system.proxy.socks port 8000

    Все изменения действуют только для текущего пользователя. Если вы хотите установить прокси для всех пользователей запускайте gsettings от суперпользователя добавив перед командой sudo, например:

    sudo gsettings set org.gnome.system.proxy.http host ‘my.proxy.com’
    sudo gsettings set org.gnome.system.proxy.http port 8000
    sudo gsettings set org.gnome.system.proxy mode ‘manual’

    Если вы используете автоматическую настройку прокси можете выполнить следующие команды:

    gsettings set org.gnome.system.proxy mode ‘auto’
    gsettings set org.gnome.system.proxy autoconfig-url http://my.proxy.com/autoproxy.pac

    Для того чтобы удалить прежние настройки прокси и работать напрямую выполните:

    gsettings set org.gnome.system.proxy mode ‘none’

    Чтобы прописать прокси в Ubuntu с авторизацией, записывайте в поле host логин и пароль в том же формате, который предложен для настройки в графическом интерфейсе.

    Утилита apt тоже умеет работать с глобальным прокси, настроенным как описано выше, однако вы можете настроить для неё прокси отдельно через конфигурационный файл /etc/apt/apt.conf. Для этого добавьте в этот одну из строк для активации нужного типа прокси:

    sudo vi /etc/apt/apt.conf

    Acquire::http::proxy «логин:пароль@ip_адрес:порт/»;
    Acquire::https::proxy «логин:пароль@ip_адрес:порт/»;

    И непосредственно для активации прокси:

    Acquire. Proxy «true»;

    После этого пакетный менеджер apt будет использовать свой отдельный прокси для обновления Ubuntu.

    Выводы

    В этой небольшой статье мы поговорили о том, как выполняется настройка прокси Ubuntu. Как видите, это совсем не сложно. Если вы хотите зайти с другой стороны и вам нужно настроить прокси сервер, смотрите статью о том как установить squid в Ubuntu.

    Источник

    Читайте также:  A2dp bluetooth drivers windows 10
    Оцените статью