niniejszym donoszę, że nieco przerobiony lms 1.1.4 tanith został
wdrożony z sukcesem w SMI SolipseNet.
dla potrzeb sieci używamy z powodzeniem lmsowego interfejsu, przy czym
backend korzystający z postgresa działa w oparciu o istniejący od
półtora roku system bazodanowy i aplikacje korzystających tegoż.
sam frontend jest napisany w sposób umożliwiający łatwą rozbudowę.
przygotowywane są "moduły" obsługujące konta na serwerze (w oparciu o
pam_pgsql), publiczne ip (nat 1:1), firewalla, aliasów pocztowych
(postfix), v-hostów www (apache) oraz "refid" (ograniczone możliwości
administracyjne: możliwość zarządzania kontami rodzin przez
"odpowiedzialnego" członka stowarzyszenia: zmiana haseł, quoty, etc).
dostosowanie zapytań w formacie definiowanym przez LMS.class zostało
wykonane w oparciu o odrębną SCHEMA dla użytkownika lms oraz odpowiednie
views z możliwością update'u w oparciu o RULES. gwarantuje to zachowanie
dawnej struktury bazy (stare aplikacje klienckie i brak konieczności
konwersji danych) i zapobiega całkowitemu przepisywaniu LMS.class
(możliwość upgrade'u do nowej wersji).
na szczególne wyróżnienie zasługują istniejące moduły (z cvs) do
wystawiania faktur oraz dynamicznie generowana mapa sieci.
usunięta została niepotrzebna przy działającej implementacji funkcja
restartu i statystyk (odrębny system prowadzenia statystyk).
lista wspieranych aplikacji:
- autoryzacja pam (przez pam_pgsql)
- konta shellowe
- konta pocztowe (pop3, imap, smtp w/ sasl login)
- samba (synchronizacja przez pam_pwexport)
- squid (logowanie do proxy spoza sieci)
- ftp
- nntp
- /etc/passwd (przez skrypt synchronizujący reagujący na zmiany
w bazie przez zdarzenia notify)
- aliasy i v-hosty pocztowe (w tym automatycznie tworzone aliasy
typu imie.nazwisko(a)slp.pl, przez dict-pgsql)
- named (automatyczne tworzenie wpisów dns/revdns dla komputerów
w sieci, przez api postgresqla w powerdns)
- v-hosty www (w tym automatycznie tworzone konta
www.użytkownik.slp.pl wraz z wpisami do dns, przez mod_perl
(tag <Perl>) i DBD::Pg)
- generowanie wpisów iptables (przez demona obsługującego
zdarzenia notify)
- dhcpd (przez demona obsługującego zdarzenia notify przy użyciu
interfejsu OMAPI (moduł DHCPCTL))
- squid (blokowanie dostępu odłączonym komputerom i wyświetlanie
ważnych dla sieci ogłoszeń przez perlowe skrypty rewrite z
obsługą DBD::Pg)
jeszcze raz dziękuję developerom za przygotowanie przemyślanej i spójnej
aplikacji!
--
:|[ kondi.net ]|:::::::::::::::::::::::::::::::::::|[ 2:480/133@fidonet.org ]|:
Beware the jabberwocky! +carroll
Witam.
> 1) pg_connect() nie obsługuje przypadku, kiedy user, hasło lub nazwa
> bazy jest pusta. autoryzacja w ten sposób jest możliwa: default user to
> ten który uruchamia webserver, hasło może być puste (TRUST), domyślna
> baza danych to taka sama jak username.
Tak jak napisałem - do tej pory index.php miał w nosie czy jest to pusta,
czy też unsetnięta wartość. Teraz, jeżeli będzie pusta, czyli np.
user=
To zostanie przepuszczone '' dalej. Więc dopiero całkowite pominięcie
niektórych[1] opcji w lms.ini spowoduje ustawienie wartości domyślnych.
[1] konkretnie opcji 'user', 'host', 'database', 'password'.
> patch:
Trochę inaczej zrobiłem (dodane do repo):
diff -u -r1.11 LMSDB_driver_postgres.class.php
--- lib/LMSDB_driver_postgres.class.php 12 Sep 2003 22:22:52 -0000 1.11
+++ lib/LMSDB_driver_postgres.class.php 11 Oct 2003 03:43:47 -0000
@@ -41,7 +41,14 @@
function _driver_connect($dbhost,$dbuser,$dbpasswd,$dbname)
{
- if($this->_dblink = pg_connect(($host != '' ? 'host='.$dbhost : '' ).' user='.$dbuser.' password='.$dbpasswd.' dbname='.$dbname))
+ $cstring = join(' ',array(
+ ($dbhost != '' ? 'host='.$dbhost : ''),
+ ($dbuser != '' ? 'user='.$dbuser : ''),
+ ($dbpasswd != '' ? 'password='.$dbpasswd : ''),
+ ($dbname != '' ? 'dbname='.$dbname : '')
+ ));
+
+ if($this->_dblink = pg_connect($cstring))
{
$this->_dbhost = $dbhost;
$this->_dbuser = $dbuser;
--
Łukasz Jarosław Mozer
http://www.baseciq.org
mailto: lukasz(a)rulez.pl
Witam.
> witam listę,
> właśnie jestem w trakcie przerabiania lmsa do swoich potrzeb (SMI
> SolipseNet). na początek duże podziękowania za kawał dobrej roboty
> jeśli chodzi o front-end bo backend mi się kompletnie nie podoba :)
Panie i Panowie - mamy maintainera wersjii 1.9.x, protoplasty serii 2.0.x
;-)
--
Łukasz Jarosław Mozer
http://www.baseciq.org
mailto: lukasz(a)rulez.pl
Witam.
Są jakieś jaja z podłączaniem urządzeń do siebie - poprostu lipa - nie
chce.
BTW, lexx, prosiłem Cię byś zmienił nazwenictwo *computers na *nodes...
Kolejna sprawa - a może by tak połączenia co do portu robić? Przykład.
deviceid(int) | port(int) | remote(int)
Albo jakoś tak. Fakt - nadmiarowość danych... Ale... Co sądzicie?
(ps. Warden, oszczędź sobie tekstu 'netdevice' sux).
--
Łukasz Jarosław Mozer
http://www.baseciq.org
mailto: lukasz(a)rulez.pl
Witam.
> Mantis generally sux ;-P
Pozwól że się zniżę z poziomem wypowiedzi do Ciebie:
"Sux to cię robił".
(c) Neas, pl.irc i okolice.
Dobranoc Panu.
--
Łukasz Jarosław Mozer
http://www.baseciq.org
mailto: lukasz(a)rulez.pl
Witam.
> --- lms.orig/lib/LMSDB_driver_postgres.class.php Fri Oct 3 01:25:53 2003
> +++ lms/lib/LMSDB_driver_postgres.class.php Fri Oct 10 21:40:14 2003
/cut/
I co patchu jak i tak index.php wrzuci swoje domyślne wartości. O
problemie wiem ale jakoś czasu brakuje żeby rozwiązać.
> 2) force_ssl nie zadziała kiedy HTTP_HOST jest inny niż adres wpisywany
> przez usera. dzieje się tak wtedy, kiedy serwer z lmsem (np. biegający z
> innymi uprawieniami niż ten dla użytkowników) stoi za proxy
> (apache/squid). należałoby wspomnieć w lms.ini o RewriteRule, albo w
> ogóle przyjąć tę opcję jako bardziej "generic".
Nie nadążam - HTTP_HOST to właśnie ten co jest wpisywany przez usera.
> 3) czy twór pt. lms-arpd nie mógłby być zastąpiony przez net-snmp?
> wszystkie interesujące nas informacje można odczytać przez określonego
> miba, np.:
Jak pewnie nie doczytałeś - jest to eksperyment.
> statyczne:
> [root@vorax new]# snmpwalk vorax public
> at.atTable.atEntry.atPhysAddress.7.1.192.168.5.9
> at.atTable.atEntry.atPhysAddress.7.1.192.168.5.9 = Hex: 00 40 D0 11 C0 32
> dynamiczne:
> [root@vorax new]# snmpwalk vorax public
> at.atTable.atEntry.atPhysAddress.7.1.62.111.232.4
> at.atTable.atEntry.atPhysAddress.7.1.62.111.232.4 = Hex: 00 60 08 61 F8 C5
No tak, teraz pytanie - co łatwiej - odpalic jeden prosty skrypt czy
skonfirugować snmp i okolice? Jest to dosyć kłopotliwa zabawa.
> 4) czy bts (mantis) wykorzystuje jakiś js na ekranie błędów? jeśli tak
> to ów js namiętnie wysypuje mi firebirda (0.6.1, win2k)...
A tego to nie wiem. Tutaj jedyne co mogę powiedzieć to 'SOA#1'... Misie
przeróżne, Mozilla 1.4, Opery, Konqerory - w tych mi to działa.
--
Łukasz Jarosław Mozer
http://www.baseciq.org
mailto: lukasz(a)rulez.pl
konrad rzentarzewski wrote:
> 4) czy bts (mantis) wykorzystuje jakiś js na ekranie błędów? jeśli tak
> to ów js namiętnie wysypuje mi firebirda (0.6.1, win2k)...
Mantis generally sux ;-P
--
Pozdrawiam,
Radosław 'Warden' Antoniuk
GG: 260746 | http://debian.black.pl | 6BONE: MNT-WARDEN
witam listę,
właśnie jestem w trakcie przerabiania lmsa do swoich potrzeb (SMI
SolipseNet). na początek duże podziękowania za kawał dobrej roboty
jeśli chodzi o front-end bo backend mi się kompletnie nie podoba :)
kwestie, które wyszły podczas instalacji:
1) pg_connect() nie obsługuje przypadku, kiedy user, hasło lub nazwa
bazy jest pusta. autoryzacja w ten sposób jest możliwa: default user to
ten który uruchamia webserver, hasło może być puste (TRUST), domyślna
baza danych to taka sama jak username.
patch:
--- lms.orig/lib/LMSDB_driver_postgres.class.php Fri Oct 3 01:25:53 2003
+++ lms/lib/LMSDB_driver_postgres.class.php Fri Oct 10 21:40:14 2003
@@ -41,7 +41,12 @@
function _driver_connect($dbhost,$dbuser,$dbpasswd,$dbname)
{
- if($this->_dblink = pg_connect(($host != '' ? 'host='.$dbhost : '' ).' user='.$dbuser.' password='.$dbpasswd.' dbname='.$dbname))
+ $connstr=trim(
+ ($dbhost != '' ? ' host='.$dbhost : ' ' ).
+ ($dbuser != '' ? ' user='.$dbuser : ' ').
+ ($dbpasswd != '' ? ' password='.$dbpasswd : ' ').
+ ($dbname != '' ? ' dbname='.$dbname : ' '));
+ if($this->_dblink = pg_connect($connstr))
{
$this->_dbhost = $dbhost;
$this->_dbuser = $dbuser;
2) force_ssl nie zadziała kiedy HTTP_HOST jest inny niż adres wpisywany
przez usera. dzieje się tak wtedy, kiedy serwer z lmsem (np. biegający z
innymi uprawieniami niż ten dla użytkowników) stoi za proxy
(apache/squid). należałoby wspomnieć w lms.ini o RewriteRule, albo w
ogóle przyjąć tę opcję jako bardziej "generic".
3) czy twór pt. lms-arpd nie mógłby być zastąpiony przez net-snmp?
wszystkie interesujące nas informacje można odczytać przez określonego
miba, np.:
statyczne:
[root@vorax new]# snmpwalk vorax public at.atTable.atEntry.atPhysAddress.7.1.192.168.5.9
at.atTable.atEntry.atPhysAddress.7.1.192.168.5.9 = Hex: 00 40 D0 11 C0 32
dynamiczne:
[root@vorax new]# snmpwalk vorax public at.atTable.atEntry.atPhysAddress.7.1.62.111.232.4
at.atTable.atEntry.atPhysAddress.7.1.62.111.232.4 = Hex: 00 60 08 61 F8 C5
4) czy bts (mantis) wykorzystuje jakiś js na ekranie błędów? jeśli tak
to ów js namiętnie wysypuje mi firebirda (0.6.1, win2k)...
pozdrawiam,
--
:|[ kondi.net ]|:::::::::::::::::::::::::::::::::::|[ 2:480/133@fidonet.org ]|:
Gdyby Bóg obudził się kiedyś na kacu czy wypije Moje Piwo? +kajak
Witam.
> bo tego na razie nie ma. Baseciq - a do czego ma to sluzyc?
Jak narazie służy do wkurzania detekta ;>
--
Łukasz Jarosław Mozer
http://www.baseciq.org
mailto: lukasz(a)rulez.pl