Цена вопроса

Минимальная стоимость серверов на DO – 5$/мес., а у CM – 3,6$/мес.

Оплатить DO можно только через пластиковую карту и PayPal, а CM можно оплатить через WebMoney, YandexMoney, Qiwi, пластиковой картой и другими способами.

Основные фичи и используемые приемы

Выбор образа системы однозначен – только Debian 7 64 bit.

Так как оба сервиса DO и CM присылают первоначальные пароли на Email, желательно сразу-же после первого захода на новый VPS сменить пароль на свой.

Для минимализации используемых систем, при вызове apt-get install можно использовать дополнительный ключ —no-install-recommends, который позволяет не устанавливать дополнительное ПО.

Конфигурационные файлы и редактор

Первые пакеты, которые желательно сразу уставить – это система контроля версий конфигурационных файлов и текстовый редактор. В данном примере это git, etckeeper и mc :

sudo apt-get install --no-install-recommends git etckeeper mc

После установки пакетов необходимо скачать и активировать скрипт для ежечасного отслеживания изменений в конфигурационных файлах, выполнив команды :

cd /etc/cron.hourly
git clone ...
service cron restart

Настройка ssmtp

Пример конфигурационного файла /etc/ssmtp/ssmtp.conf для работы с локальным MX :

# Config file for sSMTP sendmail
#
root=root
mailhub=smtp.domain.my
hostname=server.domain.my
FromLineOverride=NO

Пример конфигурационного файла /etc/ssmtp/ssmtp.conf для работы с Gmail :

# Config file for sSMTP sendmail
#
root=myname@gmail.com
mailhub=smtp.gmail.com:587
hostname=server.domain.my
rewriteDomain=gmail.com
UseSTARTTLS=Yes
UseTLS=Yes
AuthUser=myname@gmail.com
AuthPass=mypass
FromLineOverride=Yes

Пример конфигурационного файла /etc/ssmtp/ssmtp.conf для работы с Yandex :

# Config file for sSMTP sendmail
#
root=myname@yandex.ru
mailhub=smtp.yandex.ru:465
hostname=server.domain.my
rewriteDomain=yandex.ru
UseSTARTTLS=Yes
UseTLS=Yes
AuthUser=myname@yandex.ru
AuthPass=mypass
FromLineOverride=Yes

Обновление системы и удаление неиспользуемых пакетов

Во время первых заходов на VPS имеет смысл заменить полноценный почтовый сервер на простой релей, обновить систему, а так-же удалить неиспользуемые пакеты (nfs, dhcp и т.д) и архивы :

sudo apt-get install ssmtp bsd-mailx
sudo dpkg --purge nfs-common rpcbind libtirpc1
sudo dpkg --purge exim4 exim4-base exim4-config exim4-daemon-light mutt procmail
sudo apt-get update && apt-get upgrade && apt-get clean
sudo apt-get autoremove

Настройка имени сервера и DNS

Для настройки имени сервера откройте фаил /etc/hostname и впишите имя

sudo mcedit /etc/hostname
sudo mcedit /etc/hosts
sudo service hostname.sh start

Отключение поддержки IPv6 на сервере

В большинстве случаев на серверах DO и CM имеет смысл отключить поддержку IPv6.

В файле /etc/hosts удалить все строки, относящиеся к IPv6

В файле /etc/sysctl.conf добавить строки :

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1

В файле /etc/ssh/sshd_config раскоментировать строку :

ListenAddress 0.0.0.0

После этого перезагрузить сервер или выполнить команды :

sysctl -p
service ssh restart

Посмотреть, какие порты и протоколы используются программами на сервере :

netstat -pan
lsof -i

Создание ключей для SSH

Создание swap

Микро-сервера на DO и CM имеют достаточно мало памяти. Для того, что-бы немного облегчить им жизнь при увеличивающейся нагрузке, можно создать и подключить swap :

sudo dd if=/dev/zero of=/home/swap-tmp bs=1024 count=1024K
sudo mkswap /home/swap-tmp
sudo swapon /home/swap-tmp
echo "/home/swap-tmp swap swap defaults 0 0" | sudo tee -a /etc/fstab

Выполнив команду free можно проверить подключение и использование swap :

zig@server:/home/zig$ free
             total       used       free     shared    buffers     cached
Mem:        508828     502448       6380          0       4788     453888
-/+ buffers/cache:      43772     465056
Swap:      1048572          0    1048572

Установка програмного обеспечения

Nginx + PHP

sudo apt-get install --no-install-recommends nginx php5-fpm fcgiwrap php5
service nginx restart

Nagios

sudo apt-get install --no-install-recommends nagios3
service nagios3 restart

NagMap

sudo mkdir -p /var/www
sudo cd /etc/www/
sudo git clone https://github.com/hecko/nagmap.git
sudo chown -R www-data.www-data nagmap

Сборка OpenWRT
pre. sudo apt-get install —no-install-recommends build-essential libncurses5-dev zlib1g-dev gawk unzip subversion rsync



Published

18 October 2014

Tags