Перейти до

Nodeny + Linux


Рекомендованные сообщения

nodeny v49.17

Fedora 9

 

Делаю все по инструкции docs/install.html, только:

0.Установка дополнений:

yum install perl-DBD-mysql

yum install perl-Imager

yum install libpcap-devel

 

1.Устанавливаем пароль учетной записи root в mysql:

 

Команда bash

/usr/local/bin/mysqladmin -u root password 'hardpass' - не правильно, нада:

/usr/local/bin/mysqladmin -u root password hardpass

 

2.Внимательно читать все начальные настройки в веб-интерфейсе и выполнить их :rolleyes:

 

 

В качестве коллектора выбрал ipcad:

wget ftp.asplinux.ru/pub/i386/updates/11.2/SRPMS/ipcad-3.6.6-2.112asp.src.rpm

распаковал пакет.

пропатчил:

patch -p0 <ipcad-3.6.6-gcc4.asp.patch

 

в headers.h закоментировал 2 строки

№ 177:/* #ifdef<>HAVE_LINUX_NETFILTER_H */

№ 179:/* #endif */

 

Configure;make;make install

cp ipcad.init /etc/init.d/ipcad

cp ipcad.sysconfig /etc/sysconfig/ipcad

cp ipcad.conf /etc

chkconfig --add ipcad

 

правим ipcad.conf по иструкции:

#
# Configuration file for ipcad - Cisco IP accounting simulator daemon.
# Copyright (c) 2001, 2002, 2003, 2004
# 	Lev Walkin <vlm@lionet.info>.
#
# Please see ipcad.conf(5) for additional explanations.
# Please contact me if you have troubles configuring ipcad. My goal is to make
# initial configuration easier for new users, so your input is valuable.
#
# Modified by Alexandr D. Kanevskiy <kad@asplinux.ru> for ASPLinux package


##################
# GLOBAL OPTIONS #
##################

#
# Enable or disable capturing UDP and TCP port numbers, IP protocol and
# ICMP types for RSH output.
#
#	 capture-ports {enable|disable};
#
# Enabling this will BREAK Cisco RSH output format compatibility,
# increase memory requirements and may slow down traffic processing.
# This option takes effect IMMEDIATELY, that is, it can be specified
# multiple times, even between interfaces configuration.
# This option has NO effect on NetFlow operation (NetFlow always captures
# port information).
#

capture-ports disable;
#capture-ports enable;

#
# Buffers to be used for transferring the data from the kernel,
# if applicable (BPF, ULOG).
# Using larger buffers may increase the performance but will
# affect responsiveness.
#
# buffers = <number>[{k|m}];
#
# Reasonable defaults are used if this parameter is not set.
#

## buffers = 64k;


#####################
# INTERFACE OPTIONS #
#####################

#
# interface <iface> [ promisc ] [ input-only ]
#			[ netflow-sampled ] [ netflow-disable ]
#			[ filter "<pcap_filter>" ];
# OR
# interface ulog group <group> [, group <group> ...]
#			[ netflow-sampled ] [ netflow-disabled ];
# OR
# interface ipq [ netflow-sampled ] [ netflow-disabled ];	# man libipq(3)
# OR
# interface {divert|tee} port <divert-port>			# man divert(4)
#			[ input-only ]
#			[ netflow-sampled ] [ netflow-disabled ];
#
# Options meaning:
#
# promisc:
# 	Put interface into promiscuous mode.
# 	This enables listening for the packets which are not destined for
# 	this host and thus ipcad will count and display all the traffic within
# 	the local network. Note that the interface might be in promiscuous mode
# 	for some other reason.
#
# input-only: 
# 	Use kernel feature of counting only incoming packets.
#
# netflow-sampled: 	(DO NOT ENABLE THIS OPTION, unless you have to!)
# 	If the NetFlow export mechanism is used, this option instructs
#	the interface to supply only one out of N packets to the NetFlow
#	accounting code, thus lowering the CPU requirements. The value of N
#	is configured explicitly in a NetFlow configuration section.
#	NOTE: This option is NOT used to enable NetFlow on the interface,
#	it just modifies the NetFlow behavior on this interface.
#	DO NOT ENABLE THIS OPTION, UNLESS YOU HAVE TO!
#
# netflow-disable: 
#	By default, all interfaces are included into NetFlow accounting.
#	This option is used to disable NetFlow on a particular interface.
#
# filter: 
# 	Install a custom filter on packets instead of basic
#	IP protocol filter. Requires libpcap (even if BPF is being used).
#	May be employed to eliminate CPU overhead on passing unnecessary
#	data between the kernel and user space (by installing the filter
#	directly into the kernel).
#
# NOTES:
#  * "input-only" directive must be supported by kernel.
#	Probably, you were noticed about it during the compilation process
#	if it was not supported.
#	FreeBSD 3.x and elder kernels do not support this feature.
#  * ULOG packet source (interface ulog) is supported under
#	Linux >= 2.4.18-pre8.
#	You should configure iptables to dump the packet stream
#	into the appropriate group, i.e.:
#		iptables -A OUTPUT -j ULOG --ulog-nlgroup <group>
#	Given ULOG groups will be OR'ed together.
#  * A wildcard (*) may be specified as part of an interface name.
#

#interface ed0 netflow-sampled;	# Capture only one per N packets for NetFlow
#interface ed1 promisc filter "ip and not dst net 192.168.0.0/16";
#interface sbni0 input-only netflow-disable;	# Disable NetFlow.
#interface ppp*;				# Dynamically pick up PPP interfaces.
#interface ulog group 3, group 15;	# Use ULOG, do not disable NetFlow.
#interface ipq;				# Use Linux IPQ (libipq(3))
#interface tee port 123;			# Use BSD ipfw(8)'s tee.
#interface divert port 321 netflow-disable;	# Use ipfw(8)'s divert(4).
interface eth0;
#interface divert port 111 netflow-disable;

#
# aggregate <ip>/<masklen> strip <maskbits>;
#
# Aggregate addresses from the specified network (<ip>/<masklen>),
# by AND'ing with specified mask (<maskbits>).
#
#

#aggregate 192.168.0.0/16 strip 32; /* Don't aggregate internal range */
#aggregate 0.0.0.0/0 strip 24;	/* Aggregate external networks */

#
# aggregate <port_range_start>[-<port_range_end>] into <port>;
#
# Aggregate port numbers. Meaningful only if capture-ports is enabled.
#

#aggregate 3128-3128	into 3128;	/* Protect these ports */
#aggregate 1024-65535	into 65535;	/* Aggregate wildly */
#aggregate 150-1023	into 1023;	/* General low range */


##########################
# NetFlow EXPORT OPTIONS #
##########################

#
# Enable Cisco NetFlow export method.
# NetFlow uses UDP to feed flow information to the receiver.
# If the destination is not specified, NetFlow is disabled.
#

# netflow export destination 127.0.0.1 9996;
netflow export version 5;	# NetFlow export format version {1|5}
netflow timeout active 30;	# Timeout when flow is active, in minutes
netflow timeout inactive 15;	# Flow inactivity timeout, in seconds
netflow engine-type 73;		# v5 engine_type; 73='I' for "IPCAD"
netflow engine-id 1;		# Useful to differentiate multiple ipcads.

# The following option is enabled by the "netflow-sampled" interface flag.
#netflow sampling-mode packet-interval 10;   # 1 out of 10 packets accounted
# DO NOT ENABLE THIS UNLESS YOU KNOW WHAT ARE YOU DOING.

#
# NetFlow protocol exports an SNMP id instead of the interface name
# (i.e., "eth0", "ppp32"). The following statements options define
# mapping between the interface names and a set of "SNMP identifiers".
#
#netflow ifclass eth mapto 0-99;		# i.e., "eth1"->1, "eth3"->3
#netflow ifclass fxp mapto 0-99;		# i.e., "fxp4"->4, "fxp0"->0
#netflow ifclass ppp mapto 100-199;	# i.e., "ppp32"->532, "ppp7"->507
#netflow ifclass gre mapto 200-299;
#netflow ifclass tun mapto 300-399;	# i.e., "tun0"->300

######################
# RSH SERVER OPTIONS #
######################

#
# Enable RSH Server:
#
#   rsh {enable|yes|on|disable|no|off} [at <listen_ip>];
#
# If "at <listen_ip>" omitted, rsh server listens on IP address 0.0.0.0,
# which may be undesirable.
#

rsh enable at 127.0.0.1;

#
# RSH access rules:
#
# rsh [<user>@]<host_addr> {admin|backup|[default]|view-only|deny};
#

rsh root@127.0.0.1 admin;	/* Can shutdown ipcad */
#rsh staff@127.0.0.1 backup;	/* Can dump/restore/import accounting table */
#rsh yourself@127.0.0.1;		/* Can view and modify accounting tables */
/* Note the order! */
#rsh luser@127.0.0.1 deny;	/* Deny this user from even viewing tables */
#rsh 127.0.0.1 view-only;	/* Other users can view current tables */

# Keep IP packet time to live reasonably low to avoid remote attacks.
# (The rsh client must reside no more than three hops away from the
# router running ipcad.)
rsh ttl = 3;

# Set rsh timeout for the same purpose.
rsh timeout = 30;

#
# Dump active IP accounting table to this file on exit and read on startup.
# (read about -s and -r options in ipcad(8) manual page)
# NOTE: This setting has no effect on NetFlow operation. The flow cache
#	   contents are flushed to the collector upon ipcad termination.
#

dumpfile = /var/log/ipcad.dump; # The file is inside chroot(), see below...

#################
# OTHER OPTIONS #
#################

#
# Chroot to this directory before processing.
#
# Of course, you could disable chroot()'ing by commenting it out,
# but it is not recommended, so I left this confusing default
# to encourage you to change it.
#

#chroot = /var/empty;

#
# File to keep getpid() in it. ipcad will also hold a lock.
#
# WARNING: Pidfile is created AFTER chroot()'ing, so if you're using
# chroot statement above, make sure the path to the pidfile exists
# inside chrooted environment.
#

pidfile = /var/run/ipcad.pid;

#
# UID/GID privileges dropping
# Please note: RSH service will be UNAVAILABLE when uid is not zero.
# Use it only when you know what are you doing (i.e., NetFlow without RSH).
#
# uid = 65534;
# gid = 65534;

#
# Few useful settings.
#

#
# Memory usage limit for storing per-stream entries.
# 
# memory_limit = <number>[{k|m|e}];
# Where k, m and g are for kilobytes, megabytes or table "entries".
#

memory_limit = 50m;

 

в /etc/init.d/ipcad

строку: daemon ipcad -c /etc/ipcad.conf -d $IPCADARGS

меняем на: daemon /usr/local/bin/ipcad -c /etc/ipcad.conf -d $IPCADARGS

 

 

 

в ipcad.pl есть ошибки (несовместимости :rolleyes: )

новая версия файла:

#!/usr/bin/perl

# Вход:

# 0 - сервер

# 1 - название файла

#

# Скрипт должен уложится в 60 секунд, если не уложится, то данные будут проигнорированы

#

# Внимание разработчику.

# 1) С новыми версия системы не забывай проверять поведение команды rsh

# С консоли запускай такую проверку:

# rsh -t 2 0.0.0.0 show version >/dev/null

# - результатом должен быть вывод на консоль ошибки невозможности соединения

# (важен сам факт вывода текста в поток ошибок)

# rsh -t 2 0.0.0.0 show version 2>/dev/null

# - результатом должен быть полностью пустой вывод! (ошибка должна уйти в null)

# Важно такое поведение rsh т.к при снятии статистики сначала запускается 2й вариант

# и если вывод отсутствует, что считается, что соединение не осуществлено, после чего

# запускается первый вариант для того чтобы получить причину ошибки

#

 

$rsh=`which rsh` || '/usr/bin/rsh';

 

chomp($rsh);

 

($dserver,$file_name)=@ARGV;

 

$rsh.=" -l $1" if $dserver=~s/:(.+)$//;

#$rsh.=" -t";

 

# перемещение текущих данных в checkpoint

#$com1=qq{$rsh 5 -n $dserver "cle ip acco" 2>/dev/null};

$com1="$rsh -n $dserver \"cle ip acco\" 2>/dev/null";

# получение данных их чекпоинта

#$com2=qq{$rsh 20 -n $dserver "sh ip acco che" 2>/dev/null};

$com2="$rsh -n $dserver \"sh ip acco che\" 2>/dev/null";

 

$rez=`$com1`;

$rez=`$com1` unless $rez; # бывали случаи, что из-за глюка с первого раза не устанавливается соединение

exit unless $rez;

$rez=`$com2`;

$rez=`$com2` unless $rez;

$temp_name=$file_name.'_temp';

if (open F,">$temp_name")

{

print F $rez;

close(F);

}

rename $temp_name,$file_name;

exit;

запускаем ipcad

service ipcad start

 

запускаем ядро билинга

go_kernel.sh &

 

на данный момент у меня авторизируются (через веб) пользователи и считает трафик. nofire.pl буду разгреб%#ь завтра ;)

Ссылка на сообщение
Поделиться на других сайтах
религия :rolleyes:

точно :rolleyes:

имеет и обратную силу - по поводу фрей

 

а если серьезно, то полно народу сидят на линухе, у меня, например, все сервера стоят под линуксом и я не вижу никаких веских причин для отказа от него. а по поводу nodeny - производитель хоть и клянется о полной поддержке линуха, но ничего для этого не сделал

 

ЗЫ: я ничего против авторов не имею - огромный им респект, но и помощь линуксоидам не мешала бы

Ссылка на сообщение
Поделиться на других сайтах
точно :rolleyes:

имеет и обратную силу - по поводу фрей

 

а если серьезно, то полно народу сидят на линухе, у меня, например, все сервера стоят под линуксом и я не вижу никаких веских причин для отказа от него. а по поводу nodeny - производитель хоть и клянется о полной поддержке линуха, но ничего для этого не сделал

 

ЗЫ: я ничего против авторов не имею - огромный им респект, но и помощь линуксоидам не мешала бы

дык покупай 50 версию, и оплачивай техподдержку - и без проблем адаптируют для линукса :rolleyes:

Ссылка на сообщение
Поделиться на других сайтах

интересно, у кого-нибудь версия 49.17 заработала сразу или нет ? :rolleyes:

 

в файле noserver.pl ошибка в 147 строке:

plan_flags=>$Plan_flags[$U{$id}{paket}],

а нада

plan_flags=>$Plan_flags[$U{$id}{paket}]

(запятая лишняя)

Ссылка на сообщение
Поделиться на других сайтах

собрал. на рабочем сервере еще не проверял, но правила строит нормально. чуть позже проверю в реале :rolleyes:

#!/usr/bin/perl
# ==============================================================================#
#										#
#		NoDeny - подпрограммы разрешения/блокировки доступа		#
#										#
# ==============================================================================#

$IPT='/sbin/iptables ';
$TC='/sbin/tc ';
$IF_OUT='ppp0';
$IF_INT='eth1';
$DEFAULT_SPEEDIN=512;
$DEFAULT_SPEEDOUT=128;


sub Flush
{
# 1. Удаляет из фаервола все правила 
# 2. Формирует общие правила в созданных окнах

#####################
# Шейпер 
#####################
system("$IPT -t mangle --flush");

# download
system("$TC qdisc del dev $IF_INT root handle 1: htb");
system("$TC qdisc add dev $IF_INT root handle 1: htb");
system("$TC class add dev $IF_INT parent 1: classid 1:1 htb rate 2mbit ceil 2mbit burst 200k");

# upload
system("$TC qdisc del dev $IF_OUT root handle 1: htb");
system("$TC qdisc add dev $IF_OUT root handle 1: htb");
system("$TC class add dev $IF_OUT parent 1: classid 1:1 htb rate 1024kbit ceil 1024kbit burst 20k");


#####################
# Файрвол
#####################
system("echo \"1\" > /proc/sys/net/ipv4/ip_forward");

# Очищаем правила файрвола
system("$IPT -F");
system("$IPT -t filter -F");
system("$IPT -t filter -X");
system("$IPT -t nat -F");
system("$IPT -t nat -X");

# Политика по умолчанию DROP: всем всё запрещено
system("$IPT -t filter -P INPUT DROP");
system("$IPT -t filter -P FORWARD DROP");
system("$IPT -t filter -P OUTPUT DROP");

# Разрешаем всё на локальном интерфейсе
system("$IPT  -t filter -A INPUT -i lo -j ACCEPT");
system("$IPT  -t filter -A OUTPUT -o lo -j ACCEPT");



# local services
system("$IPT  -t filter -A INPUT -i $IF_INT -p tcp --dport 1:1024 -j ACCEPT");
system("$IPT  -t filter -A INPUT -i $IF_INT -p udp --dport 1:1024 -j ACCEPT");
system("$IPT  -t filter -A OUTPUT -o $IF_INT -j ACCEPT");

# Разрешаем пингам ходить всюду и всегда
system("$IPT  -t filter -A INPUT -i $IF_INT -p icmp -j ACCEPT");

# external if
system("$IPT  -t filter -A INPUT -i $IF_OUT -p tcp --dport 0:1023 -j DROP");
system("$IPT  -t filter -A INPUT -i $IF_OUT -p udp --dport 0:1023 -j DROP");
# mysql - из мира не пускать
system("$IPT  -t filter -A INPUT -i $IF_OUT -p tcp --dport 3306 -j DROP");
system("$IPT  -t filter -A INPUT -i $IF_OUT -p udp --dport 3306 -j DROP");
# squid - из мира не пускать
system("$IPT  -t filter -A INPUT -i $IF_OUT -p tcp --dport 3128 -j DROP");
system("$IPT  -t filter -A INPUT -i $IF_OUT -p udp --dport 3128 -j DROP");
system("$IPT  -t filter -A INPUT -i $IF_OUT -p tcp --dport 3127 -j DROP");
system("$IPT  -t filter -A INPUT -i $IF_OUT -p udp --dport 3127 -j DROP");


#Маскарад
system("$IPT  -t nat -A POSTROUTING -o $IF_OUT -j MASQUERADE");
}

sub Deny
{
my $p=$_[0];
my ($auth,$dop_param,$i,$id,$ip,$mid,$n,$num,$num1,$num2,$opt,$options);
my ($paket,$pipe2,$pipe_in,$pipe_out,$speed2,$speed_in,$speed_out);

$ip=$p->{ip};
$num=$p->{num};		# виртуальный уникальный id текущей записи
$paket=$p->{paket};
$options=$p->{options};	# модификаторы скорости
$main_num=$p->{main_num};	# виртуальный уникальный id основной записи
$plan_flags=$p->{plan_flags};	# флаги пакета тарификации

while (!system("$IPT -t filter -D INPUT -s $ip -j ACCEPT")) {};
while (!system("$IPT -t filter -D FORWARD -s $ip -j ACCEPT")) {};
while (!system("$IPT -t filter -D FORWARD -d $ip -j ACCEPT")) {};
while (!system("$IPT -t filter -D OUTPUT -d $ip -j ACCEPT ")) {};


####################################### 
# transparant proxy
####################################### 

while (!system("$IPT -t nat -D PREROUTING -i $IF_INT -s $ip -p tcp --dport 80 -j REDIRECT --to-port 3127")) {};

###################################################
# download/upload speed
###################################################

$mark = $num*10;
$speed_in = `tc class show dev $IF_INT | grep \"class htb 1:$mark\" | awk \' {print \$9 }\'` || '10kbit ';
chomp $speed_in;
$markup = $num*10+1;
$speed_out = `tc class show dev $IF_OUT | grep \"class htb 1:$markup\" | awk \' {print \$9 }\'` || '10kbit ';
chomp $speed_out;

while (!system("$IPT -t mangle -D FORWARD -d $ip -j MARK --set-mark $mark")) {};
while (!system("$IPT -t mangle -D OUTPUT -d $ip -p tcp --sport 3127 -j MARK --set-mark $mark")) {};
while (!system("$IPT -t mangle -D OUTPUT -d $ip -p tcp --sport 3128 -j MARK --set-mark $mark")) {};

while (!system("$IPT -t mangle -D FORWARD -s $ip -j MARK --set-mark $markup")) {};
while (!system("$IPT -t mangle -D INPUT -s $ip -j MARK --set-mark $markup")) {};

# download
system("$TC class del dev $IF_INT parent 1:1 classid 1:$mark htb rate $speed_in");
system("$TC filter del dev $IF_INT parent 1: protocol ip prio 3 handle $mark fw classid 1:$mark");

# upload
# system("$TC class del dev $IF_OUT parent 1:1 classid 1:$markup htb rate $speed_out");
# system("$TC filter del dev $IF_OUT parent 1: protocol ip prio 3 handle $markup fw classid 1:$markup");
}

sub Allow
{
my $p=$_[0];
my ($auth,$dop_param,$i,$id,$ip,$mid,$n,$num,$num1,$num2,$opt,$options);
my ($paket,$pipe2,$pipe_in,$pipe_out,$speed2,$speed_in,$speed_out);

$ip=$p->{ip};
$id=$p->{id};			# id текущей записи (по таблице users)
$num=$p->{num};		# виртуальный уникальный id текущей записи
$mid=$p->{mid};		# id основной записи (по таблице users)
$auth=$p->{auth};		# режим авторизации (on,off,ong)
$paket=$p->{paket};
$speed2=$p->{speed2};		# альтернативная скорость, указанная в пакете
$options=$p->{options};	# модификаторы скорости
$main_num=$p->{main_num};	# виртуальный уникальный id основной записи
$speed_in=$p->{speed_in};	# скорость к клиенту, указанная в пакете
$speed_out=$p->{speed_out};
$dop_param=$p->{dop_param};	# дополнительные параметры учетки клиента
$plan_flags=$p->{plan_flags};	# флаги пакета тарификации

# удаляем старые настройки, которые могут оставаться в случае сбоев билинга
# возможно и не понадобится - вставил по привычке после stargazera
&Deny(
  {
num		=> $num,
main_num	=> $main_num,
ip		=> $ip,
paket	=> $paket,
plan_flags	=> $plan_flags,
options	=> $options
  }
);

system("$IPT -t filter -A INPUT -s $ip -j ACCEPT");
system("$IPT -t filter -A FORWARD -s $ip -j ACCEPT");
system("$IPT -t filter -A FORWARD -d $ip -j ACCEPT");
system("$IPT -t filter -A OUTPUT -d $ip -j ACCEPT ");



####################################### 
# transparant proxy
####################################### 

system("$IPT -t nat -A PREROUTING -i $IF_INT -s $ip -p tcp --dport 80 -j REDIRECT --to-port 3127");


###################################################
# download/upload speed
###################################################

#  Если скорости не указаны, то берутся значения по умолчанию (из конфига сателлита)

if (!$speed_in)
{  # Cкорость указана в пакете. Это самая приоритетная скорость, даже если в учетной
# записи в доп параметре указана другая. 
$speed_in = $DEFAULT_SPEEDIN;
}

if (!$speed_out)
{  
$speed_out = $DEFAULT_SPEEDOUT;
}

# это если канал гуляет, то скорость может вырасти до +33%
$speed_in0 = $speed_in / 3 * 4;
$speed_out0 = $speed_out / 3 * 4;
$mark = $num*10;
$markup = $num*10+1;


system("$IPT -t mangle -A FORWARD -d $ip -j MARK --set-mark $mark");
system("$IPT -t mangle -A OUTPUT -d $ip -p tcp --sport 3127 -j MARK --set-mark $mark");
system("$IPT -t mangle -A OUTPUT -d $ip -p tcp --sport 3128 -j MARK --set-mark $mark");

system("$IPT -t mangle -A FORWARD -s $ip -j MARK --set-mark $markup");
system("$IPT -t mangle -A INPUT -s $ip -j MARK --set-mark $markup");

# download
system("$TC class add dev $IF_INT parent 1:1 classid 1:$mark htb rate \"$speed_in\"kbit ceil \"$speed_in0\"kbit");
system("$TC filter add dev $IF_INT parent 1: protocol ip prio 3 handle $mark fw classid 1:$mark");

# upload
# system("$TC class add dev $IF_OUT parent 1:1 classid 1:$markup htb rate \"$speed_out\"kbit ceil \"$speed_out0\"kbit");
# system("$TC filter add dev $IF_OUT parent 1: protocol ip prio 3 handle $markup fw classid 1:$markup");
}

sub Add_To_All_Ip {}
sub Delete_From_All_Ip {}
sub Add_To_Allow_Ip {}
sub Delete_From_Allow_Ip {}
sub Add_To_Table {}
sub Delete_From_Table {}
sub Flush_Table {}
sub Run_Ipfw_Rules {}



# &Deny(
#	{
#		paket=>1,
#		num=>22,
#		ip=>"192.168.189.1",
#		options=>0,
#		main_num=>33,
#		plan_flags=>0
#  }
# );

#  &Flush;

# &Allow(
#	{
#		num		=> 22,
#		main_num	=> 33,
#		id		=> 12,
#		mid		=> 22,
#		ip		=> "192.168.189.1",
#		auth	=> 0,
#		paket	=> 0,
#		speed2	=> 0,   
#		speed_in	=> 100,
#		speed_out	=> 50,
#		dop_param	=> 0,
#		plan_flags	=> 0,
#		options	=> 0
#	  }
#	);


#1;

 

по поводу squid - от у меня на 2 портах сидит 3128 - с фильтрацией инета, 3127 - прозрачный

1 слабое место - чистка таблиц шейпера. приходится по ID пользователя искать в таблицах шейпера строку и удалять ее. наверно нада будет подправить noserver.pl, чтобы при вызове Deny передавались и скорости подключения, тогда ничего искать не прийдется.

Ссылка на сообщение
Поделиться на других сайтах
1 слабое место - чистка таблиц шейпера. приходится по ID пользователя искать в таблицах шейпера строку и удалять ее. наверно нада будет подправить noserver.pl, чтобы при вызове Deny передавались и скорости подключения, тогда ничего искать не прийдется.

в момент создания правил ты можешь в каком-нить хеше запоминать и скорости, которые прописывал и все что свыше. Для примера смотри удаление неиспользуемых pipe в стандартном nofire.pl

Ссылка на сообщение
Поделиться на других сайтах
в момент создания правил ты можешь в каком-нить хеше запоминать и скорости, которые прописывал и все что свыше. Для примера смотри удаление неиспользуемых pipe в стандартном nofire.pl

 

получается, если я создам глобальные переменные в nofire.pl, они не будут сохранятся на все время работы nodeny ? (до перезапуска)

Ссылка на сообщение
Поделиться на других сайтах
получается, если я создам глобальные переменные в nofire.pl, они не будут сохранятся на все время работы nodeny ? (до перезапуска)

глобальные переменные сохраняются в nofire.pl во время работы. А при перезапуске в &Flush нужно все обнулить и создать заново

Ссылка на сообщение
Поделиться на других сайтах

У меня фтп сервер настроен как сателит ноденай на котором висит noserver.pl.

iptables -P INPUT DROP

В nofire.pl прописал правила

allow

iptables -A INPUT -s $ip -j ACCESS

deny

iptables -D INPUT -s $ip -j ACCESS

flush

iptables -P INPUT ACCESS
iptables -F
iptables -A INPUT -s $ip_of_main_server -j ACCESS #это правило чтобы сателит мог подключится к главному серверу ноденай, оно нужно поскольку политика ДРОП
iptables -P INPUT DROP

и работает как часы

Ссылка на сообщение
Поделиться на других сайтах
а можно ли в nodeny сделать тариф как у stargazer стоимость мегабайта до порога и стоимость мегабайта после порога ?

Раньше можно было, но поскольку несколько лет никому такой тариф не нужен был - код был удален

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...
Раньше можно было, но поскольку несколько лет никому такой тариф не нужен был - код был удален

а жаль - у меня очень ходовой тариф

 

и еще проблемка: можно ли как у старгазера настроить учет трафика по портам. Т.е. внешний - то все понятно, а внутренний (на прокси порт 3128) нада же тоже добавлять. Как ?

Ссылка на сообщение
Поделиться на других сайтах
можно ли как у старгазера настроить учет трафика по портам. Т.е. внешний - то все понятно, а внутренний (на прокси порт 3128) нада же тоже добавлять. Как ?

уточни задачу? прокси прозрачная или нет? Почему нельзя просто указать сеть 0.0.0.0/0 порт 3128 направление такое-то?

Ссылка на сообщение
Поделиться на других сайтах
уточни задачу? прокси прозрачная или нет? Почему нельзя просто указать сеть 0.0.0.0/0 порт 3128 направление такое-то?

 

прокси обычный - непрозрачный, сидит на адресе 192.168.1.1:3128

кто хочет - ездит через прокси, кто не хочет - напрямую

а при учете через ipcad - ведется учет только на интерфейсе (или я чегото не понимаю ? )

 

Задача: считать весь внешний трафик (ррр0) + трафик с/на некоторых портов локального интерфейса (eth1)

Ссылка на сообщение
Поделиться на других сайтах
а при учете через ipcad - ведется учет только на интерфейсе (или я чегото не понимаю ? )

нет. ipcad имеет массу вариантов учета. Можно не только ipcad юзать, кстати

Ссылка на сообщение
Поделиться на других сайтах
  • 3 months later...

предложенный конфиг nofire.pl на предыдущей страницы - это полноценная замена оригинального или только для работы через прокси?

и как бы еще шейпить скорость, если прикрутить сюда pptpd?

Ссылка на сообщение
Поделиться на других сайтах
  • 2 years later...

Подскажите пожалуйста. Реально установить Nodeny на Fedora 15?

 

Попробовать можно. Но что бы все работало корректно нужно будет вам ручками править конфиги.

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...