Програмирование

15 Январь 2012

Поиск и загрузка торрентов с rutracker.org на Synology DS

Опубликовано в Блог, Програмирование

Torrents
Качаем архивчик

  1. Устанавливаем rutrackerorg.dlm: Download Station → Settings → BT Search → Add. И включаем его;
  2. Включаем Web Station (если он еще не включен): Control Panel → Web Services → Web Applications → Enable Web Station;
  3. В каталоге web в корневом каталоге Synology DS создаем папку /ds/rutracker.org;
  4. Копируем туда файлы proxy.php и search.php. Прописываем в файле proxy.php логин и пароль для входа на трекер;

  5. Идем в Download Station и вводим в поле поиска название интересующего нас фильма/сериала/еще чего-нибудь. Выбираем из списка нужный файл. Нажимаем Download Immediately.

08 Январь 2012

Хостинг на дому. Часть четвертая. VPN

Опубликовано в Блог, Молескин, Програмирование

Настройка VPN на NAS

  1. Идем в Start → Package Center → Available и устанавливаем VPN Center. Включаем его.
  2. Идем в Start → VPN Center.
  3. Затем в Settings → PPTP указываем (для iOS устройств):
    • Enable PPTP VPN server
    • Dynamic IP address: 10.0.7.0
    • Maximum connection number: 5
    • Authentication: MS-CHAP v2
    • Encryption: Require MMPE (40/128 bit)
    • MTU: 1400
  4. Затем в Settings → OpenVPN указываем (для десктопных клиентов):
    • Enable Open VPN server
    • Dynamic IP address: 10.0.8.0
    • Maximum connection number: 5
    • Enable compression on VPN link
    • И нажимаем кнопку «Export configuration», скачиваем полученный архив.
    • Жмем OK.
  5. Идем в настройки роутера и прокидываем порты (TCP:1723 и UDP:1194) с роутера на DS, как в настройке веб-хостинга.

В скаченном архиве в файле readme.txt есть вся необходимая информация по настройке VPN клиентов под тремя основными системами.
Для Mac настройка выглядит так:

Устанавливаем OpenVPN клиент для Mac

  1. OpenVPN клиент для OS X называется Tunnelblick. Скачиваем отсюда http://code.google.com/p/tunnelblick/ и устанавливаем.
  2. Запускаем Tunnelblick.
  3. Нажимаем Create and open configuration folder; откроется окно Finder’а с папкой конфигурации (оставляем папку открытой).
  4. Открываем openvpn.ovpn с помощью какого-нибудь редактора (например, TextMate) и заменяем YOUR_SERVER_IP на публичный IP DiskStation (например, 74.125.224.72).
    • Если ты используешь роутер, то укажи IP роутера.
    • Убери # перед «redirect-gateway» что бы направить весь клиентский трафик (включая веб трафик) через VPN сервер.
  5. Скопируй файлы openvpn.ovpn и ca.crt в папку конфигурации Tunnelblick.
  6. Нажимаем на иконку тоннеля в менюбаре и выбираем Connect VPN.
  7. Теперь мы в любой сети, как у себя дома.
  8. В Finder → Go → Connect to Server. Вводим адрес сервера, например: afp://10.0.1.111 и выбираем нужную сетевую папку.

Настройка iOS устройств.

  1. Settings → General → Network → VPN → Add VPN Configuration…
  2. Выбираем:
    • PPTP
    • Description: DS
    • Server: внешний IP адрес или домен, подключеный к DS
    • Account: admin, например
    • RSA SecurID: OFF
    • Password: пароль от аккаунта
    • Encription Level: Auto
    • Send All Traffic: OFF
  3. Включаем VPN.

04 Ноябрь 2011

Sape – приложение для iPhone

Опубликовано в Блог, iOS, Молескин, myApps, Apple Stuff, Програмирование, Дизайн, Графика

Вчера вышло в свет моё приложение для iPhone — Sape. Как не трудно догадаться, оно предназначено для работы с системой размещения ссылок Sape.

Sape app for iPhone

Первая версия стоит три бакса и поддерживает основные функции вебмастера. Вторая версия будет стоить на три бакса дороже и будет поддерживать функционал оптимизатора. Дальше-больше, до окончания проекта еще далеко.

Теперь о процессе написания. API сапы реализовано на должном уровне, не смотря на то, что есть некоторые недоработки. Я связался с разработчиками и получил обещания пофиксить проблемы и оптимизировать некоторые функции для мобильных устройств.

Стандартный интерфейс айФон-приложения был сохранен, однако каждый элемент был с любовью перерисован и оптимизирован, что бы приложение радовало глаз при каждом его открытии.

На разработку первой версии ушло примерно 100 часов чистого времени. Фуууух!

Работа над следующей большой версией начнётся через неделю. Так же вероятно, будет выпущен багфикс релиз, если первые пользователи столкнуться с какими-нибудь проблемами.

Есть предложения по рекламе приложения? Пиши на электронную почту, буду рад обсудить.

Download Sape app

26 Сентябрь 2011

Хостинг на дому. Часть третья. Почтовый сервер

Опубликовано в Блог, Молескин, Програмирование

Продолжая тему домашнего хостинга расскажу про настройку почты для твоего домена.
В Synology есть встроенный мэйлсервер, использующий Roundcube интерфейс. И все бы было супер, если бы не одно «но». Все письма отправленные с твоего ящика на DiskStation будут отправляться в спам любым почтовым сервисом (проверено на gmail, yandex, seznam). Скорее всего из-за того что IP адрес не whitelisted. Получается, что внутренний ящик подходит лишь для внутреннего мониторинга и отправки критических мэйлов от сервисов.

Простой выход из этой ситуации: Google и Yandex бесплатно предоставляют свои сервера для корпоративной почты. Единственное, что нужно сделать — это подтвердить домен и изменить DNS записи для почтовых серверов.

Для своей почты я выбрал Google, т. к. я привык к их почтовому интерфейсу и на iOS устройствах почта настраивается в два тапа.


Настройка Google Apps

  • Идем на страницу Google Apps и указываем свой домен;
  • Заполняем одну не хитрую форму;
  • Потом другую;
  • Жмем Next -> Next -> Загружаем в корень сайта предложенную для верификации вебстраницу и подтверждаем, что мы хозяева домена;
  • Потом создаем еще аккаунты если нужно;
  • Идем в настройки домена и изменяем DNS записи:
    • {твой-домен}. MX 1 ASPMX. L. GOOGLE.COM.
    • {твой-домен}. MX 5 ALT1.ASPMX. L. GOOGLE.COM.
    • {твой-домен}. MX 5 ALT2.ASPMX. L. GOOGLE.COM.
    • {твой-домен}. MX 10 ASPMX2.GOOGLEMAIL.COM.
    • {твой-домен}. MX 10 ASPMX3.GOOGLEMAIL.COM.
    • mail.{твой-домен}. CNAME ghs.google.com.
  • После внесения изменений идем на https://www.google.com/a/cpanel/{твой-домен}/CustomUrl?s=mail;
  • Включаем кастом имэйл, напимер: http://mail.go-cz.ru;

Через пару часов, когда обновятся DNS записи почта начнет ходить в новый Google ящик.

В следующем выпуске: настройка VPN на Synology DiskStation.

PS В настойках гуглопочты есть возможность импорта старых электронных писем.

14 Сентябрь 2011

Хостинг на дому. Часть вторая. Виртуальный хостинг

Опубликовано в Обучение, Блог, Молескин, Joomla, Програмирование

Итак, я обзавелся Synology DS211 и трех терабайтным диском.

Synology DS211

После ночного форматирования, проверки диска и апдэйта DSM, DiskStation был готов к работе.

Для начала я создал несколько учетных записей, для пользователей сервера. Параллельно запустил прилагаемый к серверу диск, который сам мне все настроил. И в Finder’е в Shared у меня появился DiskStation.

Опущу все остальные настройки и перейду сразу к переезду сайтов.

Для всех последующих действий необходим внешний статический IP адрес


Указание статического IP

  • Идем в Control Panel → System → Network;
  • Выбираем Network Interface → LAN → Use manual configuration → IP address: (например 10.0.1.111) → OK. Screenshot

Настройка роутера

Первым делом необходимо настроить порты. Если твой роутер не попал в список рекомендуемых роутеров, как это произошло у меня, то тебе придется настраивать порты вручную. Если у тебя роутер из списка, DiskStation все сделает за тебя: Control Panel → Router Configuration → etc.

У меня AirPort Extereme. Сейчас расскажу, как его настроить:

  • Открываем AirPort Utility;
  • Выбираем Manual Setup;
  • Идем в Internet → NAT; Screenshot
  • Чекаем Enable NAT Port Mapping Protocol;
  • Нажимаем Configure Port Mappings…
  • Нажимаем +;
  • Вводим значение внешнего порта (например 80), вводим IP DiskStation’а (например 10.0.1.201), вводим значение внутреннего порта (например 200). Таблица внутренних портов Synology;
  • Так я промапил TCP: 80 → 200 для попадания на вебсайт, TCP: 3306 → 3306 для MySQL базы; Screenshot
  • Жмем Update.

Расчистка места для сайтов

  • Идем в Control Panel → Network Services → Web Services;
  • Чекаем Enable Web Station и Enable MySQL;
  • Жмем OK;
  • Нажимаем кнопку Virtual Host. Здесь мы укажем c какого хостнэма в какую папку перенаправлять;
  • В моем случае: go-cz | go-cz.ru | HTTP | 200 и go-cz | www.go-cz.ru | HTTP | 200; Screenshot
  • После этого в папке web появится папка go-cz в которую мы положим пустой index.html файл с красным фоном;
  • Зайдем на 10.0.1.111/go-cz для проверки. Screenshot

Настройка MySQL

  • Идем в Start → Package Center;
  • В Available выбираем phpMyAdmin;
  • Устанавливаем;
  • Запускаем;
  • Теперь по адресу 10.0.1.111/phpMyAdmin у тебя живет phpMyAdmin;
  • Логин: root, пароля нет. Его нужно сразу сделать;
  • phpMyAdmin доступен лишь внутри сети, залогиниться извне не получится.

Перенос сайта на Joomla

Для безболезненного переноса сайта воспользуемся компонентом Akeeba Backup, который сделает копию сайта вместе с базой.

  • Устанавливаем Акибу; Screenshot
  • Идем в настройки;
  • Изменяем способ архивирования на ZIP; Screenshot
  • Сохраняем;
  • Делаем резервное копирование; Screenshot
  • Скачиваем получившийся архив;
  • Копируем его в папку для вебсайта (в моем случае web/go-cz);
  • Распаковываем и удаляем красный index.html; Screenshot
  • Заходим на 10.0.1.111/go-cz и видим Akeeba Backup Installer;
  • Жмем Next; Screenshot
  • Указываем данные новой базы:
    • localhost
    • root
    • пароль
    • название базы
    Screenshot
  • Указываем названия сайта и админовский пароль;
  • Удаляем папку installation;
  • Проверяем. Screenshot

Изменение DNS записей

Тут все зависит от твоего провайдера. Нужно изменить A запись домена с того что было (например, 123.456.789.000) на внешний IP адрес твоего роутера (например, 147.258.369.000). И через несколько часов сайт начнет загружаться из твоей комнаты.

В следующем выпуске я расскажу о настройке мэйлсервера.

PS: Проблема с /blog и /photo

Если на сайте есть путь /blog или /photo, то эти страницы не будут отображаться. Это связано с тем, что у Synology в конфиге аппача они зарезервированы для PhotoStation. Тащем-то.

Решение проблемы:

  • Включаем SSH. Control Panel → Network Services → Terminal;
  • Чекаем Enable SSH services;
  • Открываем Terminal;
  • Логинимся на DS (например, Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. ) и вводим пароль;
  • Копипастим: vi /usr/syno/apache/conf/extra/httpd-autoindex.conf-user;
  • Откроется реактор vi. Жмем i;
  • Жмем стрелку вниз и ставим # перед каждой строкой где упоминаются алиасы или редиректы для photo и blog;
    Приблизительно так:
    AliasMatch ^/photo$ "/usr/syno/synoman/phpsrc/photo"
    Alias /photo/ "/usr/syno/synoman/phpsrc/photo/"
    Alias /photosrc/ "/var/services/photo/"
    Alias /webdefault/ "/usr/syno/synoman/phpsrc/web/"
    # AliasMatch ^/blog$ "/usr/syno/synoman/phpsrc/blog/"
    # Alias /blog/ "/usr/syno/synoman/phpsrc/blog/"
    # RedirectMatch ^/blog/include/v(.*) /blog/include/get_video.php?$1
  • Жмем Esc, печатаем :x и жмем Return;
  • Рестартим апач копипастой: /usr/syno/etc.defaults/rc.d/S97apache-user.sh restart;
  • Проверяем.