diff --git a/README.md b/README.md index a8927c4..72e526c 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ The following command will install all required packages: ``` apt-get --no-install-recommends install apt-transport-tor aspell bzip2 clamav-daemon clamav-freshclam clamav-milter composer curl dovecot-imapd dovecot-pop3d git dnsmasq haveged hunspell iptables libsasl2-modules locales-all logrotate mariadb-server nano nginx-full nodejs postfix postfix-mysql \ php7.3-bcmath php7.3-bz2 php7.3-cli php7.3-curl php7.3-dba php7.3-enchant php7.3-fpm php7.3-gd php7.3-gmp php7.3-imap php7.3-intl php7.3-json php7.3-mbstring php7.3-mysql php7.3-opcache php7.3-pspell php7.3-readline php7.3-recode php7.3-soap php7.3-sqlite3 php7.3-tidy php7.3-xml php7.3-xmlrpc php7.3-xsl php7.3-zip \ -php-apcu php-gnupg php-imagick quota quotatool rsync sasl2-bin ssh subversion tor unzip vim vsftpd wget yarn zip && apt-get --no-install-recommends install adminer +php-apcu php-gnupg php-imagick quota quotatool rsync sasl2-bin ssh subversion tor unzip vim vsftpd wget yarn zip ``` Note that both, debian and the torproject have hidden service package archives, so you may want to edit /etc/apt/sources.list to load from those instead: @@ -110,9 +110,10 @@ mount -o remount /home quotacheck -cu /home quotaon /home ``` -For web base database administration, check out the latest phpmyadmin: +For web base database administration, check out the latest phpmyadmin and adminer: ``` cd /var/www/html/ && git clone -b STABLE https://github.com/phpmyadmin/phpmyadmin/ && cd phpmyadmin && composer install --no-dev && yarn +cd /var/www/html/ && git clone https://github.com/vrana/adminer/ && cd adminer && git submodule update --init ``` Once installed create a mysql user for phpmyadmin and cofigure it in `/var/www/html/phpmyadmin/config.inc.php` and fill `$cfg['blowfish_secret']` with random characters: diff --git a/var/www/common.php b/var/www/common.php index dd51bf3..a93d2c5 100644 --- a/var/www/common.php +++ b/var/www/common.php @@ -6,7 +6,7 @@ const DBPASS='MY_PASSWORD'; // Database password const DBNAME='hosting'; // Database const PERSISTENT=true; // Use persistent database conection true/false const DBVERSION=15; //database layout version -const CAPTCHA=0; // Captcha difficulty (0=off, 1=simple, 2=moderate, 3=extreme) +const CAPTCHA=1; // Captcha difficulty (0=off, 1=simple, 2=moderate, 3=extreme) const ADDRESS='dhosting4xxoydyaivckq7tsmtgi4wfs3flpeyitekkmqwu4v4r46syd.onion'; // our own address const CANONICAL_URL='https://hosting.danwin1210.me'; // our preferred domain for search engines const SERVERS=[ //servers and ports we are running on @@ -90,16 +90,16 @@ server { } } location /adminer { - root /usr/share/adminer; + root /var/www/html/adminer; location ~ \.php$ { include snippets/fastcgi-php.conf; - fastcgi_param DOCUMENT_ROOT $document_root; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param DOCUMENT_ROOT /html/adminer; + fastcgi_param SCRIPT_FILENAME /html/adminer$fastcgi_script_name; fastcgi_pass unix:/run/php/7.3-adminer; } } location /externals/jush/ { - root /usr/share/adminer; + root /var/www/html/adminer; } location /nginx/ { root /var/log/; @@ -317,9 +317,9 @@ $torrc="ClientUseIPv6 1 ClientUseIPv4 1 SOCKSPort 0 MaxClientCircuitsPending 1024 -NumEntryGuards 9 -NumDirectoryGuards 9 -NumPrimaryGuards 9 +NumEntryGuards 15 +NumDirectoryGuards 15 +NumPrimaryGuards 15 "; $stmt=$db->prepare('SELECT onions.onion, users.system_account, onions.num_intros, onions.enable_smtp, onions.version, onions.max_streams, onions.enabled FROM onions LEFT JOIN users ON (users.id=onions.user_id) WHERE onions.instance = ? AND onions.enabled IN (1, -2) AND users.id NOT IN (SELECT user_id FROM new_account) AND users.todelete!=1;'); $stmt->execute([$key]); diff --git a/var/www/setup.php b/var/www/setup.php index 723c633..2fb6aeb 100644 --- a/var/www/setup.php +++ b/var/www/setup.php @@ -237,13 +237,14 @@ group = www-data listen = /run/php/$version-adminer listen.owner = www-data listen.group = www-data +chroot = /var/www pm = dynamic pm.max_children = 25 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 3 php_admin_value[mysqli.allow_persistent] = On -php_admin_value[open_basedir] = /usr/share/adminer:/tmp +php_admin_value[open_basedir] = /html/adminer:/tmp "; if(!file_exists("/etc/php/$version/fpm/pool.d/")){ mkdir("/etc/php/$version/fpm/pool.d/", 0755, true);