Апр 10

В последние несколько дней по странной случайности выросла популярность VPN- и SOCKS-серверов. Использовать чужие нам, понятное дело, религия не позволяет, поэтому будем разворачивать свой. Купить VPS/VDS с Debian-ом на борту сейчас не представляет вообще никаких сложностей, осталось его только настроить, что тоже элементарно.

SOCKS (сокращение от «SOCKet Secure») — сетевой протокол, который позволяет пересылать пакеты от клиента к серверу через прокси-сервер прозрачно (незаметно для них) и таким образом использовать сервисы за межсетевыми экранами (фаерволами).
Более поздняя версия SOCKS5 предполагает аутентификацию, так что только авторизованные пользователи получают доступ к серверу.

Википедия

VPN, в отличие от SOCKS5, использует шифрование, за счет чего снижается скорость доступа к ресурсам. Именно поэтому там, где нам важнее безопасность, мы будем использовать VPN, а там, где нам важна скорость — SOCKS5-прокси.

Скачиваем и устанавливаем пакет dante:
wget -c http://ppa.launchpad.net/dajhorn/dante/ubuntu/pool/main/d/dante/dante-server_1.4.1-1_amd64.deb
sudo apt-get update
sudo apt-get install gdebi-core mc -y
sudo gdebi dante-server_1.4.1-1_amd64.deb

Последняя версия датирована 2014 годом, но до сих пор пользуется популярностью.
Теперь откроем конфиг и поправим его:
mcedit /etc/danted.conf
Продолжение »

Автор: Johnny Тэги: , , , , , ,


Дек 12

Дано: Перестал синхронизироваться сервер времени на контроллере домена Windows (сбилось время).
При выполнении команды w32tm /resync появляется ошибка The following error occurred: The RPC server is unavailable. (0x800706BA)

Решение: Перерегистрируем, заново настраиваем службу времени и синхронизируем данные следующими командами:

w32tm /unregister
w32tm /register
w32tm /config /manualpeerlist:1.pool.ntp.org,0x1 /syncfromflags:manual /reliable:yes /update
w32tm /resync

где 1.pool.ntp.org — используемый сервер времени

Автор: Johnny Тэги: , , , , ,


Июл 10


Для ускорения загрузки сайта можно использовать кэширование на сервере, включить gzip-сжатие, использовать постоянные HTTP-соединения (keep-alive) или даже использовать CDN, но этого мало — PageSpeed Insights от Google настойчиво предлагает включить для моего сервера кеширование в браузере.

Ну ОК, так и поступим.

Если у вас веб-сервер Nginx, просто пропишите в конфиге:

location ~* ^.+\.(jpg|jpeg|png|gif|ico|js|css|txt|pdf)$ {
root /var/www; # Путь к корню сайта
expires 3d; # кешируем на 3 дня
}

и радуйтесь ускорению. А вот если вы используете Apache, то идите под кат 😉

Продолжение »

Автор: Johnny Тэги: , ,


Сен 10

nginx-apache[Пост из черновиков] Этот пост был написан 14 октября 2012, но в силу ряда причин так и не был опубликован. Исправляю.

Предыстория и предпосылки к переходу

Несколько лет назад дома появился «широкий» Интернет от тогда еще Корбины и вместе с ним появилась возможность/потребность/необходимость в постоянно включенном компе для торрентов, хаба и сайта для локала. Пришлось покупать простенький системник, доставать из кладовки старый монитор, устанавливать Ubuntu и ставить этот комп на кухню, чтобы не шумел и не мешал спать. В итоге (потому что постоянно включен) сейчас это основной комп для работы и развлечений для меня, жены и 4-летней дочки 🙂 Со временем я начал вести блог SarAdmin.RU, который, пожив какое-то время на бесплатном хостинге, перебрался на этот же комп. Так как тут уже крутились веб-проекты для локала, пришлось настраивать виртуальные хосты на Apache.

Время идёт, количество посетителей этого блога постепенно увеличивается и вот уже стало заметно, что компьютер перестал справляться с нагрузкой — детишки Апача кушают проц, всё начинает тормозить. В итоге я решил собрать тихий маломощный системник на Celeron430, естественно, без иксов, закинуть его в кладовку и пусть себе там шумит. Вот только начитавшись статей в Инете, решил попробовать избавиться от Apache в пользу Nginx, заодно описав свои действия — вдруг кому пригодится, да и профи, прочитав, смогут поправить и указать на мои ошибки.

Устанавливаем и настраиваем nginx

Если вдруг на сервере уже установлен Apache, удаляем его
sudo apt-get purge apache2 -y
Продолжение »

Автор: Johnny Тэги: , , , ,


Сен 07

postgresqlM$ в последнее время хочет всё больше денег, с учётом роста курса доллара проблема усугубляется ещё больше, а файловый режим работы базы 1С в 2015 году уже не так хорош как раньше. Поэтому появилась задача перевода файловой базы на PostgreSQl. В настройке есть пара нюансов, про них и расскажу.
Будем считать, что свежая версия Ubuntu Server (на сегодняшний день последняя стабильная LTS-версия 14.04.3 LTS) уже скачана и проставлена, поэтому перейдем к установке и настройке PostgreSQL.

Настроим параметры ядра, отвечающие за выделяемую системе память.

Параметр SHMMAX — это максимум памяти, выделяемой в одном запросе в байтах. Я для PQSQL выделил виртуалку с 10ГБ оперативки, поэтому установлю размер в 8ГБ: kernel.shmmax = 8589934592.

Параметр kernel.shmall – Общее количество доступной разделяемой памяти в страницах. Рассчитывается как shmmax/PAGE_SIZE. Как правило, размер страницы в системе — 4096 байт, уточнить можно запросом в консоли getconf PAGE_SIZE.

Поэтому kernel.shmall = 8589934592/4096 или kernel.shmall = 2097152

echo "kernel.shmmax=8589934592" >> /etc/sysctl.conf
echo "kernel.shmall=2097152" >> /etc/sysctl.conf
sysctl -p

Продолжение »

Автор: Johnny Тэги: , , , , , ,


Авг 14

Итак, дано:
Старый DHCP-сервер SERVER1 со списком зарезервированных IP-адресов, который требуется вывести из эксплуатации.
Новый сервер SERVER2, на котором нужно поднять DHCP-сервер со всеми резервированиями.
Про построчный импорт данных о резервировании мы уже говорили, теперь поговорим про то, как перенести все записи.
На сервере SERVER1 запускаем консоль и пишем там
netsh dhcp server SERVER1.DOMAIN.LOCAL dump > c:\dhcpdump.txt
Затем открываем файл c:\dhcpdump.txt в блокноте и заменяем (Ctrl+H) SERVER1 на SERVER2 в блоке

# ============================================================================
# Начало добавления зарезервированных IP-адресов
# к области 192.168.0.0, сервера SERVER1.DOMAIN.LOCAL
# ============================================================================

Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.1 00228c42bacd "PC-001.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.2 3202a6b123e0 "PC-002.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.3 c8600035a3d3 "PC-003.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.4 1c6f631131d2 "PC-004.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.5 3202a635f121 "PC-005.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.6 00221321a2d1 "PC-006.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.7 002618e26c24 "PC-007.DOMAIN.LOCAL" "" "BOTH"
Dhcp Server \\SERVER1.DOMAIN.LOCAL Scope 192.168.0.0 Add reservedip 192.168.0.8 30263db1fa1b "PC-008.DOMAIN.LOCAL" "" "BOTH"

Если на DHCP-сервере SERVER2 уже настроены все параметры сервера, оставляем в файле только этот блок и сохраняем его. Если нет, можно оставить и другие опции (параметры сервера, параметры области и сама область, привязка к сетевым адаптерам, фильтры и т.д.).

Файл хорошо структурирован и понятен, так что сложностей точно не возникнет.

Затем на сервере SERVER2 пишем в консоли

netsh exec dhcpdump.txt

и радуемся, что не пришлось заводить это всё вручную.

Да, и раз уж мы занялись конфигами DHCP, вот команда для бэкапа и восстановления всей базы:

Бэкап
netsh dhcp server SERVER1.DOMAIN.LOCAL export c:\dhcpdb all

Восстановление
netsh dhcp server SERVER1.DOMAIN.LOCAL import c:\dhcpdb all

Автор: Johnny Тэги: , , , , , , , , , ,


При использовании материалов сайта на других ресурсах прошу оставлять прямую ссылку на оригинал статьи.