Archive

Archive for the ‘System administration’ Category

Настройка и запуск NTP-сервера time.erdees.ru

November 22nd, 2012 No comments

В сети куча серверов времени, в том числе супер-точных, вроде stratum-1, которые синхронизируются с GPS или атомных часов. Так же есть stratum-2 серверы, которые обновляются с нескольких stratum-1 серверов, а в свою очередь, существуют stratum-3 серверы, которые обновляются c stratum-2 и так далее. Ну, вы поняли. Ан-нет, всех все равно тянет поднять свой сервер. Причин может быть несколько: либо в локалку нужно время раздать, либо политики безопасности не разрешают обновляться с публичных серверов, либо простое любопытство… В любом случае, настроить NTP-сервер будет полезно.

Ставим необходимые компоненты:

# aptitude install ntp ntpdate

После установки, сразу будет запущен сервер ntpd, однако, его еще предстоит настроить.

# nano  /etc/default/ntpdate

В строке

NTPDATE_USE_NTP_CONF=yes

Меняем значение на “no”, этим самым говоря, что бы сервера ntp брались из файла /etc/ntp.conf

Далее редактируем основной файл конфигурации ntp:

# nano /etc/ntp.conf

Приводим имеющийся конфиг-файл к виду:

driftfile /var/lib/ntp/ntp.drift
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
# Список серваков для синхронизации
server ntp.ix.ru
server 0.ru.pool.ntp.org
server 1.ru.pool.ntp.org
server 2.ru.pool.ntp.org
server 3.ru.pool.ntp.org
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
disable auth # Отрубаем аутефикацию

Обратите внимание, что в моем списке серверов для обновления, ntp-серверы stratum-1 и stratum-2, что делает мой получившийся сервер полноценным stratum-2. Небольшое замечание – если Вы не собираетесь раздавать время на весь интернет, то не обновляйтесь с серверов stratum-1, так как они сильно загружены.

Далее проверяем состояние нашего сервера:

# ntpdate -q <ntp.yourserver.org>

У меня высветилось вот такое:

server 109.238.243.55, stratum 2, offset 0.133643, delay 0.02890
22 Nov 08:39:28 ntpdate[27496]: adjust time server 109.238.243.55 offset 0.133643 sec

А это значит, что я получил полноценный stratum-2 сервер 🙂

Стоит подметить, что с первых минут, сервер может работать некорректно, поскольку для начала ему нужно правильным образом синхронизироваться самому, а уж после, разрешить синхронизироваться клиентам. Время это может варьироваться от 15 минут до нескольких часов.

Так же, если у вас сразу не получилось, можно дополнительно проверить:

# ntpq -p

Получился такой вывод:

remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*ntp.ix.ru       .PPS.            1 u    -  256  377    2.056    0.109   0.133
+c249.colo.hc.ru 195.54.192.50    3 u  187  256  377    1.745    0.159   0.163
80.90.180.140   .INIT.          16 u    - 1024    0    0.000    0.000   0.000
+195.239.199.18  62.117.76.142    2 u  240  256  377    3.142   -0.754   0.044
-93.186.100.118  85.114.26.194    2 u  262  256  377   13.434    3.776   0.104

Данная команда вывела мне статус вышестоящих серверов, их stratum и прочую информацию. Результат данной статьи – NTP-сервер time.erdees.ru 🙂 Синхронизируйтесь на здоровье.

 

Скрипт для добавления площадок с сайтами. Centos 6 + apache + nginx .

July 1st, 2012 1 comment

Всем доброго времени суток. Выкладываю простенький скрипт для автоматизации добавления площадок на сервер с centos, apache, nginx.
Для начала не забудьте включить поддержку acl для файловой системы в файле /etc/fstab и перезагрузиться, либо, перемонтировать раздел . Текст скрипта под катом.

Read more…

SOCKS5 прокси через ssh-туннель при помощи putty: часть 1

June 23rd, 2012 5 comments

 

ssh, как известно, очень мощный инструмент: помимо удобного доступа к терминалу удаленных машин и передачи файлов, ssh еще умеет делать туннели. Один из небольших примеров мы разберем сегодня с Вами – при помощи сервера с ssh сделаем ssh-туннель, к которому подключимся и будем использовать в качестве socks-прокси. Сегодня мы будем делать это в Windows, объектом следующей статьи будет проделывание того же самого, но уже нативно, в Linux. Read more…

Настройка pptpd в Debian и CentOS: часть первая

June 22nd, 2012 2 comments

 

В этой статье мы будем настраивать на нашем сервере VPN-демон pptpd.

VPN (англ. Virtual Private Network — виртуальная частная сеть) — обобщённое название технологий, позволяющих обеспечить одно или несколько сетевых соединений (логическую сеть) поверх другой сети (например, Интернет). Несмотря на то, что коммуникации осуществляются по сетям с меньшим неизвестным уровнем доверия (например, по публичным сетям), уровень доверия к построенной логической сети не зависит от уровня доверия к базовым сетям благодаря использованию средств криптографии (шифрования, аутентификации, инфраструктуры открытых ключей, средств для защиты от повторов и изменений передаваемых по логической сети сообщений). (c) Wikipedia Read more…

Внедрение nginx на примере работающего сервера с Centos 6.2

April 7th, 2012 1 comment

Сегодня будем рассматривать оптимизацию посредством внедрения nginx .

Изначальные условия: работающий сервер на centos 6.2, на котором стоит apache+php+mysql и несколько расширений и модулей для php, на которых мы заостряться не будем. На сервере крутится ~25 сайтов настроенных как virtual hosts.

Появилась необходимость настроить nginx как frontend и apache как backend соответственно. Последняя стабильная версия nginx оказалась в репозитории epel, который надо подключать отдельно. К сожалению там не оказалось по умолчанию некоторых модулей, и было принято решение собирать nginx самостоятельно. Для удобства, а так же в целях удобства администрирования было решено собирать rpm из src.rpm. Это даст нам возможность пересобрать пакет, если нас что-то не устроит, безболезненно его удалить, а так же не упустить никаких зависимостей пакета. В пакетных дистрибутивах, будь то rpm-based или deb-based, всегда рекомендуется установка из пакетов.

Для начала подключим репозиторий EPEL командой:

# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm

# rpm –import http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL

Затем включим репозиторий с пакетами исходников, отредактировав файл /etc/yum.repos.d/epel.repo

# nano /etc/yum.repos.d/epel.repo

В секции epel-source меняем значение enabled=1 .

Далее установим пакеты необходимые для сборки:

# yum install yum-utils rpmdevtools gcc make

Скачиваем исходники пакета:

# yumdownloader –source nginx

Пакет скачается в директорию в которой мы находимся. Установим его:

# rpm –ivh nginx -1.0.14-1.el6.src.rpm

Не стоит пугаться сообщений вида:

warning: user mockbuild does not exist – using root

warning: group mockbuild does not exist – using root

Для нашей задачи эти уведомления никакой роли не играют. Ошибки здесь тоже никакой нет.

Установим зависимости исходников для сборки:

# yum-builddep nginx -1.0.14-1.el6.src.rpm

У нас появилась папка rpmbuild, а в ней папка SPECS, а в ней nginx.spec, отредактируем его:

# nano ~/rpmbild/SPECS/nginx.spec

Редактируем по своему желанию, а можем и оставить как есть.

Приступаем к сборке:

# rpmbuild -ba ~/rpmbuild/SPECS/nginx.spec

# cd ~/rpmbuild/RPMS/x86_64/

# ls –l

А вот и наш готовый пакет. Устанавливаем:

# rpm -ivh nginx-1.0.14-1.el6.x86_64.rpm

Первая часть закончена. Остается настроить.

Read more…