Установка простого прокси на свой выделенный сервер Linux

Tinyproxy — это прокси HTTP/HTTPS. Это легкий, быстрый, очень простой в настройке прокси-сервис с открытым исходным кодом. Tinyproxy также можно настроить как обратный прокси. Его удобно использовать в качестве небольшого прокси с меньшим количеством системных ресурсов, потому что он очень легкий.

Функции

  • Tinyproxy легко настроить и изменить.
  • Небольшой объем памяти означает, что она занимает очень мало места в операционных системах. Его объем памяти составляет почти 2 МБ.
  • Анонимный режим позволяет авторизовать отдельные HTTP-заголовки, которые должны быть разрешены, а какие — нет.
  • Контроль доступа путем блокировки неавторизованного пользователя.
  • Фильтрация позволяет пользователю заблокировать или разрешить определенный домен, создав черный список и белый список.
  • Функции конфиденциальности контролируют как входящие, так и исходящие данные с серверов HTTPS / HTTP.

Установить TinyProxy

Обновите системные пакеты, введя следующую команду.

ubuntu@ubuntu:~$ sudo  apt-get  update ubuntu@ubuntu:~$ sudo  apt-get  upgrade -y

После завершения обновления установите Tinyproxy, введя эту команду.

ubuntu@ubuntu:~$ sudo apt-get -y install tinyproxy

Tinyproxy будет установлен. Чтобы запустить и проверить статус Tinyproxy, введите эти команды.

ubuntu@ubuntu:~$ sudo systemctl tinyproxy start ubuntu@ubuntu:~$ sudo systemctl tinyproxy status

Настроить веб-браузер

Чтобы ваш Tinyproxy работал, вам нужно изменить некоторые настройки в своем веб-браузере. Для этого зайдите в настройки сети своего веб-браузера и нажмите ручную настройку прокси-сервера, а в строке прокси-сервера HTTP введите свой общедоступный IP_Address, на котором вы хотите запустить Tinyproxy. И номер порта (по умолчанию номер порта tinyproxy — 8888).

1-16.png

Вы также можете использовать foxyproxy для настройки своего веб-браузера. Это инструмент управления прокси, который намного лучше, чем ограниченные возможности настройки прокси Firefox. Это расширение для веб-браузеров Firefox и Chrome, которое можно загрузить из их магазинов.

Конфигурация Tinyproxy

Файл конфигурации Tinyproxy находится по следующему пути «etc / tinyproxy / tinyproxy.conf».

Чтобы получить к нему доступ, введите следующую команду.

ubuntu@ubuntu:~$ cd  etc/tinyproxy/tinyproxy.conf

Чтобы внести изменения в файл конфигурации Tinyproxy, откройте его с помощью vim.

ubuntu@ubuntu:~$ sudo vim  etc/tinyproxy/tinyproxy.conf

Перейдите в строку Разрешить 127.0.0.1 и замените ее своим общедоступным IP-адресом.

2-9.png

Теперь перейдите к строке #Listen 192.168.0.1. Закомментируйте эту строку и напишите в ней свой IP_Address.

3-10.png

Разрешить и заблокировать диапазон IP-адресов пользователей

Tinyproxy позволяет вам добавлять или блокировать IP-адрес пользователя или диапазон IP-адресов от использования tinyproxy. Чтобы разрешить или заблокировать IP-адрес пользователя, перейдите в строку Allow 127.0.0.1 и ниже этой строки добавьте IP-адреса, которые вы хотите разрешить [IP_Address]. Чтобы разрешить диапазон IP-адресов чуть ниже строки Разрешить 192.168.0.0, добавьте строку

Allow [IP_Address/range]

Чтобы заблокировать IP-адрес пользователя или диапазон IP-адресов, просто закомментируйте IP_Address, который вы хотите заблокировать. В tinyproxy по умолчанию все IP-адреса заблокированы.

Авторизация

В tinyproxy вы можете настроить авторизацию так, чтобы только авторизованные пользователи могли получить доступ к tinyproxy. Для настройки учетных данных для авторизации перейдите в строку #BasicAuth пароль пользователя. Раскомментируйте эту строку и напишите свой пароль в конце этой строки.

BasicAuth user password [Your Password]

Добавление фильтра

Вы также можете добавить фильтр трафика, блокируя веб-сайты с помощью tinyproxy. Следуйте инструкциям по добавлению фильтров трафика.

Перейдите в строку Фильтр «/etc/tinyproxy/filter». Закомментируйте эту строку. Вы можете установить фильтр по URL или доменам. Также ниже этой строки закомментируйте другую строку: «FilterExtanded On» . И «FilterDefaultDeny Yes».

4-8.png

Сохраните изменения и добавьте домены сайтов, которые хотите заблокировать, в файле фильтра. Вы можете получить доступ к файлу фильтра по пути «/ etc / tinyproxy / filter» . Так что откройте его с помощью vim.

ununtu@ubuntu:~$ sudo vim etc/tinyproxy/filter

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

5-9.png

Каждый раз, когда вы вносите какие-либо изменения в список фильтров или файл конфигурации tinyproxy, вы должны перезапустить службу tinyproxy. Для перезапуска службы tinyproxy введите команду.

ubuntu@ubuntu:~$ service tinyproxy restart

Теперь разрешите брандмауэр, набрав команду.

ubuntu@ubuntu:~$ sudo iptables -A INPUT -j ACCEPT -m comment --comment “tinyproxy” -s 192.163.28.73/24 -p tcp --dport 8888

Регулировать TinyProxy с помощью задания Cron

Если вы хотите запланировать время для своего tinyproxy, например, когда вы хотите запустить, перезапустите или остановите tinyproxy. Вы можете сделать это с помощью специальной функции Linux cron job. Он следует этому шаблону time (минута, час, день месяца, месяц, день недели) path. Чтобы отредактировать задание cron, введите команду crontab -e.

Чтобы запланировать время запуска tinyproxy, введите следующие команды.

0 6 * * * etc/init.d/tinyproxy start

Чтобы запланировать время остановки tinyproxy, введите следующие команды.

0 23 * * * etc/init.d/tinyproxy stop

Это означает, что служба tinyproxy будет автоматически запускаться в 6 утра и заканчиваться в 23 часа каждый день.

Вывод

Tinyproxy — полезный и простой инструмент для настройки прокси HTTP/HTTPS. Это для небольших серверов, но если вы хотите, чтобы прокси-сервер работал для больших сетей, вам может потребоваться прокси-сервер squid. Здесь мы поделились лишь некоторыми советами, но они достаточно хороши. Используя это простое руководство по установке, настройке и использованию tinyproxy, вы сможете настроить свой tinyproxy.

sudo -i

apt update

apt upgrade -y

apt install libtool perl-core zlib-devel -y

apt install libz-dev -y

cd /usr/src

git clone https://github.com/TelegramMessenger/MTProxy;Далее обновим библиотеку openssl иначе MTProxy не соберется

wget https://www.openssl.org/source/openssl-1.1.0h.tar.gz

tar -zxf openssl-1.1.0h.tar.gz

cd openssl-1.1.0h

./config

make

make install

mv /usr/bin/openssl /root/

nano /etc/ld.so.conf

;В открывшемся файле необходимо добавить следующую строчку в конец файла —

include /usr/local/openssl/lib

;После чего нажимаем комбинацию ctrl+x, y, enter

;Проверяем версию Openssl, должна быть вида 1.1.0

openssl version

wget http://mirrors.kernel.org/ubuntu/pool/main/o/openssl/libssl1…

dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb

;Теперь идем собирать сам MTProxy

cd /usr/src/MTProxy/

make

curl -s https://core.telegram.org/getProxySecret -o proxy-secret

curl -s https://core.telegram.org/getProxyConfig -o proxy-multi.conf

head -c 16 /dev/urandom | xxd -ps

;После генерации ключа в строке выше обязательно сохраните его себе в отдельный файлик

mv /usr/src/MTProxy /opt/

ln -s /opt/MTProxy/objs/bin/mtproto-proxy /usr/bin/mtproto-proxy

cd /etc/systemd/system

;Создаем файл сервиса systemd

cat&nano; /etc/systemd/system/mtproto-proxy.service

;Копируем туда следующие строки

[Unit]Description=MTProxyAfter=network.target[Service]WorkingDirectory=/opt/MTProxyExecStart=/usr/bin/mtproto-proxy -u nobody -p 8888 -H 443 -S —aes-pwd proxy-secret proxy-multi.conf -M 1[Install]WantedBy=multi-user.target

;Где nobody ваш пользователь на сервере;8888 порт мониторинга за сервисом (можно изменить на любой удобный)

;443 порт на котором будет работать MTProxy (можно изменить на любой удобный)

;После чего нажимаем комбинацию ctrl+x, y, сохраняем как mtproto-proxy.service, enter

systemctl daemon-reload

systemctl enable mtproto-proxy

systemctl start mtproto-proxy

;Ссылка на ваш прокси будет вида tg://proxy?server=SERVER_NAME&port=PORT&secret=SECRET

;где SERVER_NAME доменное имя или IP вашего сервера

;PORT заданный вами порт в mtproto-proxy.service

;SECRET сгенерированный ранее ключ

Подготовка материала осуществлена с помощью материалов с официального репозитория MTProto Proxy и всемогущих поисковиков.

PS На Ubuntu 18.04 должно все быть значительно проще, там не требуется доустановка обновленных версий openssl и libssl.

Настройка работы APT через прокси сервер является частой потребностью системных администраторов, в ведении которых находится немалый парк компьютерной техники того или иного учреждения. Не всегда машина, на которую устанавливается Linux, имеет прямое подключение к Интернету. Поэтому и возникает необходимость в небольшой дополнительной настройке, которую можно выполнить, отредактировав всего один файл. Вот как все можно сделать, не прибегая к сложным манипуляциям на примере Xubuntu 13.10

Прописываем для работы APT proxy через командную строку

  1. Запускаем окно терминала любым удобным способом
  2. Вводим команду
    sudo nano /etc/apt/apt.conf.d/01proxy

    Вводим на запрос системы пароль для выполнения административных задач. В результате выполнения команды во встроенном текстовом редакторе nano откроется на редактирование файл 01proxy, находящийся по указанному пути.

  3. В пустом файле (если система была установлена с нуля) вводим нижеприведенную строку, заменив ip proxy, порт, имя пользователя и пароль на свои значения. Обратите внимание! Если авторизация на вашем прокси по имени пользователя и паролю не предусмотрена, тогда указываете только ip сервера и порт, на котором работает прокси
    Acquire::http::proxy "http://User:Password@host:port";
    Редактирование файла 01proxy через редактор nano

    Не забудьте о точке с запятой в конце строки. Я на это не обратил сразу внимание, в результате чего, при попытке запустить apt-get update было выдано сообщение об ошибке — лишние символы в конце строки в файле 01proxy. Это немного запутывает, потому что лишних символов там нет. Нужно просто поставить точку с запятой.

На этом несложные манипуляции закончены. У вас теперь сможет резво работать связка apt и proxy — система будет без проблем обновляться через прокси-сервер. Кстати блокировка Яндекс Директ и рекламы Google будет наиболее выгодна именно на прокси-сервере. Благодаря этому вся сеть, стоящая за прокси, а не только отдельный компьютер, будет освобождена от назойливой рекламы.

Оставляя ваши комментарии, вы дадите оценку тому, насколько полезна информация в этой статье и, при необходимости, поможете ее доработать.

Спасибо.

Используемые источники:

  • https://ip-calculator.ru/blog/ask/tinyproxy-chto-eto-i-kak-nastroit/
  • https://pikabu.ru/story/ustanovka_mtproto_proxy_na_ubuntu_1604_5938392
  • https://sysadmin-arh.ru/apt-%d0%b8-proxy/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации