centos 7.x настройки по нашему вкусу

system:

yum install epel-release
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install mc aspell-en
yum install jwhois wget curl nc traceroute nmap bind-utils net-tools conntrack-tools denyhosts fail2ban ntp
yum install unrar p7zip zip unzip
yum install atop htop iftop dstat iperf httperf collectl
yum install lsof etckeeper strace vim bash-completion diff patch

выключим selinux:
setenforce 0
sed -i -e 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

cat > /etc/sysctl.d/vm_tuning.conf << EOF
vm.vfs_cache_pressure = 50
vm.swappiness = 10
EOF

cat > /etc/sysctl.d/ipv6_disable.conf << EOF
net.ipv6.conf.all.disable_ipv6 = 1
EOF

cat > /etc/security/limits.d/san_limits.conf << EOF
* soft nproc 65535
* hard nproc 65535
* soft nofile 100000
* hard nofile 100000
#root soft nofile unlimited
#root hard nofile unlimited
EOF


## Отключаем  firewalld
systemctl disable firewalld.service
systemctl stop firewalld.service
# firewall-cmd --permanent --zone=public --add-service=http
#firewall-cmd --reload

## Устанавливаем iptables:
yum install iptables iptables-utils iptables-services
systemctl enable iptables.service
systemctl start iptables.service


## nginx:
yum install http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx
systemctl enable nginx.service
systemctl start nginx.service


## postgresql:
yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
yum update
yum install --enablerepo=pgdg96 postgresql-server postgresql
systemctl enable postgresql.service

# psql -d postgres

создаем супер пользователя и пароль
# CREATE role opensourcedbms LOGIN PASSWORD 'opensourcedbms' SUPERUSER;
После чего выходим
# \q

Теперь нужно сделать стандартные настройки Postgres
# vi /var/lib/pgsql/9.2/data/postgresql.conf
Расскоментируем строку #listen_addresses = ‘localhost’ и изменим ее на #listen_addresses = ‘*’
И настроим файл pg_hba.conf
# vi /var/lib/pgsql/9.2/data/pg_hba.conf
Я для проверки работы БД оставляю раскомментированными такие строки
Host all all 0.0.0.0/0 trust
Host all all ::1/128 trust
То есть коннект принимается с любых адресов и без пароля, потом не забудьте это исправить.
После настройки советую изменить trust на md5, пускать только локальные подключения к базе и в виде исключения прописать ваш IP адрес с которого можно подключатся к базе и удаленно, если IP динамический и нужно прямое подключение к базе то оставьте 0.0.0.0/0

После чего
# service postgresql-9.2 restart

И если у вас запущем фаервол нужно добавить в него такую запись
# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT


## php-fpm:
yum --enablerepo=remi,remi-php74 install php-fpm php-opcache php-pecl-apcu php-cli php-pear php-pdo php-mysql php-mysqli php-mysqlnd php-pgsql php-pecl-mongo php-pecl-sqlite php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml
systemctl enable php-fpm.service
systemctl start php-fpm.service


## mysql
$ yum install http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
$ yum install mysql-community-server mysql-utilities

# неплохая конфигурация MySQL 5.7

$ wget -P /etc/my.cnf.d/ https://raw.githubusercontent.com/morgo/mysql-compatibility-config/master/mysql-57/mysql-57-new-applications.cnf 

$ service mysqld start

# получить временный пароль от учетки root, он пригодится для команды ниже
$ grep "temporary password" /var/log/mysqld.log | awk {' print $NF '}

$ mysql_secure_installation