И так я приобрёл новый хостинг. Дали голый centos без какой-либо поддержки софтварной. С чего начнём?
Первое что приходит в голову - установить mc т.к. я привык к панелькам и командная строка меня не прикалывает. Самый простой и пока единственный известный мне способ это yum:
yum install mc
Далее нам надо apach и mysql:
yum install mysql mysql-server
chkconfig --levels 235 mysqld on /etc/init.d/mysqld start
mysql_secure_installation
yum install httpd
chkconfig --levels 235 httpd on /etc/init.d/httpd start
https://webtatic.com/packages/php55/
CentOS/RHEL 7.x:
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install php55w php55w-opcache
yum install php55w php55w-common php55w-fpm
Ещё мне понадобились MB-String
yum install php55w-mbstring
Далее нужно доставить необходимые библиотеки. Первое кажется pdo:
yum install php55w-mysql
Далее GD-адаптер для всяких там thumbnail-сов:
yum install php55w-gd
Ещё мне надо работать с Excel, для этого надо установить расширение
yum -y install php55w-xml
после установки php надо перезапустить apach
/etc/init.d/httpd restart
или
service httpd restart
Ещё нужно установить временную зону, а то апач варнингами закидает
mcedit /etc/php.ini:
[Date] date.timezone = Europe/Moscow
Выкладываем сайт. Самый лучший способ - это rsync, но так сложилось что мне лениво его настраивать на винде, может когдань-дь настрою :) Поэтому второе что приходит в голову - закачать на сервер архив, ставим zip.
yum install zip yum install unzip
yum install make
Настраиваем гит:
yum install git yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel
Указываем имя пользователя в гите:
git config --global user.name "Your Name Here" # Sets the default name for git to use when you commit
Email:
git config --global user.email "your_email@example.com" # Sets the default email for git to use when you commit
#todo - надо будет завершить настройку гита
Ещё нам надо прописать новое имя сервера. В дальнейшем для настройки почты - нужно чтобы имя сервера соответствовало существующему домену, иначе говорят что кроме gmail - никто не примет эти письма.
Для этого надо изменить параметр HOSTNAME в файле network
mcedit /etc/sysconfig/network
sudo hostnamectl –static set-hostname doc13.ru hostnamectl status
Довольно интересная дока по настройке почты
Настройка почты:
yum install sendmail sendmail-cf -y
chkconfig --level 345 sendmail on
/etc/init.d/sendmail start
sed -i -e "s/^LOCAL_DOMAIN.*$/LOCAL_DOMAIN(\`${HOSTNAME}\')dnl/g" /etc/mail/sendmail.mc
make -C /etc/mail
/etc/init.d/sendmail restart
yum install ntp chkconfig ntpd on ntpdate pool.ntp.org service ntpd start
yum install vsftpd
По окончании установки отредактируем конфиг нашего будущего FTP сервера
mcedit /etc/vsftpd/vsftpd.conf
Конфиг файла довольно легко читаем. Большинство параметров так и оставляем без изменений. Ниже я укажу лишь то, что нам нужно отредактировать или добавить.
anonymous_enable=NO
Запрещаем анонимным пользователям использовать наш сервер.
chroot_local_user=YES
Добавляем эту запись в конфиг, что бы запереть пользователя в своей домашней директории
На этом, все операции с конфигом закончены. Запускаем наш сервис
service vsftpd start
Добавляем его в «автозагрузку»
chkconfig vsftpd on
Теперь, нам необходимо добавить пользователя который, собственно и будет использоваться для подключения к FTP.
useradd FTPuser
(где FTPuser - ваш пользователь для FTP)
Задаем пароль для этого пользователя
passwd FTPuser
И напоследок, немного «поколдуем» над правами этого пользователя. Ведь нам совсем не нужно, что бы этот юзер входил на сервер по SSH. Поэтому внесем изменения в файл /etc/passwd
mcedit /etc/passwd
Находим в этом файле следующую запись
FTPuser:x:501:501::/home/FTPuser:/bin/bash
И заменяем /bin/bash на
/sbin/nologin
Здесь же мы можем поменять домашний каталог этого пользователя (/home/FTPuser) на любой другой (например /VAR/FTP)
В итоге получаем следующий файл
FTPuser:x:501:501::/home/FTPuser:/sbin/nologin
Вот и всё. Сохраняем файл и идем проверять FTP.
iptables -I INPUT 1 -i eth0 -p tcp --dport 111 -j DROP iptables -I INPUT 1 -i eth0 -p udp --dport 111 -j DROP
====