-----Original Message----- From: lms-bounces+bsflip=gmail.com@lists.lms.org.pl [mailto:lms-bounces+bsflip=gmail.com@lists.lms.org.pl] On Behalf Of Dawid Widyna Sent: Friday, January 04, 2008 9:35 PM To: lista użytkowników LMS Subject: Re: [lms] [OT] MT<-> lms
jpk napisał(a):
Możesz mi zdradzić z grubsza w jaki sposób importujesz filtry i inne rzeczy na MT ?
Ja "eksportuję" z serwera z LMS za pośrednictwem SSH. Przy przeładowaniu LMS'a tworzą się skrypty bashowe dla wybranych MT (w lms.ini mam sekcję z ich IP, Loginami/passłami oraz sieciami, które obsługują).
Przykład:
#!/usr/bin/expect -f #konfiguracja systemu MT - wykonywana za pomoca EXPECT #
set timeout 5 spawn ssh admin@192.168.200.1 match_max 100000 expect "*?assword:*" send -- "haslo_mt\r" expect -re ".*" send "\r" expect "] >"
##Interfejs ether1
send "/ ip dhcp-server lease\r" expect "lease>" send "remove [find server=dhcp-ether1]\r" expect ">" send "\r"
send "/ ip firewall filter\r" expect "filter>" send "remove [find in-interface=ether1]\r" expect ">" send "\r" send "/ ip dhcp-server lease\r" expect "lease>" send "add address=192.168.104.16 mac-address=00:19:E0:64:2A:71 server=dhcp-ether1 comment=STR17-5\r" expect "lease>" send "/ ip dns static\r" expect "static>" send "add name=STR17-5 address=192.168.104.16 ttl=1d\r" expect "static>"
send "/ ip firewall filter\r" expect "filter>" send "add chain=forward action=drop src-address=192.168.104.16 src-mac-address=!00:19:E0:64:2A:71 in-interface=ether1 comment=STR17-5 disabled=no\r" expect "filter>"
send "quit\r"
Nie jest to może zbyt eleganckie, ale jak to pisałem, to nie miałem czasu szukać bardziej eleganckich rozwiązań na MT (tzn takich, które coś zmieniają, a nie usuwają stare-tworzą nowe). Można też generować config a potem wysyłać go przez FTP na MT i tam zdalnie odpalać... tyle, że w obecnej sytuacji mam podgląd, jeśli coś pójdzie nie tak przy zmianie konfiguracji.
Śliczne nie jest, ale działa od kilku miesięcy. Jeśli komuś odpowiada takie rozwiązanie, to mogę podesłać na grupę fragment lms.ini oraz sam skrypt, który generuje skrypt EXPECTA (uprzedzam, że perla znałem jeszcze mniej niż teraz, więc nic ślicznego).
pozdrawiam, widynek
_______________________________________________ lms mailing list lms@lists.lms.org.pl http://lists.lms.org.pl/mailman/listinfo/lms
Ja bym radził to bardziej uprościć i łączyć się za pomocą kluczy DSA.
http://wiki.mikrotik.com/wiki/Use_SSH_to_execute_commands_%28DSA_key_login%2 9
Potem tylko sprzężyć lms-mgc do generowanie regułek dla kolejek QUEUES Przykład.
[mgc:mikrotik] outfile = /etc/rc.d/mikrotik outfile_perm = 755 networks = net header_file = /etc/rc.d/dzien allexistnodes = add name="%NAME_dzien" target-addresses=%IP/32 dst-address=0.0.0.0/0 interface=all parent=dzien direction=both priority=8 queue=default-small/default-small limit-at=%UPCEIL000/%DOWNRATE000 max-limit=%UPCEIL000/%DOWNRATE000 total-queue=default-small
w header_file mam
ssh -l admin -i /root/.ssh/id_dsa 192.168.1.200 " /queue simple remove [/queue simple find parent=dzien] /queue simple remove dzien /queue simple add name="dzien" target-addresses=192.168.0.0/16 dst-address=0.0.0.0/0 interface=all parent=none direction=both priority=1 queue=default-small/default-small limit-at=0/0 max-limit=0/0 total-queue=default-small
Ja to stosuje do taryf dziennych I wieczornych dla ludzi z sieci WIFI dużo jeszcze mi brakuje w lms-sie jak możliwość generowania regułek dla odpowiednich grup przez lms-mgc. Czy wykorzystanie nowo dodane typy taryf w wersji 1.11.1 Talus.
Można tez użyć Perla a dokładnie jego moduł EXPECT i tez stworzyć skrypt
#!/usr/bin/perl
use Net::SSH::Expect;
my $ssh = Net::SSH::Expect->new ( host => "host", port => "22", password=> 'haslo, user => 'admin', raw_pty => 0 );
my $login_output = $ssh->login();
$ssh->send("/interface pppoe-server print without-paging\r"); while ( defined ($line = $ssh->read_line()) ) { print $line . "\n"; }
Tylko to już więcej kombinowania :D
Powodzenia
No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.516 / Virus Database: 269.17.13/1209 - Release Date: 2008-01-04 12:05
_______________________________________________ lms mailing list lms@lists.lms.org.pl http://lists.lms.org.pl/mailman/listinfo/lms