mirror of
https://github.com/3proxy/3proxy.git
synced 2026-05-31 13:30:11 +08:00
Unify installation environment
This commit is contained in:
parent
01dad546b7
commit
f0a672b16a
@ -676,8 +676,25 @@ endif()
|
||||
|
||||
# Install configuration files
|
||||
if(NOT WIN32)
|
||||
install(FILES scripts/3proxy.cfg DESTINATION /etc/3proxy)
|
||||
install(FILES scripts/add3proxyuser.sh DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
set(CRYPT_PREFIX "${3PROXY_BINARY_PREFIX}")
|
||||
set(3PROXY_CONFDIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}/3proxy/conf")
|
||||
set(3PROXY_COUNTERDIR "/opt/3proxy")
|
||||
install(DIRECTORY DESTINATION /opt/3proxy)
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/3proxy.cfg.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/3proxy.cfg
|
||||
@ONLY
|
||||
)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/3proxy.cfg DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/3proxy)
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/add3proxyuser.sh.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/add3proxyuser
|
||||
@ONLY
|
||||
)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/add3proxyuser
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
endif()
|
||||
|
||||
# Install service files (systemd, launchd, init.d, or rc.d)
|
||||
@ -736,16 +753,6 @@ if(NOT WIN32)
|
||||
DESTINATION ${SYSTEMD_UNIT_DIR}
|
||||
)
|
||||
|
||||
# Install tmpfiles.d configuration for runtime directory
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/3proxy.tmpfiles.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/3proxy.conf
|
||||
@ONLY
|
||||
)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/3proxy.conf
|
||||
DESTINATION /usr/lib/tmpfiles.d
|
||||
)
|
||||
|
||||
message(STATUS " systemd: YES (${SYSTEMD_UNIT_DIR})")
|
||||
else()
|
||||
# No systemd - install init.d script
|
||||
@ -778,16 +785,14 @@ if(NOT WIN32)
|
||||
message(STATUS " init.d: YES (/etc/init.d)")
|
||||
endif()
|
||||
|
||||
# Create proxy user and group during installation
|
||||
install(FILES scripts/postinstall.sh
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
)
|
||||
# Run postinstall only for direct installs (no DESTDIR)
|
||||
install(CODE "
|
||||
if(\"\$ENV{DESTDIR}\" STREQUAL \"\")
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_INSTALL_FULL_BINDIR}/postinstall.sh
|
||||
COMMAND ${CMAKE_COMMAND} -E env sh ${CMAKE_CURRENT_SOURCE_DIR}/scripts/postinstall.sh ${CMAKE_INSTALL_PREFIX}
|
||||
RESULT_VARIABLE POSTINSTALL_RESULT
|
||||
)
|
||||
endif()
|
||||
")
|
||||
endif()
|
||||
|
||||
|
||||
@ -68,29 +68,39 @@ endif
|
||||
|
||||
include Makefile.inc
|
||||
|
||||
DESTDIR ?=
|
||||
prefix ?= /usr/local
|
||||
BINPREFIX ?= $(prefix)/bin
|
||||
|
||||
install: all
|
||||
if [ ! -d "/usr/local/3proxy/bin" ]; then mkdir -p /usr/local/3proxy/bin/; fi
|
||||
install bin/3proxy /usr/local/3proxy/bin/3proxy
|
||||
install bin/$(CRYPT_PREFIX)crypt /usr/local/3proxy/bin/$(CRYPT_PREFIX)crypt
|
||||
if [ ! -d "$(DESTDIR)$(BINPREFIX)" ]; then mkdir -p $(DESTDIR)$(BINPREFIX)/; fi
|
||||
install bin/3proxy $(DESTDIR)$(BINPREFIX)/3proxy
|
||||
install bin/$(CRYPT_PREFIX)crypt $(DESTDIR)$(BINPREFIX)/$(CRYPT_PREFIX)crypt
|
||||
for f in proxy socks pop3p smtpp ftppr tcppm udppm tlspr; do \
|
||||
if [ -f bin/$(PREFIX)$$f ]; then install bin/$(PREFIX)$$f /usr/local/3proxy/bin/$(PREFIX)$$f; fi; \
|
||||
if [ -f bin/$(PREFIX)$$f ]; then install bin/$(PREFIX)$$f $(DESTDIR)$(BINPREFIX)/$(PREFIX)$$f; fi; \
|
||||
done
|
||||
install scripts/rc.d/3proxy /usr/local/etc/rc.d/3proxy
|
||||
install scripts/add3proxyuser.sh /usr/local/3proxy/bin/
|
||||
if [ -s /usr/local/etc/3proxy/3proxy.cfg ]; then echo /usr/local/3proxy/3proxy.cfg already exists; else install scripts/3proxy.cfg /usr/local/etc/3proxy/; fi
|
||||
if [ ! -d /var/log/3proxy/ ]; then mkdir /var/log/3proxy/; fi
|
||||
touch /usr/local/3proxy/passwd
|
||||
touch /usr/local/3proxy/counters
|
||||
touch /usr/local/3proxy/bandlimiters
|
||||
install -d $(MANDIR)/man8
|
||||
install -m 644 man/3proxy.8 $(MANDIR)/man8/3proxy.8
|
||||
install -d $(DESTDIR)$(prefix)/etc/rc.d/
|
||||
sed -e 's|@CMAKE_INSTALL_FULL_BINDIR@|$(BINPREFIX)|g' -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|$(prefix)/etc|g' scripts/rc.d/3proxy.in > $(DESTDIR)$(prefix)/etc/rc.d/3proxy
|
||||
chmod 755 $(DESTDIR)$(prefix)/etc/rc.d/3proxy
|
||||
sed -e 's|@CMAKE_INSTALL_FULL_BINDIR@|$(BINPREFIX)|g' -e 's|@3PROXY_CONFDIR@|$(prefix)/etc/3proxy/conf|g' -e 's|@CRYPT_PREFIX@|$(CRYPT_PREFIX)|g' scripts/add3proxyuser.sh.in > $(DESTDIR)$(BINPREFIX)/add3proxyuser
|
||||
if [ -s $(DESTDIR)$(prefix)/etc/3proxy/3proxy.cfg ]; then echo $(prefix)/etc/3proxy/3proxy.cfg already exists; else sed -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|$(prefix)/etc|g' -e 's|@3PROXY_CONFDIR@|$(prefix)/etc/3proxy/conf|g' -e 's|@3PROXY_COUNTERDIR@|/opt/3proxy|g' scripts/3proxy.cfg.in > $(DESTDIR)$(prefix)/etc/3proxy/3proxy.cfg; chmod 640 $(DESTDIR)$(prefix)/etc/3proxy/3proxy.cfg; fi
|
||||
if [ ! -d $(DESTDIR)/var/log/3proxy/ ]; then mkdir -p $(DESTDIR)/var/log/3proxy/; fi
|
||||
mkdir -p $(DESTDIR)/opt/3proxy
|
||||
touch $(DESTDIR)$(prefix)/3proxy/passwd
|
||||
touch $(DESTDIR)$(prefix)/3proxy/counters
|
||||
touch $(DESTDIR)$(prefix)/3proxy/bandlimiters
|
||||
install -d $(DESTDIR)$(MANDIR)/man8
|
||||
install -m 644 man/3proxy.8 $(DESTDIR)$(MANDIR)/man8/3proxy.8
|
||||
for f in proxy socks pop3p smtpp ftppr tcppm udppm tlspr; do \
|
||||
if [ -f man/$$f.8 ]; then install -m 644 man/$$f.8 $(MANDIR)/man8/$(PREFIX)$$f.8; fi; \
|
||||
if [ -f man/$$f.8 ]; then install -m 644 man/$$f.8 $(DESTDIR)$(MANDIR)/man8/$(PREFIX)$$f.8; fi; \
|
||||
done
|
||||
install -m 644 man/3proxy_crypt.8 $(MANDIR)/man8
|
||||
install -d $(MANDIR)/man5
|
||||
install -m 644 man/3proxy.cfg.5 $(MANDIR)/man5/3proxy.cfg.5
|
||||
echo Run /usr/local/3proxy/bin/add3proxyuser.sh to add \'admin\' user
|
||||
install -m 644 man/3proxy_crypt.8 $(DESTDIR)$(MANDIR)/man8/$(CRYPT_PREFIX)crypt.8
|
||||
install -d $(DESTDIR)$(MANDIR)/man5
|
||||
install -m 644 man/3proxy.cfg.5 $(DESTDIR)$(MANDIR)/man5/3proxy.cfg.5
|
||||
@if [ "$(DESTDIR)" = "" ]; then \
|
||||
sh scripts/postinstall.sh $(prefix); \
|
||||
fi
|
||||
echo Run $(BINPREFIX)/add3proxyuser to add \'admin\' user
|
||||
|
||||
allplugins:
|
||||
@list='$(PLUGINS)'; for p in $$list; do cp Makefile Makefile.var plugins/$$p; cd plugins/$$p ; make ; cd ../.. ; done
|
||||
|
||||
@ -74,13 +74,13 @@ include Makefile.inc
|
||||
allplugins:
|
||||
@list='$(PLUGINS)'; for p in $$list; do cp Makefile Makefile.var plugins/$$p; cd plugins/$$p ; make ; cd ../.. ; done
|
||||
|
||||
DESTDIR =
|
||||
prefix =
|
||||
exec_prefix = $(prefix)
|
||||
man_prefix = /usr/share
|
||||
chroot_prefix = /usr/local
|
||||
DESTDIR ?=
|
||||
prefix ?=
|
||||
exec_prefix ?= $(prefix)
|
||||
man_prefix ?= /usr/share
|
||||
chroot_prefix ?= /usr/local
|
||||
|
||||
INSTALL = /usr/bin/install
|
||||
INSTALL ?= /usr/bin/install
|
||||
INSTALL_BIN = $(INSTALL) -m 755
|
||||
INSTALL_DATA = $(INSTALL) -m 644
|
||||
INSTALL_OBJS = bin/3proxy \
|
||||
@ -97,12 +97,11 @@ INSTALL_OBJS = bin/3proxy \
|
||||
|
||||
INSTALL_CFG = scripts/3proxy.cfg.chroot
|
||||
INSTALL_CFG_INCHROOT = scripts/3proxy.cfg.inchroot
|
||||
INSTALL_CFG_OBJS = scripts/add3proxyuser.sh
|
||||
|
||||
INSTALL_CFG_OBJS2 = counters bandlimiters
|
||||
|
||||
INSTALL_INITD_SCRIPT = scripts/init.d/3proxy.sh
|
||||
INSTALL_SYSTEMD_SCRIPT = scripts/3proxy.service
|
||||
INSTALL_INITD_SCRIPT = scripts/init.d/3proxy.in
|
||||
INSTALL_SYSTEMD_SCRIPT = scripts/3proxy.service.in
|
||||
|
||||
CHROOTDIR = $(DESTDIR)$(chroot_prefix)/3proxy
|
||||
CHROOTREL = ../..$(chroot_prefix)/3proxy
|
||||
@ -111,8 +110,6 @@ MANDIR8 = $(DESTDIR)$(man_prefix)/man/man8
|
||||
BINDIR = $(DESTDIR)$(exec_prefix)/bin
|
||||
ETCDIR = $(DESTDIR)/etc/3proxy
|
||||
INITDDIR = $(DESTDIR)/etc/init.d
|
||||
RUNBASE = $(DESTDIR)/var/run
|
||||
RUNDIR = $(RUNBASE)/3proxy
|
||||
LOGBASE = $(DESTDIR)/var/log
|
||||
LOGDIR = $(LOGBASE)/3proxy
|
||||
INSTALL_CFG_DEST = $(ETCDIR)/conf
|
||||
@ -122,6 +119,7 @@ install-bin:
|
||||
$(INSTALL_BIN) -d $(BINDIR)
|
||||
$(INSTALL_BIN) -s $(INSTALL_OBJS) $(BINDIR)
|
||||
$(INSTALL_BIN) -s bin/*.ld.so $(CHROOTDIR)/libexec
|
||||
$(INSTALL_BIN) scripts/add3proxyuser.sh.in $(BINDIR)/add3proxyuser
|
||||
|
||||
install-etc-dir:
|
||||
$(INSTALL_BIN) -d $(ETCDIR)
|
||||
@ -132,13 +130,11 @@ install-chroot-dir:
|
||||
$(INSTALL_BIN) -d $(CHROOTDIR)/logs
|
||||
$(INSTALL_BIN) -d $(CHROOTDIR)/count
|
||||
$(INSTALL_BIN) -d $(CHROOTDIR)/libexec
|
||||
chmod -R o-rwx $(CHROOTDIR)
|
||||
|
||||
install-etc-default-config: install-chroot-dir
|
||||
if [ ! -d $(INSTALL_CFG_DEST) ]; then \
|
||||
ln -s $(CHROOTREL)/conf $(INSTALL_CFG_DEST); \
|
||||
$(INSTALL_BIN) $(INSTALL_CFG) $(ETCDIR)/3proxy.cfg; \
|
||||
$(INSTALL_BIN) $(INSTALL_CFG_OBJS) $(INSTALL_CFG_DEST); \
|
||||
$(INSTALL_BIN) $(INSTALL_CFG_INCHROOT) $(INSTALL_CFG_DEST)/3proxy.cfg; \
|
||||
fi
|
||||
|
||||
@ -156,16 +152,13 @@ install-man:
|
||||
for f in proxy socks pop3p smtpp ftppr tcppm udppm tlspr; do \
|
||||
if [ -f man/$$f.8 ]; then $(INSTALL_DATA) man/$$f.8 $(MANDIR8)/$(PREFIX)$$f.8; fi; \
|
||||
done
|
||||
$(INSTALL_DATA) man/3proxy_crypt.8 $(MANDIR8)
|
||||
$(INSTALL_DATA) man/3proxy_crypt.8 $(MANDIR8)/$(CRYPT_PREFIX)crypt.8
|
||||
|
||||
install-init:
|
||||
$(INSTALL_BIN) -d $(SYSTEMDDIR)
|
||||
sed -e 's|@CMAKE_INSTALL_FULL_BINDIR@|$(exec_prefix)/bin|g' -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|/etc|g' $(INSTALL_SYSTEMD_SCRIPT) > $(SYSTEMDDIR)/3proxy.service
|
||||
$(INSTALL_BIN) -d $(INITDDIR)
|
||||
$(INSTALL_BIN) $(INSTALL_INITD_SCRIPT) $(INITDDIR)/3proxy
|
||||
$(INSTALL_BIN) -d $(SYSTEMDDIR)
|
||||
$(INSTALL_DATA) $(INSTALL_SYSTEMD_SCRIPT) $(SYSTEMDDIR)
|
||||
|
||||
install-run:
|
||||
$(INSTALL_BIN) -d $(RUNDIR)
|
||||
|
||||
install-log:
|
||||
$(INSTALL_BIN) -d $(LOGBASE)
|
||||
@ -173,7 +166,7 @@ install-log:
|
||||
ln -s $(CHROOTREL)/logs $(LOGDIR);\
|
||||
fi
|
||||
|
||||
install: install-chroot-dir install-bin install-etc install-log install-man install-run install-init
|
||||
install: install-chroot-dir install-bin install-etc install-log install-man install-init
|
||||
@if [ "$(DESTDIR)" = "" ]; then \
|
||||
sh debian/preinst; \
|
||||
sh debian/postinst; \
|
||||
|
||||
@ -70,29 +70,39 @@ endif
|
||||
|
||||
include Makefile.inc
|
||||
|
||||
DESTDIR ?=
|
||||
prefix ?= /usr/local
|
||||
BINPREFIX ?= $(prefix)/bin
|
||||
|
||||
install: all
|
||||
if [ ! -d "/usr/local/3proxy/bin" ]; then mkdir -p /usr/local/3proxy/bin/; fi
|
||||
install bin/3proxy /usr/local/3proxy/bin/3proxy
|
||||
install bin/$(CRYPT_PREFIX)crypt /usr/local/3proxy/bin/$(CRYPT_PREFIX)crypt
|
||||
if [ ! -d "$(DESTDIR)$(BINPREFIX)" ]; then mkdir -p $(DESTDIR)$(BINPREFIX)/; fi
|
||||
install bin/3proxy $(DESTDIR)$(BINPREFIX)/3proxy
|
||||
install bin/$(CRYPT_PREFIX)crypt $(DESTDIR)$(BINPREFIX)/$(CRYPT_PREFIX)crypt
|
||||
for f in proxy socks pop3p smtpp ftppr tcppm udppm tlspr; do \
|
||||
if [ -f bin/$(PREFIX)$$f ]; then install bin/$(PREFIX)$$f /usr/local/3proxy/bin/$(PREFIX)$$f; fi; \
|
||||
if [ -f bin/$(PREFIX)$$f ]; then install bin/$(PREFIX)$$f $(DESTDIR)$(BINPREFIX)/$(PREFIX)$$f; fi; \
|
||||
done
|
||||
install scripts/rc.d/3proxy /usr/local/etc/rc.d/3proxy
|
||||
install scripts/add3proxyuser.sh /usr/local/3proxy/bin/
|
||||
if [ -s /usr/local/etc/3proxy/3proxy.cfg ]; then echo /usr/local/3proxy/3proxy.cfg already exists; else install scripts/3proxy.cfg /usr/local/etc/3proxy/; fi
|
||||
if [ ! -d /var/log/3proxy/ ]; then mkdir /var/log/3proxy/; fi
|
||||
touch /usr/local/3proxy/passwd
|
||||
touch /usr/local/3proxy/counters
|
||||
touch /usr/local/3proxy/bandlimiters
|
||||
install -d $(MANDIR)/man8
|
||||
install -m 644 man/3proxy.8 $(MANDIR)/man8/3proxy.8
|
||||
install -d $(DESTDIR)$(prefix)/etc/rc.d/
|
||||
sed -e 's|@CMAKE_INSTALL_FULL_BINDIR@|$(BINPREFIX)|g' -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|$(prefix)/etc|g' scripts/rc.d/3proxy.in > $(DESTDIR)$(prefix)/etc/rc.d/3proxy
|
||||
chmod 755 $(DESTDIR)$(prefix)/etc/rc.d/3proxy
|
||||
sed -e 's|@CMAKE_INSTALL_FULL_BINDIR@|$(BINPREFIX)|g' -e 's|@3PROXY_CONFDIR@|$(prefix)/etc/3proxy/conf|g' -e 's|@CRYPT_PREFIX@|$(CRYPT_PREFIX)|g' scripts/add3proxyuser.sh.in > $(DESTDIR)$(BINPREFIX)/add3proxyuser
|
||||
if [ -s $(DESTDIR)$(prefix)/etc/3proxy/3proxy.cfg ]; then echo $(prefix)/etc/3proxy/3proxy.cfg already exists; else sed -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|$(prefix)/etc|g' -e 's|@3PROXY_CONFDIR@|$(prefix)/etc/3proxy/conf|g' -e 's|@3PROXY_COUNTERDIR@|/opt/3proxy|g' scripts/3proxy.cfg.in > $(DESTDIR)$(prefix)/etc/3proxy/3proxy.cfg; chmod 640 $(DESTDIR)$(prefix)/etc/3proxy/3proxy.cfg; fi
|
||||
if [ ! -d $(DESTDIR)/var/log/3proxy/ ]; then mkdir -p $(DESTDIR)/var/log/3proxy/; fi
|
||||
mkdir -p $(DESTDIR)/opt/3proxy
|
||||
touch $(DESTDIR)$(prefix)/3proxy/passwd
|
||||
touch $(DESTDIR)$(prefix)/3proxy/counters
|
||||
touch $(DESTDIR)$(prefix)/3proxy/bandlimiters
|
||||
install -d $(DESTDIR)$(MANDIR)/man8
|
||||
install -m 644 man/3proxy.8 $(DESTDIR)$(MANDIR)/man8/3proxy.8
|
||||
for f in proxy socks pop3p smtpp ftppr tcppm udppm tlspr; do \
|
||||
if [ -f man/$$f.8 ]; then install -m 644 man/$$f.8 $(MANDIR)/man8/$(PREFIX)$$f.8; fi; \
|
||||
if [ -f man/$$f.8 ]; then install -m 644 man/$$f.8 $(DESTDIR)$(MANDIR)/man8/$(PREFIX)$$f.8; fi; \
|
||||
done
|
||||
install -m 644 man/3proxy_crypt.8 $(MANDIR)/man8
|
||||
install -d $(MANDIR)/man5
|
||||
install -m 644 man/3proxy.cfg.5 $(MANDIR)/man5/3proxy.cfg.5
|
||||
echo Run /usr/local/3proxy/bin/add3proxyuser.sh to add \'admin\' user
|
||||
install -m 644 man/3proxy_crypt.8 $(DESTDIR)$(MANDIR)/man8/$(CRYPT_PREFIX)crypt.8
|
||||
install -d $(DESTDIR)$(MANDIR)/man5
|
||||
install -m 644 man/3proxy.cfg.5 $(DESTDIR)$(MANDIR)/man5/3proxy.cfg.5
|
||||
@if [ "$(DESTDIR)" = "" ]; then \
|
||||
sh scripts/postinstall.sh $(prefix); \
|
||||
fi
|
||||
echo Run $(BINPREFIX)/add3proxyuser to add \'admin\' user
|
||||
|
||||
allplugins:
|
||||
@list='$(PLUGINS)'; for p in $$list; do cp Makefile Makefile.var plugins/$$p; cd plugins/$$p ; make ; cd ../.. ; done
|
||||
|
||||
14
debian/postinst
vendored
14
debian/postinst
vendored
@ -1,3 +1,17 @@
|
||||
sed -i -e 's|@CMAKE_INSTALL_FULL_BINDIR@|/bin|g' -e 's|@3PROXY_CONFDIR@|/etc/3proxy/conf|g' -e 's|@CRYPT_PREFIX@|3proxy_|g' /bin/add3proxyuser; \
|
||||
sed -i -e 's|@CMAKE_INSTALL_FULL_BINDIR@|/bin|g' -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|/etc|g' /etc/init.d/3proxy; \
|
||||
sed -i -e 's|@CMAKE_INSTALL_FULL_BINDIR@|/bin|g' -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|/etc|g' /usr/lib/systemd/system/3proxy.service; \
|
||||
|
||||
if [ -d /etc/3proxy ]; then \
|
||||
chmod -R o-rwx /etc/3proxy; \
|
||||
chown -R proxy:proxy /etc/3proxy; \
|
||||
fi
|
||||
|
||||
if [ -d /usr/local/3proxy ]; then \
|
||||
chmod -R o-rwx /usr/local/3proxy; \
|
||||
chown -R proxy:proxy /usr/local/3proxy; \
|
||||
fi
|
||||
|
||||
if /bin/systemctl >/dev/null 2>&1; then \
|
||||
/usr/sbin/update-rc.d 3proxy disable || true; \
|
||||
/usr/sbin/chkconfig 3proxy off || true; \
|
||||
|
||||
@ -1,4 +0,0 @@
|
||||
#!/usr/local/bin/3proxy
|
||||
|
||||
#use standard syslog logging
|
||||
log @3proxy
|
||||
31
scripts/3proxy.cfg.in
Normal file
31
scripts/3proxy.cfg.in
Normal file
@ -0,0 +1,31 @@
|
||||
|
||||
# use standard syslog logging
|
||||
log @3proxy
|
||||
#log /logs/3proxy-%y%m%d.log D
|
||||
#rotate 60
|
||||
|
||||
|
||||
#nscache 65536
|
||||
#nserver 8.8.8.8
|
||||
#nserver 8.8.4.4
|
||||
|
||||
#config @CMAKE_INSTALL_FULL_SYSCONFDIR@/3proxy/3proxy.cfg
|
||||
#monitor @CMAKE_INSTALL_FULL_SYSCONFDIR@/3proxy/3proxy.cfg
|
||||
#monitor @3PROXY_CONFDIR@/passwd
|
||||
|
||||
#counter @3PROXY_COUNTERDIR@/3proxy.3cf
|
||||
|
||||
#users $@3PROXY_CONFDIR@/passwd
|
||||
|
||||
#include @3PROXY_CONFDIR@/counters
|
||||
#include @3PROXY_CONFDIR@/bandlimiters
|
||||
|
||||
#auth strong
|
||||
#deny * * 127.0.0.0/8
|
||||
#allow *
|
||||
#proxy -n
|
||||
#socks
|
||||
#flush
|
||||
#allow admin
|
||||
|
||||
#admin -p8080
|
||||
@ -5,8 +5,10 @@ nserver 8.8.4.4
|
||||
config /conf/3proxy.cfg
|
||||
monitor /conf/3proxy.cfg
|
||||
|
||||
log /logs/3proxy-%y%m%d.log D
|
||||
rotate 60
|
||||
log @3proxy
|
||||
#log /logs/3proxy-%y%m%d.log D
|
||||
#rotate 60
|
||||
|
||||
counter /count/3proxy.3cf
|
||||
|
||||
users $/conf/passwd
|
||||
|
||||
@ -1,19 +0,0 @@
|
||||
[Unit]
|
||||
Description=3proxy tiny proxy server
|
||||
Documentation=man:3proxy(1)
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Environment=CONFIGFILE=/etc/3proxy/3proxy.cfg
|
||||
ExecStart=/bin/3proxy ${CONFIGFILE}
|
||||
ExecReload=/bin/kill -SIGUSR1 $MAINPID
|
||||
KillMode=process
|
||||
Restart=on-failure
|
||||
RestartSec=60s
|
||||
LimitNOFILE=65536
|
||||
LimitNPROC=32768
|
||||
RuntimeDirectory=3proxy
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Alias=3proxy.service
|
||||
@ -7,7 +7,7 @@ After=network.target
|
||||
Type=simple
|
||||
User=proxy
|
||||
Group=proxy
|
||||
Environment=CONFIGFILE=/etc/3proxy/3proxy.cfg
|
||||
Environment=CONFIGFILE=@CMAKE_INSTALL_FULL_SYSCONFDIR@/3proxy/3proxy.cfg
|
||||
ExecStart=@CMAKE_INSTALL_FULL_BINDIR@/3proxy ${CONFIGFILE}
|
||||
ExecReload=/bin/kill -SIGUSR1 $MAINPID
|
||||
KillMode=process
|
||||
|
||||
@ -1,3 +0,0 @@
|
||||
# tmpfiles.d configuration for 3proxy
|
||||
# This creates the runtime directory for 3proxy
|
||||
d /run/3proxy 0755 proxy proxy -
|
||||
@ -1,15 +0,0 @@
|
||||
#!/bin/sh
|
||||
if [ $4 ]; then
|
||||
echo bandlimin $4 $1 >> /etc/3proxy/conf/bandlimiters
|
||||
fi
|
||||
if [ $3 ]; then
|
||||
echo countin \"`wc -l /etc/3proxy/conf/counters|awk '{print $1}'`/$1\" D $3 $1 >> /etc/3proxy/conf/counters
|
||||
fi
|
||||
if [ $2 ]; then
|
||||
echo $1:`/bin/3proxy_crypt $$ $2` >> /etc/3proxy/conf/passwd
|
||||
else
|
||||
echo usage: $0 username password [day_limit] [bandwidth]
|
||||
echo " "day_limit - traffic limit in MB per day
|
||||
echo " "bandwidth - bandwidth in bits per second 1048576 = 1Mbps
|
||||
fi
|
||||
|
||||
14
scripts/add3proxyuser.sh.in
Normal file
14
scripts/add3proxyuser.sh.in
Normal file
@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
if [ $4 ]; then
|
||||
echo bandlimin $4 $1 >> @3PROXY_CONFDIR@/bandlimiters
|
||||
fi
|
||||
if [ $3 ]; then
|
||||
echo countall \"`wc -l @3PROXY_CONFDIR@/counters|awk '{print $1}'`/$1\" D $3 $1 >> @3PROXY_CONFDIR@/counters
|
||||
fi
|
||||
if [ $2 ]; then
|
||||
echo $1:`@CMAKE_INSTALL_FULL_BINDIR@/@CRYPT_PREFIX@crypt $$ $2` >> @3PROXY_CONFDIR@/passwd
|
||||
else
|
||||
echo usage: $0 username password [day_limit] [bandwidth]
|
||||
echo " "day_limit - traffic limit in MB per day
|
||||
echo " "bandwidth - bandwidth in bits per second 1048576 = 1Mbps
|
||||
fi
|
||||
@ -14,7 +14,7 @@
|
||||
# description: 3proxy tiny proxy server
|
||||
|
||||
DAEMON=@CMAKE_INSTALL_FULL_BINDIR@/3proxy
|
||||
CONFIGFILE=/etc/3proxy/3proxy.cfg
|
||||
CONFIGFILE=@CMAKE_INSTALL_FULL_SYSCONFDIR@/3proxy/3proxy.cfg
|
||||
PIDFILE=/var/run/3proxy/3proxy.pid
|
||||
USER=proxy
|
||||
GROUP=proxy
|
||||
|
||||
@ -1,56 +0,0 @@
|
||||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: 3proxy
|
||||
# Required-Start:
|
||||
# Required-Stop:
|
||||
# Should-Start:
|
||||
# Should-Stop:
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Start/stop 3proxy
|
||||
# Description: Start/stop 3proxy, tiny proxy server
|
||||
### END INIT INFO
|
||||
# chkconfig: 2345 20 80
|
||||
# description: 3proxy tiny proxy server
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo Starting 3Proxy
|
||||
|
||||
/bin/mkdir -p /var/run/3proxy
|
||||
/bin/3proxy /etc/3proxy/3proxy.cfg &
|
||||
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL ]
|
||||
;;
|
||||
|
||||
stop)
|
||||
echo Stopping 3Proxy
|
||||
if [ -f /var/run/3proxy/3proxy.pid ]; then
|
||||
/bin/kill `cat /var/run/3proxy/3proxy.pid`
|
||||
else
|
||||
/usr/bin/killall 3proxy
|
||||
fi
|
||||
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL ]
|
||||
;;
|
||||
|
||||
restart|reload)
|
||||
echo Reloading 3Proxy
|
||||
if [ -f /var/run/3proxy/3proxy.pid ]; then
|
||||
/bin/kill -s USR1 `cat /var/run/3proxy/3proxy.pid`
|
||||
else
|
||||
/usr/bin/killall -s USR1 3proxy
|
||||
fi
|
||||
;;
|
||||
|
||||
|
||||
*)
|
||||
echo Usage: $0 "{start|stop|restart}"
|
||||
exit 1
|
||||
esac
|
||||
exit 0
|
||||
|
||||
@ -4,11 +4,12 @@
|
||||
|
||||
set -e
|
||||
|
||||
PREFIX="${1-/usr/local}"
|
||||
|
||||
# Check if user already exists
|
||||
if id proxy >/dev/null 2>&1; then
|
||||
echo "User 'proxy' already exists"
|
||||
exit 0
|
||||
fi
|
||||
else
|
||||
|
||||
echo "Creating proxy user and group..."
|
||||
|
||||
@ -33,7 +34,6 @@ elif command -v dscl >/dev/null 2>&1; then
|
||||
dscl . create /Users/proxy NFSHomeDirectory /var/run/3proxy 2>/dev/null || true
|
||||
else
|
||||
echo "Warning: Could not create proxy user - no suitable user management tool found"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if id proxy >/dev/null 2>&1; then
|
||||
@ -42,4 +42,7 @@ else
|
||||
echo "Warning: Failed to create user 'proxy'"
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
chown -R proxy:proxy ${PREFIX}/etc/3proxy/
|
||||
exit 0
|
||||
|
||||
@ -1,27 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# PROVIDE: 3proxy
|
||||
# REQUIRE: LOGIN DAEMON
|
||||
# KEYWORD: shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="3proxy"
|
||||
rcvar="3proxy_enable"
|
||||
|
||||
command="/usr/local/3proxy/bin/3proxy"
|
||||
pidfile="/var/run/3proxy/${name}.pid"
|
||||
command_args="${3proxy_config:-/usr/local/etc/3proxy/3proxy.cfg}"
|
||||
required_files="${3proxy_config:-/usr/local/etc/3proxy/3proxy.cfg}"
|
||||
|
||||
start_precmd="3proxy_precmd"
|
||||
|
||||
3proxy_precmd()
|
||||
{
|
||||
if [ ! -d /var/run/3proxy ]; then
|
||||
mkdir -p /var/run/3proxy
|
||||
fi
|
||||
}
|
||||
|
||||
load_rc_config $name
|
||||
run_rc_command "$1"
|
||||
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
# PROVIDE: 3proxy
|
||||
# REQUIRE: LOGIN DAEMON
|
||||
# REQUIRE: LOGIN DAEMON NETWORKING
|
||||
# KEYWORD: shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
@ -11,8 +11,8 @@ rcvar="3proxy_enable"
|
||||
|
||||
command="@CMAKE_INSTALL_FULL_BINDIR@/3proxy"
|
||||
pidfile="/var/run/3proxy/${name}.pid"
|
||||
command_args="${3proxy_config:-/etc/3proxy/3proxy.cfg}"
|
||||
required_files="${3proxy_config:-/etc/3proxy/3proxy.cfg}"
|
||||
command_args="${3proxy_config:-@CMAKE_INSTALL_FULL_SYSCONFDIR@/3proxy/3proxy.cfg}"
|
||||
required_files="${3proxy_config:-@CMAKE_INSTALL_FULL_SYSCONFDIR@/3proxy/3proxy.cfg}"
|
||||
command_user="proxy:proxy"
|
||||
|
||||
start_precmd="3proxy_precmd"
|
||||
|
||||
@ -41,12 +41,12 @@ make clean
|
||||
/bin/3proxy_tcppm
|
||||
/bin/3proxy_tlspr
|
||||
/bin/3proxy_udppm
|
||||
/bin/add3proxyuser
|
||||
%config(noreplace) /etc/3proxy/3proxy.cfg
|
||||
/etc/3proxy/conf
|
||||
/etc/init.d/3proxy
|
||||
/usr/lib/systemd/system/3proxy.service
|
||||
%config(noreplace) /usr/local/3proxy/conf/3proxy.cfg
|
||||
%config(noreplace) /usr/local/3proxy/conf/add3proxyuser.sh
|
||||
%config(noreplace) /usr/local/3proxy/conf/bandlimiters
|
||||
%config(noreplace) /usr/local/3proxy/conf/counters
|
||||
/usr/local/3proxy/libexec/*.ld.so
|
||||
@ -66,10 +66,17 @@ fi
|
||||
if [ ! -f /usr/local/3proxy/conf/passwd ]; then \
|
||||
touch /usr/local/3proxy/conf/passwd;\
|
||||
fi
|
||||
chown -R proxy:proxy /usr/local/3proxy
|
||||
chmod 550 /usr/local/3proxy/
|
||||
chmod 550 /usr/local/3proxy/conf/
|
||||
chmod 440 /usr/local/3proxy/conf/*
|
||||
sed -i -e 's|@CMAKE_INSTALL_FULL_BINDIR@|/bin|g' -e 's|@3PROXY_CONFDIR@|/etc/3proxy/conf|g' -e 's|@CRYPT_PREFIX@|3proxy_|g' /bin/add3proxyuser; \
|
||||
sed -i -e 's|@CMAKE_INSTALL_FULL_BINDIR@|/bin|g' -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|/etc|g' /etc/init.d/3proxy; \
|
||||
sed -i -e 's|@CMAKE_INSTALL_FULL_BINDIR@|/bin|g' -e 's|@CMAKE_INSTALL_FULL_SYSCONFDIR@|/etc|g' /usr/lib/systemd/system/3proxy.service; \
|
||||
if [ -d /etc/3proxy ]; then \
|
||||
chown -R proxy:proxy /etc/3proxy; \
|
||||
chmod -R o-rwx /etc/3proxy; \
|
||||
fi
|
||||
if [ -d /usr/local/3proxy ]; then \
|
||||
chown -R proxy:proxy /usr/local/3proxy; \
|
||||
chmod -R o-rwx /usr/local/3proxy; \
|
||||
fi
|
||||
if /bin/systemctl >/dev/null 2>&1; then \
|
||||
/usr/sbin/update-rc.d 3proxy disable || true; \
|
||||
/usr/sbin/chkconfig 3proxy off || true; \
|
||||
@ -84,8 +91,8 @@ fi
|
||||
echo ""
|
||||
echo 3proxy installed.
|
||||
if /bin/systemctl >/dev/null 2>&1; then \
|
||||
/bin/systemctl stop 3proxy.service \
|
||||
/bin/systemctl start 3proxy.service \
|
||||
/bin/systemctl stop 3proxy.service ; \
|
||||
/bin/systemctl start 3proxy.service ; \
|
||||
echo use ;\
|
||||
echo " "systemctl start 3proxy.service ;\
|
||||
echo to start proxy ;\
|
||||
@ -99,10 +106,10 @@ elif [ -x /usr/sbin/service ]; then \
|
||||
echo " "service 3proxy stop ;\
|
||||
echo to stop proxy ;\
|
||||
fi
|
||||
echo " "/usr/local/3proxy/conf/add3proxyuser.sh
|
||||
echo " "/bin/add3proxyuser
|
||||
echo to add users
|
||||
echo ""
|
||||
echo Default config uses Google\'s DNS.
|
||||
echo It\'s recommended to use provider supplied DNS or install local recursor, e.g. pdns-recursor.
|
||||
echo Configure preferred DNS in /usr/local/3proxy/conf/3proxy.cfg.
|
||||
echo run \'/usr/local/3proxy/conf/add3proxyuser.sh admin password\' to configure \'admin\' user
|
||||
echo run \'/bin/add3proxyuser admin password\' to configure \'admin\' user
|
||||
|
||||
Loading…
Reference in New Issue
Block a user