3proxy: различия между версиями
imported>Vix (Новая страница: «Прокси сервер который умеет HTTP\HTTPS, ознакомится можно [https://ru.wikipedia.org/wiki/3proxy тут]. <hr> Для ус…») |
imported>Vix Нет описания правки |
||
Строка 14: | Строка 14: | ||
и вносим содержимое: | и вносим содержимое: | ||
#!/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/bin/3proxy /etc/3proxy/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; | |||
chmod 0644 /etc/init.d/3proxyinit; | |||
chmod +x /etc/init.d/3proxyinit; | |||
if [[ $deb_release < 8 ]]; | |||
then | |||
update-rc.d -n 3proxyinit defaults; | |||
else | |||
echo -e ' [Unit] | |||
SourcePath=/etc/3proxy | |||
Description=proxy | |||
After=network-online.target | |||
Wants=network-online.target | |||
Conflicts=shutdown.target | |||
[Service] | |||
User=proxy3 | |||
Group=proxy3 | |||
GuessMainPID=no | |||
Type=notify | |||
NotifyAccess=all | |||
RemainAfterExit=yes | |||
WorkingDirectory=/etc/3proxy/ | |||
ExecStart=/etc/init.d/3proxyinit start | |||
ExecStop=/etc/init.d/3proxyinit stop | |||
ExecReload=/etc/init.d/3proxyinit restart | |||
TimeoutSec=5min | |||
[Install] | |||
WantedBy=multi-user.target | |||
'>/lib/systemd/system/3proxy.service; | |||
systemctl daemon-reload | |||
/bin/systemctl enable 3proxy.service; | |||
fi | |||
# | |||
reports[${#reports[@]}]="3proxy install susseful"; | |||
writeToLog; | |||
printInfo; | |||
} | |||
function uninstall() { | |||
if [[ $deb_release < 8 ]]; | |||
then | |||
/etc/init.d/3proxyinit stop; | |||
update-rc.d -n 3proxyinit remove; | |||
else | |||
/bin/systemctl stop 3proxy.service; | |||
/bin/systemctl disable 3proxy.service; | |||
rm /lib/systemd/system/3proxy.service; | |||
systemctl daemon-reload; | |||
fi | |||
rm -f /etc/3proxy/3proxy.cfg; | |||
rm -f /usr/bin/3proxy; | |||
rm -rf /etc/3proxy; | |||
deluser proxy3; | |||
reports[${#reports[@]}]="3proxy uninstall susseful"; | |||
writeToLog; | |||
printInfo; | |||
} | |||
##--@F executor | |||
function executor() { | |||
if [[ ${#execute_func[@]} -eq 0 ]] | |||
then echo "exit"; | |||
exit 0; | |||
fi | |||
for ((ex_index=0; ex_index != ${#execute_func[@]}; ex_index++)) | |||
do | |||
## !! debug operation... | |||
##echo "execution: function ${execute_func[ex_index]}" | |||
${execute_func[ex_index]}; | |||
done | |||
} | |||
##- Begin zramraid | |||
case "$option" in | |||
## install zramraid | |||
"--install" | "--install" ) | |||
execute_func=( ${operation_install[@]} ); | |||
executor; | |||
exit 0 | |||
;; | |||
## uninstall zramraid | |||
"--uninstall" | "--uninstall" ) | |||
execute_func=( ${operation_uninstall[@]} ); | |||
executor; | |||
exit 0 | |||
;; | |||
## help | |||
"--help" | "--help" ) | |||
execute_func=( ${operation_help[@]} ); | |||
executor; | |||
exit 0 | |||
;; | |||
* ) | |||
# selecting defaults. | |||
execute_func=( ${operation_help[@]} ); | |||
executor; | |||
exit 1 | |||
;; | |||
esac | |||
3. даем права на запуск | |||
chmod +x debinstall.sh | |||
4. запускаем скрипт, он может потребовать доустановить пакеты - соглашаемся. | |||
5. после установки правим конфигурационный файл /etc/3proxy/3proxy.cfg | |||
Примеры можно посмотреть в папке с исходным кодом: ../3Proxy/cfg |
Версия от 15:04, 24 декабря 2018
Прокси сервер который умеет HTTP\HTTPS, ознакомится можно тут.
Для установки необходимо сделать сдледующее:
1. скачать архив последней версии тут:
* - через git: git clone https://github.com/z3APA3A/3proxy.git * - скачиваем архивом wget -c https://github.com/z3APA3A/3proxy/releases
2. если копия сделана через git то просто создаем в папке 3proxy файл debinstall.sh
cd 3proxy touch debinstall.sh
и вносим содержимое:
#!/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/bin/3proxy /etc/3proxy/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; chmod 0644 /etc/init.d/3proxyinit; chmod +x /etc/init.d/3proxyinit;
if [[ $deb_release < 8 ]]; then update-rc.d -n 3proxyinit defaults; else echo -e ' [Unit] SourcePath=/etc/3proxy Description=proxy After=network-online.target Wants=network-online.target Conflicts=shutdown.target
[Service] User=proxy3 Group=proxy3 GuessMainPID=no Type=notify NotifyAccess=all RemainAfterExit=yes WorkingDirectory=/etc/3proxy/ ExecStart=/etc/init.d/3proxyinit start ExecStop=/etc/init.d/3proxyinit stop ExecReload=/etc/init.d/3proxyinit restart TimeoutSec=5min
[Install] WantedBy=multi-user.target
'>/lib/systemd/system/3proxy.service; systemctl daemon-reload /bin/systemctl enable 3proxy.service; fi # reports[${#reports[@]}]="3proxy install susseful"; writeToLog; printInfo;
}
function uninstall() { if [[ $deb_release < 8 ]]; then /etc/init.d/3proxyinit stop; update-rc.d -n 3proxyinit remove; else /bin/systemctl stop 3proxy.service; /bin/systemctl disable 3proxy.service; rm /lib/systemd/system/3proxy.service; systemctl daemon-reload; fi rm -f /etc/3proxy/3proxy.cfg; rm -f /usr/bin/3proxy; rm -rf /etc/3proxy; deluser proxy3; reports[${#reports[@]}]="3proxy uninstall susseful"; writeToLog; printInfo; }
##--@F executor function executor() { if [[ ${#execute_func[@]} -eq 0 ]] then echo "exit"; exit 0; fi for ((ex_index=0; ex_index != ${#execute_func[@]}; ex_index++)) do ## !! debug operation... ##echo "execution: function ${execute_func[ex_index]}" ${execute_func[ex_index]}; done }
##- Begin zramraid case "$option" in
## install zramraid "--install" | "--install" ) execute_func=( ${operation_install[@]} ); executor; exit 0 ;;
## uninstall zramraid "--uninstall" | "--uninstall" ) execute_func=( ${operation_uninstall[@]} ); executor; exit 0 ;;
## help "--help" | "--help" ) execute_func=( ${operation_help[@]} ); executor; exit 0 ;;
* ) # selecting defaults. execute_func=( ${operation_help[@]} ); executor; exit 1 ;; esac
3. даем права на запуск
chmod +x debinstall.sh
4. запускаем скрипт, он может потребовать доустановить пакеты - соглашаемся. 5. после установки правим конфигурационный файл /etc/3proxy/3proxy.cfg
Примеры можно посмотреть в папке с исходным кодом: ../3Proxy/cfg