Изменение скорости на коммутаторе Qtech
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
Изменение скорости на коммутаторе Qtech
Добрый день. Нашел в utm5 раздел под названием "Правила Firewall", как я понимаю здесь можно задать триггер, то есть при выполнении определенного события, если выполняются указанные условия, то производится какое-то действие, точнее выполняется какая-либо команда, прописанная в строке "Правила Firewall". Для того чтобы выполнить смену скорости на самом Qtech, мне небходимо выполнить на нем несколько команд:
conf
policy-map P_INET
class C_PORT1
policy 30720 3072 conform-action transmit exceed-action drop
Подскажите пожалуйста как правильно написать эти команды в строке "Правила Firewall"?
conf
policy-map P_INET
class C_PORT1
policy 30720 3072 conform-action transmit exceed-action drop
Подскажите пожалуйста как правильно написать эти команды в строке "Правила Firewall"?
-
- Сообщения: 77
- Зарегистрирован: Пн сен 14, 2009 13:53
- Откуда: Екатеринбург
- Контактная информация:
Re: Изменение скорости на коммутаторе Qtech
Пишете bash/perl/php/python/rubby/etc скрипт.georgepapaskiri писал(а): Подскажите пожалуйста как правильно написать эти команды в строке "Правила Firewall"?
И настраивайте RFW (см. док) на вызов этого скрипта с нужными параметрами на нужные события, которые как раз и настраиваются в этом меню - Правила Firewall.
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
Re: Изменение скорости на коммутаторе Qtech
а на C# можно написать скрипт? и есть примеры вызова скриптов? В документации только описываются значения событий и переменных, но примеров написания правил нету.Nik0n писал(а):Пишете bash/perl/php/python/rubby/etc скрипт.georgepapaskiri писал(а): Подскажите пожалуйста как правильно написать эти команды в строке "Правила Firewall"?
И настраивайте RFW (см. док) на вызов этого скрипта с нужными параметрами на нужные события, которые как раз и настраиваются в этом меню - Правила Firewall.
Re: Изменение скорости на коммутаторе Qtech
да хоть на Паскале....georgepapaskiri писал(а):а на C# можно написать скрипт? и есть примеры вызова скриптов? В документации только описываются значения событий и переменных, но примеров написания правил нету.Nik0n писал(а):Пишете bash/perl/php/python/rubby/etc скрипт.georgepapaskiri писал(а): Подскажите пожалуйста как правильно написать эти команды в строке "Правила Firewall"?
И настраивайте RFW (см. док) на вызов этого скрипта с нужными параметрами на нужные события, которые как раз и настраиваются в этом меню - Правила Firewall.
в конфиге rfw5.cfg,
### firewall_path
## Description: Path to the executable file that performs firewall management.
## Possible values: <name of an executable file>
## Required field
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
Re: Изменение скорости на коммутаторе Qtech
не могли бы вы еще подсказать в каком каталоге этот файл и какое разрешение должно быть у скрипта? а то в visual studio пытался найти подходящее, но что-то не получается.starchik писал(а):да хоть на Паскале....georgepapaskiri писал(а):а на C# можно написать скрипт? и есть примеры вызова скриптов? В документации только описываются значения событий и переменных, но примеров написания правил нету.Nik0n писал(а):Пишете bash/perl/php/python/rubby/etc скрипт.georgepapaskiri писал(а): Подскажите пожалуйста как правильно написать эти команды в строке "Правила Firewall"?
И настраивайте RFW (см. док) на вызов этого скрипта с нужными параметрами на нужные события, которые как раз и настраиваются в этом меню - Правила Firewall.
в конфиге rfw5.cfg,
### firewall_path
## Description: Path to the executable file that performs firewall management.
## Possible values: <name of an executable file>
## Required field
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
Порылся в инете, нашел инфу. Сделал скрипт на питоне (script.py), код скрипта следующий:
подскажите пожалуйста такой момент. Если я правильно понял, то чтобы биллинг запустил скрипт, то в поле "правила Firewall" надо прописать python script.py? Так? Если да то вопрос такой, как мне заставить биллинг передать в этот скрипт значения для переменных скажем host, int_num, speed? Что-то вроде python script.py host="значение переменной" или???
Код: Выделить всё
import getpass
import sys
import telnetlib
HOST = '172.30.1.150'
#user = raw_input("Enter your remote account: ")
password = "admin"
user = "admin"
int_num = raw_input("Enter port num: ")
tn = telnetlib.Telnet(HOST,23,1)
tn.read_until("login: ", 1)
tn.write(user + "\n")
if password:
tn.read_until("Password: ", 1)
tn.write(password + "\n")
tn.write('conf \n')
tn.write('int eth 1/'+int_num+ '\n')
tn.write('exit \n')
tn.write('exit \n')
tn.write('write \n')
#tn.read_until('',5)
tn.write('y \n')
tn.write('exit \n')
data = ''
while data.find('#') == -1:
data = tn.read_very_eager()
print data
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
слегка изменил скрипт:
когда запускаю скрипт следующим образом: python script.py 172.30.1.150 5 скрипт отрабатывает как надо. Попробовал в правилах файерволл создать новое правило, скриншоты прикрепляю, не работает. В чем может быть дело?
https://drive.google.com/open?id=0B_A71 ... 204REt3ZlE
https://drive.google.com/open?id=0B_A71 ... kpHMEpZdEk
Код: Выделить всё
import getpass
import sys
import telnetlib
HOST = sys.argv[1]
port_num = sys.argv[2]
#user = raw_input("Enter your remote account: ")
password = "admin"
user = "admin"
tn = telnetlib.Telnet(HOST,23,1)
tn.read_until("login: ", 1)
tn.write(user + "\n")
if password:
tn.read_until("Password: ", 1)
tn.write(password + "\n")
tn.write('conf \n')
tn.write('policy-map P_INET \n')
tn.write('class C_PORT'+port_num+'\n')
tn.write('policy 20480 2048 conform-action transmit exceed-action drop \n')
tn.write('exit \n')
tn.write('exit \n')
tn.write('exit \n')
tn.write('write \n')
#tn.read_until('',5)
tn.write('y \n')
tn.write('exit \n')
data = ''
while data.find('#') == -1:
data = tn.read_very_eager()
print data
https://drive.google.com/open?id=0B_A71 ... 204REt3ZlE
https://drive.google.com/open?id=0B_A71 ... kpHMEpZdEk
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
тут вообще бывают люди? если да, то подскажите пожалуйста в чем может быть дело? быть может у меня что с конфигурационным файлом не то? Вроде настроил я его как в доке описано:
rfw_name = local (также назван брэндмауер в биллинге)
core_host = 127.0.0.1
core_port = 12758
rfw_login = root (логин используемый при подключении к серверу по ssh)
rfw_password = ****** (пароль используемый при подключении к серверу по ssh)
firewall_type = local
firewall_path=/sbin/ipfw/ (здесь лежит скрипт, который я пытаюсь запустить)
sudo_path=/usr/local/bin/ex (этот параметр я не изменял)
помогите решить проблему, люди добрые.
rfw_name = local (также назван брэндмауер в биллинге)
core_host = 127.0.0.1
core_port = 12758
rfw_login = root (логин используемый при подключении к серверу по ssh)
rfw_password = ****** (пароль используемый при подключении к серверу по ssh)
firewall_type = local
firewall_path=/sbin/ipfw/ (здесь лежит скрипт, который я пытаюсь запустить)
sudo_path=/usr/local/bin/ex (этот параметр я не изменял)
помогите решить проблему, люди добрые.
-
- Сообщения: 77
- Зарегистрирован: Пн сен 14, 2009 13:53
- Откуда: Екатеринбург
- Контактная информация:
Вы вообще ВНИМАТЕЛЬНО читали документацию ?georgepapaskiri писал(а):..
rfw_login = root (логин используемый при подключении к серверу по ssh)
rfw_password = ****** (пароль используемый при подключении к серверу по ssh)
...
помогите решить проблему, люди добрые.
Видимо нет, т.к. зачем-то стали менять не то что не нужно, а да же вредно!
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
вернул их на стандартные, rfw/rfw, такие были до того как я поменял. Не работает все равно. В доке говорится что это "Логин пользователя для доступа к ядру UTM5", а как узнать какой он? Может его кто менял...Nik0n писал(а):Вы вообще ВНИМАТЕЛЬНО читали документацию ?georgepapaskiri писал(а):..
rfw_login = root (логин используемый при подключении к серверу по ssh)
rfw_password = ****** (пароль используемый при подключении к серверу по ssh)
...
помогите решить проблему, люди добрые.
Видимо нет, т.к. зачем-то стали менять не то что не нужно, а да же вредно!
-
- Сообщения: 45
- Зарегистрирован: Чт мар 16, 2017 12:42
Разобрался с проблемой. Если кому пригодится, то описываю что было сделано:
1) А файле /netup/utm5/rfw5.cfg прописал следующее:
rfw_name=local (в настройках FIREWALL в биллинге мой брандмауер назван также)
sudo_path=/usr/bin/python (полный путь к приложению, которое будет запускать мой скрипт. В моем случае это python, поскольку на нем написан мой скрипт)
firewall_path=/sbin/ipfw/script.py (полный путь к самому скрипту, который должен выполняться)
Далее в самом биллинге в правилах Firewall создал правило, где выбрал брандмауер local, указал событие включение интернет и в самих правилах указал 2 переменные - USW_IP и USW_PORT
код скрипта следующий:
1) А файле /netup/utm5/rfw5.cfg прописал следующее:
rfw_name=local (в настройках FIREWALL в биллинге мой брандмауер назван также)
sudo_path=/usr/bin/python (полный путь к приложению, которое будет запускать мой скрипт. В моем случае это python, поскольку на нем написан мой скрипт)
firewall_path=/sbin/ipfw/script.py (полный путь к самому скрипту, который должен выполняться)
Далее в самом биллинге в правилах Firewall создал правило, где выбрал брандмауер local, указал событие включение интернет и в самих правилах указал 2 переменные - USW_IP и USW_PORT
код скрипта следующий:
Код: Выделить всё
import getpass
import sys
import telnetlib
HOST = sys.argv[1]
port_num = sys.argv[2]
#user = raw_input("Enter your remote account: ")
password = "admin"
user = "admin"
tn = telnetlib.Telnet(HOST,23,1)
tn.read_until("login: ", 1)
tn.write(user + "\n")
if password:
tn.read_until("Password: ", 1)
tn.write(password + "\n")
tn.write('conf \n')
tn.write('policy-map P_INET \n')
tn.write('class C_PORT'+port_num+'\n')
tn.write('policy 20480 2048 conform-action transmit exceed-action drop \n')
tn.write('exit \n')
tn.write('exit \n')
tn.write('exit \n')
tn.write('write \n')
#tn.read_until('',5)
tn.write('y \n')
tn.write('exit \n')