Но юзеры в том числе и начальство сетуют на неудобность авторизации через веб интерфейс, скачал Amon установил для пробы на один из компьютеров. Вроде как работает но есть одна проблемка, когда в настройках пользователя указано значение IP адреса 0.0.0.0 а значение CID не заполнено совсем, при запуске Amon нету кнопки "Подключение". Когда я заполняю поля IP адрес равным IP адресу компьютера и значение CID тоже равным IP адресу компьютера Amon запускает, есть кнопка "Подключение", инет подключает и отключается все в норме. Но нужно сделать так чтобы юзеры могли заходить под своим логином и паролем с любого компьютера, тоесть нельзя привязывать IP адрес компьютера к пользователю. В этом случае веб интерфейс справляется, но некоторые пользователи забывают выходить из него, чем другие успешно могут пользоваться и используют чужой трафф )
Надеюсь что я понятно изложил свою проблему, подскажите как настроить систему так чтобы Amon могли пользоваться с разных компьютеров разные учетные записи?
Версия Amon-2-37
Вот приложу на всякий случай конфиг
Код: Выделить всё
# Abills configuretion file
$PROGRAM='~AsmodeuS~ Billing System';
#DB configuration
$conf{dbhost}='localhost';
$conf{dbname}='mydb';
$conf{dbuser}='user';
$conf{dbpasswd}='dbpass';
$conf{dbtype}='mysql';
#For MySQL 5 and highter (cp1251, utf8)
$conf{dbcharset}='utf8';
#Mail configuration
$conf{ADMIN_MAIL}='mymail';
$conf{USERS_MAIL_DOMAIN}='192.168.0.1';
$conf{MAIL_CHARSET}='windows-1251';
$conf{default_language}='russian';
$conf{default_charset}='windows-1251';
$conf{WEB_TITLE}='My Billing System';
@MODULES = ('Dv',
#'Voip',
#'Docs',
#'Mail',
'Sqlcmd',
'Ipn');
# Ipn settings
$conf{IPN_DEPOSIT_OPERATION}=1;
$conf{IPN_USERMENU}=1;
$conf{IPN_DETAIL}=1;
$conf{IPN_DETAIL_MIN_SIZE}=1024;
#$conf{IPN_STATIC_IP}=1;
$conf{IPN_DETAIL_CLEAN_PERIOD}=30;
$conf{IPN_CLUBMONITOR}=1;
$conf{IPN_FILTER}="/usr/local/bin/sudo /usr/abills/libexec/ipn_filter.sh";
$conf{IPN_FW_FIRST_RULE}=20000;
$conf{IPN_FW_START_RULE}="usr/local/bin/sudo /sbin/ipfw -q delete %NUM;
/usr/local/bin/sudo /sbin/ipfw -q add %NUM allow ip from %IP to any via rl1;
/usr/local/bin/sudo /sbin/ipfw -q add %NUM allow ip from any to %IP via rl1";
$conf{IPN_FW_STOP_RULE}="/usr/local/bin/sudo /sbin/ipfw -q delete %NUM";
#/usr/local/bin/sudo /sbin/ipfw -q add %NUM deny ip from %IP to any via rl1;
#/usr/local/bin/sudo /sbin/ipfw -q add %NUM deny ip from any to %IP via rl1";
$conf{UNKNOWN_IP_LOG}=1;
#%ACCT = ();
#For VoIP GNU Gatekeeper accounting
#$ACCT{gnugk} = 'Voip_aaa';
#%AUTH = ();
#For VoIP GNU Gatekeeper Auth
#$AUTH{gnugk} = 'Voip_aaa';
#Technical works
#$conf{tech_works}='Technical works';
#Periodic functions
#$conf{p_admin_mails}=1; # Send periodic admin reports
#$conf{p_users_mails}=1; # Send user warning messages
# chap encryption decription key
$conf{secretkey}="secretkey2151515315";
$conf{s_detalization}=1; #make session detalization recomended for vpn leathed lines
#Check periodic deposit and session. hangup after get negative result
$conf{periodic_check}=1;
$conf{version}='0.41b'; #16.06.2006
#Octets direction
# server - Count octets from server side
# user - Count octets from user side (default)
$conf{octets_direction}='user';
#Check web interface brute force
$conf{wi_bruteforce}=10;
#Minimum session costs
$conf{MINIMUM_SESSION_TIME}=10; # minimum session time for push session to db
$conf{MINIMUM_SESSION_TRAF}=200; # minimum session trafic for push session to db
#System admin id
#ID for system operation, periodic procces
$conf{SYSTEM_ADMIN_ID}=1;
#Web interface
$conf{PASSWD_LENGTH}=6;
$conf{MAX_USERNAME_LENGTH}=15;
# User name expration
$conf{USERNAMEREGEXP}="^[a-z0-9_][a-z0-9_-]*\$";
$conf{list_max_recs}=25;
$conf{web_session_timeout} = 1800;
$conf{user_chg_passwd}='no';
#Max session traffic Mb
$conf{MAX_SESSION_TRAFFIC} = 2047;
# Exppp options
$conf{DV_EXPPP_NETFILES}='/usr/abills/cgi-bin/admin/nets/';
#Auto assigning MAC in first connect
#$conf{MAC_AUTO_ASSIGN}=1;
$conf{KBYTE_SIZE} = 1024;
# Check script rannig time
$conf{time_check}=1;
# Debug mod
$conf{debug}=10;
$conf{foreground}=0;
$conf{debugmods}='LOG_ALERT LOG_WARNING LOG_ERR LOG_INFO';
#show auth and accounting time need Time::HiRes module (available from CPAN)
# Log levels. For details see <syslog.h>
%log_levels = ('LOG_EMERG' => 0,
'LOG_ALERT' => 1,
'LOG_CRIT' => 2,
'LOG_ERR' => 3,
'LOG_WARNING' => 4,
'LOG_NOTICE' => 5,
'LOG_INFO' => 6,
'LOG_DEBUG' => 7,
'LOG_SQL' => 8);
#Check password from radius or FTP servers for web interface
#Radius
#$conf{check_access} = { NAS_IP => '192.168.101.17:1812',
# NAS_FRAMED_IP => '192.168.101.17',
# NAS_SECRET => 'test'
# };
# FTP
# $conf{check_access} = { NAS_IP => '192.168.101.17:21'
# };
#Firewall start rule numbers
# (GLobal, Class 1, Class 2)
# @START_FW = (3000, 2000, 1000);
# Backup SQL data
$conf{BACKUP_DIR}='/usr/abills/backup';
# Folders and files
$base_dir='/usr/abills/';
$lang_path=$base_dir . 'language/';
$lib_path=$base_dir .'libexec/';
$var_dir=$base_dir .'var/';
$conf{SPOOL_DIR}=$base_dir.'var/q';
# Template folder
$conf{TPL_DIR} = $base_dir . 'Abills/templates/';
$conf{LOG_DEBUG} = $base_dir . 'var/log/abills.debug';
$conf{WEB_LOGFILE} = 'weblog.log';
$conf{LOGFILE} = $base_dir . 'var/log/abills.log';
$conf{LOG_ACCT} = $base_dir . 'var/log/acct.log';
#For file auth type allow file
$conf{extern_acct_dir}=$base_dir.'libexec/ext_acct/';
$conf{MAILBOX_PATH}='/var/mail/';
# Low bounds
use POSIX qw(strftime);
$DATE = strftime "%Y-%m-%d", localtime(time);
$TIME = strftime "%H:%M:%S", localtime(time);
$curtime = strftime("%F %H.%M.%S", localtime(time));
$year = strftime("%Y", localtime(time));