Install PHPMyAdmin locally as distributions ship outdated version
This commit is contained in:
25
README.md
25
README.md
@ -17,17 +17,25 @@ If you are on Ubuntu, add the following PPA:
|
|||||||
```
|
```
|
||||||
LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
|
LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
|
||||||
```
|
```
|
||||||
On debian stable this may be worth a look: https://deb.sury.org/
|
On debian this may be worth a look: https://deb.sury.org/
|
||||||
|
|
||||||
To get the latest tor version, you should follow these instructions to add the official tor repository for your distribution: (https://www.torproject.org/docs/debian)
|
To get the latest tor version, you should follow these instructions to add the official tor repository for your distribution: (https://www.torproject.org/docs/debian)
|
||||||
|
|
||||||
To get the latest mariadb version, you should follow these instructions to add the official tor repository for your distribution: (https://downloads.mariadb.org/mariadb/repositories/)
|
To get the latest mariadb version, you should follow these instructions to add the official tor repository for your distribution: (https://downloads.mariadb.org/mariadb/repositories/)
|
||||||
|
|
||||||
|
Add yarn + nodejs to our repositories:
|
||||||
|
```
|
||||||
|
apt-key adv --recv 1655A0AB68576280
|
||||||
|
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
|
||||||
|
echo "deb https://dl.yarnpkg.com/debian/ stable main" >> /etc/apt/sources.list
|
||||||
|
echo "deb https://deb.nodesource.com/node_11.x sid main" >> /etc/apt/sources.list
|
||||||
|
```
|
||||||
|
|
||||||
The following command will install all required packages:
|
The following command will install all required packages:
|
||||||
```
|
```
|
||||||
apt-get --no-install-recommends install apt-transport-tor aspell clamav-daemon clamav-freshclam clamav-milter composer curl dovecot-imapd dovecot-pop3d git dnsmasq haveged hunspell iptables locales-all logrotate mariadb-server nano nginx-full postfix postfix-mysql \
|
apt-get --no-install-recommends install apt-transport-tor aspell clamav-daemon clamav-freshclam clamav-milter composer curl dovecot-imapd dovecot-pop3d git dnsmasq haveged hunspell iptables locales-all logrotate mariadb-server nano nginx-full 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 \
|
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 \
|
||||||
phpmyadmin php-apcu php-gnupg php-imagick quota quotatool rsync sasl2-bin ssh subversion tor unzip vim vsftpd wget 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 && apt-get --no-install-recommends install adminer
|
||||||
```
|
```
|
||||||
|
|
||||||
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:
|
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:
|
||||||
@ -100,6 +108,19 @@ mount -o remount /home
|
|||||||
quotacheck -cu /home
|
quotacheck -cu /home
|
||||||
quotaon /home
|
quotaon /home
|
||||||
```
|
```
|
||||||
|
For web base database administration, check out the latest phpmyadmin:
|
||||||
|
```
|
||||||
|
cd /var/www/html/ && git clone -b STABLE https://github.com/phpmyadmin/phpmyadmin/ && cd phpmyadmin && composer install --no-dev && yarn
|
||||||
|
```
|
||||||
|
|
||||||
|
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:
|
||||||
|
```
|
||||||
|
mysql
|
||||||
|
CREATE USER 'phpmyadmin'@'%' IDENTIFIED BY 'MY_PASSWORD';
|
||||||
|
GRANT ALL PRIVILEGES ON phpmyadmin.* TO 'phpmyadmin'@'%';
|
||||||
|
FLUSH PRIVILEGES;
|
||||||
|
quit
|
||||||
|
```
|
||||||
|
|
||||||
For web based mail management grab the latest squirrelmail and install it in `/var/www/html/squirrelmail`:
|
For web based mail management grab the latest squirrelmail and install it in `/var/www/html/squirrelmail`:
|
||||||
```
|
```
|
||||||
|
@ -65,7 +65,7 @@ server {
|
|||||||
try_files $uri $uri/ =404;
|
try_files $uri $uri/ =404;
|
||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
include snippets/fastcgi-php.conf;
|
include snippets/fastcgi-php.conf;
|
||||||
fastcgi_param SCRIPT_FILENAME html$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME /html$fastcgi_script_name;
|
||||||
fastcgi_pass unix:/var/run/php/7.3-hosting;
|
fastcgi_pass unix:/var/run/php/7.3-hosting;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -80,7 +80,7 @@ server {
|
|||||||
root /usr/share;
|
root /usr/share;
|
||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
include snippets/fastcgi-php.conf;
|
include snippets/fastcgi-php.conf;
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME /html$fastcgi_script_name;
|
||||||
fastcgi_pass unix:/run/php/7.3-phpmyadmin;
|
fastcgi_pass unix:/run/php/7.3-phpmyadmin;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
48
var/www/html/phpmyadmin/config.inc.php
Normal file
48
var/www/html/phpmyadmin/config.inc.php
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* This is needed for cookie based authentication to encrypt password in
|
||||||
|
* cookie. Needs to be 32 chars long.
|
||||||
|
*/
|
||||||
|
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Servers configuration
|
||||||
|
*/
|
||||||
|
$i = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* First server
|
||||||
|
*/
|
||||||
|
$i++;
|
||||||
|
|
||||||
|
/* Authentication type */
|
||||||
|
$cfg['Servers'][$i]['auth_type'] = 'cookie';
|
||||||
|
/* Server parameters */
|
||||||
|
$cfg['Servers'][$i]['host'] = 'localhost';
|
||||||
|
$cfg['Servers'][$i]['extension'] = 'mysqli';
|
||||||
|
/* Optional: User for advanced features */
|
||||||
|
$cfg['Servers'][$i]['controluser'] = 'phpmyadmin';
|
||||||
|
$cfg['Servers'][$i]['controlpass'] = 'YOUR_PASSWORD';
|
||||||
|
/* Optional: Advanced phpMyAdmin features */
|
||||||
|
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
|
||||||
|
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
|
||||||
|
$cfg['Servers'][$i]['relation'] = 'pma__relation';
|
||||||
|
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
|
||||||
|
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
|
||||||
|
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
|
||||||
|
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
|
||||||
|
$cfg['Servers'][$i]['history'] = 'pma__history';
|
||||||
|
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
|
||||||
|
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
|
||||||
|
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
|
||||||
|
$cfg['Servers'][$i]['recent'] = 'pma__recent';
|
||||||
|
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';
|
||||||
|
$cfg['Servers'][$i]['users'] = 'pma__users';
|
||||||
|
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
|
||||||
|
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
|
||||||
|
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
|
||||||
|
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
|
||||||
|
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
|
||||||
|
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
|
||||||
|
|
||||||
|
$cfg['TempDir'] = '/tmp';
|
@ -194,13 +194,17 @@ group = www-data
|
|||||||
listen = /run/php/$version-phpmyadmin
|
listen = /run/php/$version-phpmyadmin
|
||||||
listen.owner = www-data
|
listen.owner = www-data
|
||||||
listen.group = www-data
|
listen.group = www-data
|
||||||
|
chroot = /var/www
|
||||||
pm = dynamic
|
pm = dynamic
|
||||||
pm.max_children = 25
|
pm.max_children = 25
|
||||||
pm.start_servers = 2
|
pm.start_servers = 2
|
||||||
pm.min_spare_servers = 1
|
pm.min_spare_servers = 1
|
||||||
pm.max_spare_servers = 3
|
pm.max_spare_servers = 3
|
||||||
php_admin_value[mysqli.allow_persistent] = On
|
php_admin_value[mysqli.allow_persistent] = On
|
||||||
php_admin_value[open_basedir] = /etc/phpmyadmin:/usr/share/php:/usr/share/phpmyadmin:/var/lib/phpmyadmin:/tmp
|
php_admin_value[upload_tmp_dir] = /tmp
|
||||||
|
php_admin_value[soap.wsdl_cache_dir] = /tmp
|
||||||
|
php_admin_value[session.save_path] = /tmp
|
||||||
|
php_admin_value[open_basedir] = /html/phpmyadmin:/tmp
|
||||||
[squirrelmail]
|
[squirrelmail]
|
||||||
user = www-data
|
user = www-data
|
||||||
group = www-data
|
group = www-data
|
||||||
|
Reference in New Issue
Block a user