Skip to content

Instantly share code, notes, and snippets.

@riipandi
Last active November 8, 2017 19:33
Show Gist options
  • Save riipandi/5ffb7cb056cc4833fa8b8624d284ee38 to your computer and use it in GitHub Desktop.
Save riipandi/5ffb7cb056cc4833fa8b8624d284ee38 to your computer and use it in GitHub Desktop.
#!/bin/bash
# SSH Daemon
sed -i "s|\("^ClientAliveInterval" * *\).*|\1600|" /etc/ssh/sshd_config
sed -i "s|\("^#ListenAddress" * *\).*|\10.0.0.0|" /etc/ssh/sshd_config
sed -i "s|\("^AllowTcpForwarding" * *\).*|\1yes|" /etc/ssh/sshd_config
sed -i "s|\("^ClientAliveCountMax" * *\).*|\13|" /etc/ssh/sshd_config
sed -i "s|\("^PermitTunnel" * *\).*|\1yes|" /etc/ssh/sshd_config
sed -i "s/#ListenAddress/ListenAddress/" /etc/ssh/sshd_config
# MariaDB
sed -i "s/skip-external-locking//" /etc/mysql/mariadb.conf.d/50-server.cnf
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'bind-address' '0.0.0.0'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'performance_schema' 'On'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'key_buffer_size' '16M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'read_buffer_size' '1M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'read_rnd_buffer_size' '4M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'sort_buffer_size' '1M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'join_buffer_size' '1M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'tmp_table_size' '32M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'max_allowed_packet' '1M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'max_connect_errors' '100'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'max_connections' '100'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'max_heap_table_size' '2M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'wait_timeout' '3600'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'interactive_timeout' '3600'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'query_cache_size' '0'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'query_cache_type' '1'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'query_cache_limit' '2M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'open_files_limit' '100'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'thread_cache_size' '2'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'thread_concurrency' '4'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'query_cache_type' '0'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'table_definition_cache' '400'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'table_open_cache' '256'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'thread_pool_size' '24'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'myisam_sort_buffer_size' '8M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_file_per_table' '1'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_log_file_size' '4M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_buffer_pool_size' '32M'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_log_files_in_group' '2'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_flush_method' 'O_DIRECT'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_buffer_pool_instances' '1'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_thread_concurrency' '0'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_write_io_threads' '8'
crudini --set /etc/mysql/mariadb.conf.d/50-server.cnf 'mysqld' 'innodb_read_io_threads' '8'
# PHP-FPM
find /etc/php/. -name 'php.ini' -exec bash -c 'crudini --set "$0" "PHP" "memory_limit" "256M"' {} \;
find /etc/php/. -name 'php.ini' -exec bash -c 'crudini --set "$0" "PHP" "display_errors" "Off"' {} \;
find /etc/php/. -name 'php.ini' -exec bash -c 'crudini --set "$0" "PHP" "expose_php" "Off"' {} \;
find /etc/php/. -name 'www.conf' -exec bash -c 'crudini --set "$0" "www" "pm" "ondemand"' {} \;
find /etc/php/. -name 'www.conf' -exec bash -c 'crudini --set "$0" "www" "pm.max_children" "50"' {} \;
find /etc/php/. -name 'www.conf' -exec bash -c 'crudini --set "$0" "www" "pm.start_servers" "2"' {} \;
find /etc/php/. -name 'www.conf' -exec bash -c 'crudini --set "$0" "www" "pm.min_spare_servers" "4"' {} \;
find /etc/php/. -name 'www.conf' -exec bash -c 'crudini --set "$0" "www" "pm.max_spare_servers" "8"' {} \;
find /etc/php/. -name 'www.conf' -exec bash -c 'crudini --set "$0" "www" "pm.max_requests" "500"' {} \;
find /etc/php/. -name 'www.conf' -exec bash -c 'crudini --set "$0" "www" "pm.process_idle_timeout" "10s"' {} \;
echo -e '\nMariaDB and PHP-FPM was configured!\n'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment