Реализация Dinstar DWG SMS API на Node.JS

Сам скрипт для node.JS можно взять здесь:  https://github.com/nchizhov/DINSTAR-DWG-NODEJS-D

Запуск осуществляется командой:

node /path/to/smsdwg.js

Изменение конфигурации осуществляется правкой файла smsdwg.js:

var config =
{
  dwg_port: 12000, //Порт DWG-шлюза
  send_path: '/var/spool/dwgjs/send/', //Папка для отправляемых SMS-сообщений
  income_path: '/var/spool/dwgjs/incoming/', //Папка для принимаемых сообщений
  ussd_send_path: '/var/spool/dwgjs/ussd_send/',  //Папка для отправки USSD-команд
  ussd_income_path: '/var/spool/dwgjs/ussd_incoming/', //Папка для приема USSD-ответов
  run_program: '/etc/local_scripts/radius2.php', //Путь к программе для обработки присылаемых сообщений
  debug: true, //Включение/отключение режима отладки
};

Использование:

1. Формат SMS-сообщения для отправки:

Первая строка - номер телефона
Вторая строка - номер пора для отправки (255 - для отправки через произвольный порт)
Третья и последующие строки - Сообщение в UTF-8 формате

2. Формат USSD-сообщения для отправки:

Первая строка - номер порта для отправки
Вторая строка - USSD-код

3. Принятые сообщения складываются в соответствующие папки в формате eml.

Рубрика: Без рубрики | 15 комментариев

Авторизация PPTP с использованием Mikrotik, FreeRadius MySQL

1. Устанавливаем FreeRadius на Fedora:

yum install freeradius freeradius-mysql

2. Настройка FreeRadius:
2.1. Импорт «скелета» таблицы:

mysql -uroot -p 
> create database freeradius;
mysql -uroot -p freeradius < /etc/raddb/sql/mysql/schema.sql

2.2. Настройка файлов:

cd /etc/raddb

— файл radiusd.conf: расcкомментировать строку $INCLUDE sql.conf
— файл clients.conf:

client <mikrotik> {
    ipaddr = </mikrotik><mikrotik .IP>
    secret = secret
    require_message_authenticator = no
    nastype = other
}

— файл sql.conf указываем:

database =
server =
login =
password =
radius_db =

— файл sites-available/default: расскомментировать везде, где есть sql
2.3. Делаем автозапуск FreeRadius и запускаем:

chkconfig freeradiusd on
service freeradius start

2.4. Добавляем в MySQL таблицы данные:
— radcheck:

username = user
attribute = Cleartext-Password
op = :=
value = pass

— radgroupcheck:

groupname = dynamic
attribute = AuthType
op = :=
value = MS-CHAP

3. Настройка PPTP Server в MikroTik:

/ip pool add name=vpnserverusers range=192.168.0.1-192.168.0.100 next-pool=none
/ppp profile add name=vpnserver use-encryption=yes change-tcp-mss=yes local-address=192.168.0.x remote-address=vpnserverusers only-one=yes
/interface pptp-server server set enabled=yes authentication=mschap2 max-mtu=1460 max-mru=1460 default-profile=vpnserver
/ppp aaa set use-radius=yes accounting=yes
/radius add service=ppp secret=<> address=<RADIUS.ip> authentication-port=1812 accounting-port=1813

4. Ограничение по времени через System->Scheduler

5. Пример ограничения VPN для RDP:

/ip firewall nat add chain=dstnat src-address=DHCP-pool dst-address=RDP-IP protocol=tcp dst-port=3389 action=dst-nat to-address=RDP-IP to-ports=33890
Рубрика: Администрирование | Добавить комментарий

Изменение функционала MMS

Что необходимо добавить/изменить:
1. Проверка существования других модулей в основном классе (Возможно в виде статического метода основного класса)
2. Переписать в модулях Cron всё на ООП — исполнено.
3. Логгирование входа пользователей в систему (Ограничить время сессии?) — исполнено.
4. Возможность управления Cron’ом через админку.
5. Сделать Dialog’и для форм, вместо форм на странице.
6. Написать инсталлятор для системы.
7. Установщик модулей (зависимости от других модулей, запись скелетов таблиц)

Рубрика: Monitoring & Management System | Добавить комментарий