Как установить общесистемное соединение через прокси-сервер


12

У меня есть доступ к Интернету через прокси, моя ОС - Debian 8, каждое приложение должно настроить его на использование прокси, но есть некоторые проблемы, которые заставляют его работать с прокси, тогда мой вопрос: есть ли способ или программа для отправки всех моих соединений (tcp, udp и т. д.) на прокси? то есть как установить общесистемное соединение через прокси-сервер?

Ответы:


10

Для этого есть различные решения:

1. Настройка переменных http_proxy

Вы можете установить $http_proxyи другие такие переменные. Большинство приложений выберет эту переменную автоматически. Чтобы установить его для всей системы, вы можете установить эту переменную либо в вашем ~/.bashrcфайле, либо /etc/profile. Установите это как:

http_proxy=http://user:password@proxyserver.com:3128
https_proxy=https://user:password@proxyserver.com:3128
export http_proxy
export https_proxy

2. Использование proxy_chains

Некоторые приложения не будут использовать вашу прокси-переменную, и они могут даже не иметь настроек для использования прокси-сервера. В таком случае вы можете направлять весь трафик вашего ПК через прокси-сервер с помощью proxy_chains.

Я никогда не использовал proxy_chains, однако их домашняя страница, кажется, рассказывает все это на одной странице: http://proxychains.sourceforge.net/howto.html

3. Использование прозрачного прокси

Чтобы форсировать все соединения вашего ПК через прокси, вы также можете использовать прозрачный прокси в качестве альтернативы proxy_chains. Я понятия не имею, как это настроить ( хотя я делал это давным-давно, и это сработало! ), Так что вам придется смотреть самостоятельно.


1
proxychainsработает безупречно на FreeBSD, это потрясающе.
user3405291

1
Есть ли способ сделать это без открытого пароля?
Самбест

2

Вы можете установить прокси в настройках, и это будет отражаться везде

введите описание изображения здесь


Какое влияние это оказывает конкретно? Какие переменные / настройки редактируются? Я хотел бы написать сценарий, который делает это вместо того, чтобы делать это с пользовательским интерфейсом.
Гильермо

1

Как сказал Шивамс, для этого есть различные решения. Просто экспортируя, http_proxyвы не сможете установить соединение. То, как я буду настраивать прокси, будет таким, как показано ниже,

  1. Сначала я настрою аутентификацию, запустив cntlm.

    а. Для этого отредактируйте /etc/cntlm.confфайл, добавив свое имя пользователя, пароль (вы также можете использовать хэш, сгенерированный для вашего пароля), домен, рабочую станцию, прокси и т. Д.

    б. И я буду слушать порт 3128.

  2. Я настрою прокси для различных приложений или программ , как для wgetI настроит внутри /etc/wgetrc, если она curlзатем в curlrcдр ...

  3. Я буду экспортировать http(s)_proxyс. http://localhost:3128Вы можете установить эту переменную среды для определенного сеанса, или вы можете установить его, поместив его внутрь/etc/profile.d/
  4. Выполнено

1

Чтобы настроить переменную окружения прокси как глобальную переменную, откройте файл / etc / profile:

# vi /etc/profile

Добавьте следующую информацию:

export http_proxy=http://proxy-server.mycorp.com:3128/

ИЛИ

export http_proxy=http://USERNAME:PASSOWRD@proxy-server.mycorp.com:3128/
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.