Назад
# Cначала поставим информационный набор пакетов необходимых для сборки:
sudo apt-get install build-essential libevent-dev libssl-dev
# для правильной работы wget
sudo apt-get install ca-certificates
# Скачиваем стабильную версию:
cd /usr/src
sudo wget https://github.com/z3APA3A/3proxy/archive/0.8.8.tar.gz
# Распаковываем:
sudo tar zxvf 0.8.8.tar.gz
# Переходим в папку с исходниками:
cd 3proxy-0.8.8
# Перед компиляцией добавим одну строчку, чтобы сервер был анонимным:
sudo nano src/proxy.h
# Добавить строку:
#define ANONYMOUS 1
# Собираем:
sudo make -f Makefile.Linux
# Устанавливаем:
sudo make -f Makefile.Linux install
# Создаем директорию под конфиг и лог-файлы и в домашней папке
sudo mkdir -p /var/log/3proxy
# Создадим отдельного системного пользователя proxy3 от имени которого и будет работать сервер:
# sudo adduser --system --no-create-home --disabled-login --group proxy3 # это можно не делать!
# Узнаём UID и GID пользователя командой:
# id proxy3 # это можно не делать!
# В ответ, например, получим:
# uid=106(proxy3) gid=112(proxy3) группы=112(proxy3)# это не нужно!
# uid=111(proxy3) gid=117(proxy3) группы=117(proxy3)# это не нужно!
Создаем простой пример конфига
sudo nano /usr/local/bin/3proxy.cfg
#-------------3proxy.cfg------------
# Запускаем сервер от пользователя proxy3
# (возможно в вашей ОС uid и gid пользователя proxy3
# будут другими. Для их определения воспользуйтесь командой id proxy3)
# setgid 112 # это не нужно!
# setuid 106 # это не нужно!
# Для автозагрузки прокси сервера
daemon
# Записывать pid текущего процесса в файл
# pidfile /home/3proxy/3proxy.pid # это не нужно!
# IP адреса ip адрес вашего сервера (internal и external)
internal 192.168.0.100
external 192.168.1.100
# Пропишем правильные серверы имен, посмотрев их на своем сервере в /etc/resolv$
nserver 192.168.1.1
# Оставим размер кэша для запросов DNS по умолчанию
nscache 65536
# Равно как и таймауты
timeouts 1 5 30 60 180 1800 15 60
log /var/log/3proxy/3proxy.log D
logformat "L%Y/%o/%d/%H%:%M:%S -> %C:%c [O=%O][I=%I] %T"
rotate 30
# Конфигурация FTP (ftp и icq), Web-proxy (http и https), SOCKS5-proxy
flush
# none - не требует авторизации, strong - с авторизацией по логину и паролю
auth none
#################################################################################
# ОГРАНИЧЕНИЕ ПОЛЬЗОВАТЕЛЕЙ ИНТЕРНЕТА ПО СКОРОСТИ ВХОДЯЩЕГО/ИСХОДЯЩЕГО ТРАФФИКА #
#################################################################################
# ограничение скорости в байтах для входящего трафика
bandlimin 5120000 *
# можно также выполнить ограничение конкретным пользователям по IP
#bandlimin 128000 * 192.168.0.101
#bandlimin 256000 * 192.168.0.102
#bandlimin 384000 * 192.168.0.103
#bandlimin 64500 * 192.168.0.xxx - где xxx адрес пользователя
# ограничение скорости в байтах для исходящего трафика
bandlimout 512000 *
# задает стандартный порт для прокси 3128
proxy -p3128
# запустим socks прокси на порту 1080
socks -p1080
# административный веб-интерфейс на порту 8081
#admin -p8081
#-------------3proxy.cfg------------
# Создаем папку
# sudo mkdir -p /home/3proxy # это можно не делать!
# Запускаем прокси-сервер
3proxy /usr/local/bin/3proxy.cfg
# Проверяем слушается ли наш порт:
netstat -an | grep -i listen
# Проверим висит ли наш процесс:
ps ax | grep [3]proxy
# Добавляем в автозагрузку и запускаем прокси-сервер
# Создаём файл-инициализации:
sudo nano /etc/init.d/3proxyinit
----------------/etc/init.d/3proxyinit---------------------
#!/bin/sh
#
### BEGIN INIT INFO
# Provides: 3Proxy
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Initialize 3proxy server
# Description: starts 3proxy
### END INIT INFO
case "$1" in
start)
echo Starting 3Proxy
/usr/local/bin/3proxy /usr/local/bin/3proxy.cfg
;;
stop)
echo Stopping 3Proxy
/usr/bin/killall 3proxy
;;
restart|reload)
echo Reloading 3Proxy
/usr/bin/killall -s USR1 3proxy
;;
*)
echo Usage: $0 "{start|stop|restart}"
exit 1
esac
exit 0
----------------/etc/init.d/3proxyinit---------------------
# Делаем файл исполняемым:
sudo chmod +x /etc/init.d/3proxyinit
# Добавляем в автозагрузку:
sudo update-rc.d 3proxyinit defaults
# Запускаем прокси-сервер:
sudo /etc/init.d/3proxyinit start
# В консоли мы увидим сообщение:
# Starting 3Proxy
# Также мы увидим его в списке запущенных процессов в ответе на команду:
ps -ela | grep "3proxy"
# Удаляем временные файлы
sudo rm /usr/src/0.8.8.tar.gz
sudo rm -r /usr/src/3proxy-0.8.8
Автор: admin| E-mail: technolog@nm.ru| Дата/время: 05.03.2020 / 09:07:28| Просмотры: 9294РедактироватьНазад
|