Philosophy
- Minimalism
- One script = One task
- Do not disable OS security!
- No control panel = No security problems
- One project = One user
Step by step for CentOS 7
- Install core edition CentOS 7
- Clone project
yum install git mc cd /root git clone https://github.com/faew/linux.feature.git cd /root/linux.feature/script/centos7/ mc - Update system and enable SELinux. System will be reboot.
sh 00-update-system.sh - If the server has no swap file (on a small VPS/VDS with full virtualization).
sh 00.1-add-swap-file.sh - Installing the base utilities and initialize the password vault.
sh 01-install-utils.sh - NTP in the new version
sh 02-install-chrony.sh - Enable firewall, put first network interface into “public” zone.
sh 03-enable-firewall.sh - Protect ssh
sh 04-install-fail2ban.sh - Install Apache with virtualhost template (now only php).
sh 05-install-apache.sh - Installation of the development packages to further compile the code.
sh 06-install-devel.sh - Install php (now 5.4 in OS)
sh 07-install-php.sh - Install mysql (now 5.7), run mysql_secure_installation, save root mysql password
sh 08-install-mysql.sh - Install service for website acceleration
sh 09-install-sphinx.sh sh 10-install-redis.sh sh 11-install-memcached.sh - Install php modules (for compile)
sh 12-install-php-imagick.sh sh 13-install-php-opcache.sh sh 14-install-php-intl.sh sh 15-install-php-suhosin.sh - Install programming languages
sh 16-install-python3.5.sh sh 17-install-ruby2.3.sh - Install FTP
sh 18-install-vsftpd.sh sh 18.1-enable-vsftpd-force-tls.sh - Install postgresql with md5 passwords
sh 19-install-postgresql.sh - Compilation of Museum php versions in cgi mode
sh 20-compile-php-5.2.17.sh sh 21-compile-php-5.1.6.sh sh 22-compile-php-5.3.29.sh sh 23-compile-php-5.0.5.sh sh 24-compile-php-4.4.9.sh - Monitoring agent for zabbix
sh 25-install-zabbix-agent.sh - Install PhpMyAdmin
sh 26-install-phpmyadmin.sh - Install rabbitmq
sh 27-install-rabbitmq.sh - Installing powerDNS with the administrative panel
sh 28-install-pdns.sh sh 29-install-poweradmin.sh - Create new mysql Database. The password will be shown.
sh add-mysql-user.sh user_name_create_as_db_name - Create web user.
sh add-www-user.sh domain.name.without.www # set password for ssh and ftp # home forlder /var/www/domain.name.without.www/ # web root /var/www/domain.name.without.www/htdocs passwd domain.name.without.www