Archive for ноември, 2007
Списък на потребителите с дропнати конекции и техния брой.
by Илия Няголов on ное..28, 2007, under Линукс
Първо искам да подчертая че аз не съм програмист 🙂 , и ми е простено за може би лошо написания код по-долу.
1. Настройка на Apache сървър. Добавяте файла „iptables.conf“ в „/etc/apache2/vhosts.d“ и рестартирате web сървъра.
#/etc/apache2/vhosts.d/iptables.conf
Alias /iptables „/var/www/localhost/iptables/“
<Directory „/var/www/localhost/iptables“>AddHandler cgi-script .cgi
Options +FollowSymLinks Indexes ExecCGI
AllowOverride none
DirectoryIndex index.cgi
order deny,allow
Deny from all
allow from 22.211.18.33 22.211.18.32
</Directory>
2. Даване на права за изпълнение на „apache“ потребителя върху „/sbin/iptables“.
Създавате директорията „/var/www/localhost/iptables“
mkdir /var/www/localhost/iptables
cd /var/www/localhost/iptables
Създавате файла „ipta.c“ в “ /var/www/localhost/iptables“ и го компилирате.
#include <unistd.h>
//######################################
//#ipta.c
//######################################
// добави пътя на iptables
char IPTABLES[] = „/sbin/iptables“;main(int argc, char *argv[])
{
argv[0] = IPTABLES;
execv(IPTABLES, argv);
return 1;
}
Компилиране и права на създадения файл „ipta“:
gcc -oipta ipta.c
chown root.root ipta
chmod 6755 ipta
rm ipta.c
Чрез създадения файл „ipta“, „apache“ потребителя извиква „iptables“ и го управлява като „root“.
(continue reading…)
l7filter статистики с MRTG – Gentoo
by Илия Няголов on ное..26, 2007, under Линукс
Един ден след като повечето неща бяха готови на единия ми ppp терминал реших да наблюдавам трафиците на различните видове протоколи, за целта реших да използвам l7filter, как се инсталира съм обяснил подробно тук.
1. За да може MRTG да направи дадена графика му трябва информация за вхдящия и изходящия поток на дадено нещо. В случая тези неща са моите протоколи които искам да следя по трафик. Тази информация ще е взема от IPTABLES посредством малко правила създадени от мен.
За целта си създавам скрипт rc.l7filter който зарежда след „/etc/init.d/iptables“.
#!/bin/sh
#rc.l7filterIPTABLES=“/sbin/iptables“
$IPTABLES -F
$IPTABLES -X
#$IPTABLES -Z$IPTABLES -N l7filter-in
$IPTABLES -N l7filter-out#Ще следя следните протоколи: bittorrent, http, edonky, irc, skypetoskype, ssh, rlogin, vnc.
#За повече информация посетете: http://l7-filter.sourceforge.net/protocols$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto bittorrent -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto http -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto edonkey -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto irc -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto skypetoskype -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto ssh -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto rlogin -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto vnc -j ACCEPT$IPTABLES -t filter -A l7filter-out -s 22.211.18.0/24 -d 0/0 -m layer7 –l7proto bittorrent -j ACCEPT
$IPTABLES -t filter -A l7filter-out -s 22.211.18.0/24 -d 0/0 -m layer7 –l7proto http -j ACCEPT
$IPTABLES -t filter -A l7filter-out -s 22.211.18.0/24 -d 0/0 -m layer7 –l7proto edonkey -j ACCEPT
$IPTABLES -t filter -A l7filter-out -s 22.211.18.0/24 -d 0/0 -m layer7 –l7proto irc -j ACCEPT
$IPTABLES -t filter -A l7filter-out -s 22.211.18.0/24 -d 0/0 -m layer7 –l7proto skypetoskype -j ACCEPT
$IPTABLES -t filter -A l7filter-out -s 22.211.18.0/24 -d 0/0 -m layer7 –l7proto ssh -j ACCEPT
$IPTABLES -t filter -A l7filter-out -s 22.211.18.0/24 -d 0/0 -m layer7 –l7proto rlogin -j ACCEPT
$IPTABLES -t filter -A l7filter-in -d 22.211.18.0/24 -s 0/0 -m layer7 –l7proto vnc -j ACCEPT$IPTABLES -A FORWARD -j l7filter-in
$IPTABLES -A FORWARD -j l7filter-out
TV SAMSUNG 37″ 1360×768 и Notebook HP510 с видео Intel-810 – Linux
by Илия Няголов on ное..24, 2007, under Линукс
Доста търсих, но нищо смислено и подобно не можах да намеря написано на български. Затова реших да напиша тази статия за феновете на Linux. За пореден път искам да подчертая че Linux-а е една превъзходна и десктоп система.
Няма да обяснявам как се инсталира Linux и X сървър 🙂 , приемаме вече че сте го направили това и вашата графична среда работи.
Ясно е че такава разделителна способност като 1360х768 няма при лаптопите, но за целта се използва програмата 915Resolution – Intel Video BIOS Hack.
915resolution is a tool to modify the video BIOS of the 800 and 900 series Intel graphics chipsets. This includes the 830, 845G, 855G, and 865G chipsets, as well as 915G, 915GM, 945G, 946GZ, G965, and Q965 chipsets. This modification is neccessary to allow the display of certain graphics resolutions for an Xorg or XFree86 graphics server.
Нека видим какви разделителни способности подържа моята видео карта, преди да съм правил каквото и да е с 915resolution:
root@ilia-laptop:~# 915resolution -l
Intel 800/900 Series VBIOS Hack : version 0.5.3Chipset: 915GM
BIOS: TYPE 1
Mode Table Offset: $C0000 + $269
Mode Table Entries: 36Mode 30 : 640×480, 8 bits/pixel
Mode 32 : 800×600, 8 bits/pixel
Mode 34 : 1024×768, 8 bits/pixel
Mode 38 : 1280×1024, 8 bits/pixel
Mode 3a : 1600×1200, 8 bits/pixel
Mode 3c : 1920×1440, 8 bits/pixel
Mode 41 : 640×480, 16 bits/pixel
Mode 43 : 800×600, 16 bits/pixel
Mode 45 : 1024×768, 16 bits/pixel
Mode 49 : 1280×1024, 16 bits/pixel
Mode 4b : 1600×1200, 16 bits/pixel
Mode 4d : 1920×1440, 16 bits/pixel
Mode 50 : 640×480, 32 bits/pixel
Mode 52 : 800×600, 32 bits/pixel
Mode 54 : 1024×768, 32 bits/pixel
Mode 58 : 1280×1024, 32 bits/pixel
Mode 5a : 1600×1200, 32 bits/pixel
Mode 5c : 1920×1440, 32 bits/pixel
Perl POST/GET параметри
by Илия Няголов on ное..21, 2007, under Програмиране
Да речем че искате да прочетете променливите „month, day, year“ от долопосочения адрес.
http://blog.sharcom.org/sample/index.cgi?month=August&day=8&year=2005
В PHP става лесно:
<?
$month=$_POST[‘month’];
$day=$_POST[‘day’];
$year=$_POST[‘year’];print „$month“;
print „$day“;
print „year“;
?>
Но в Perl не става толкова лесно, за целта трябва една подпрограмка 🙂 .
#!/usr/bin/perl
print „Content-Type: text/html\015\012\015\012“;
sub readallvariables {
if ($ENV{‘REQUEST_METHOD’} eq „POST“) {
read(STDIN,$in,$ENV{‘CONTENT_LENGTH’});
@in = split(/&/,$in);
foreach $i (0 .. $#in) {
$in[$i] =~ s/\+/ /g;
$in[$i] =~ s/%(..)/pack(„c“,hex($1))/ge;
($key,$val) = split(/=/,$in[$i],2);
$key=~ s/%(..)/pack(„c“,hex($1))/ge;
$val =~ s/%(..)/pack(„c“,hex($1))/ge;
$_POST{$key}=$val;
}
}if ($record = $ENV{‘QUERY_STRING’}) {
@in=split /&/, $record;
foreach $i (0 .. $#in) {
$in[$i] =~ s/\+/ /g;
$in[$i] =~ s/%(..)/pack(„c“,hex($1))/ge;
($key,$val) = split(/=/,$in[$i],2);
$key=~ s/%(..)/pack(„c“,hex($1))/ge;
$val =~ s/%(..)/pack(„c“,hex($1))/ge;
$_GET{$key}=$val;$_REQUEST{$key}=$val;
}
}if ($in = $ENV{HTTP_COOKIE}) {
@in = split(/;/,$in);
foreach $i (0 .. $#in) {
$in[$i] =~ s/\+/ /g;
$in[$i] =~ s/%(..)/pack(„c“,hex($1))/ge;
($key,$val) = split(/=/,$in[$i],2);
$key =~ s/%(..)/pack(„c“,hex($1))/ge;
$key =~ s/^ //;
$val =~ s/%(..)/pack(„c“,hex($1))/ge;
$_COOKIE{$key}=$val;
}
}}
readallvariables;
print ‘RESULT:’.$_GET{‘month’}.’:’.$_GET{‘day’}.’:’.$_GET{‘year’}
Федерер спечели „Мастърс“ турнира в Шанхай
by Илия Няголов on ное..19, 2007, under Спорт
Федерер спечели „Мастърс“ турнира в Шанхай
Очакванията, че финала ще бъде равностоен и оспорван не се оправдаха. Причината бе, че Роджър Федерер игра на много високо ниво и бе с класа над своя съперник. Швейцарецът владееше изцяло положението в първия сет, записа серия от 10 поредни точки и това доведе до първия пробив в мача и 3:1. Отличната игра на Федерер донесе нови два гейма в актива му и малко по-късно той затвори сета.
Във втория сет Давид Ферер заигра по-скопойно и това му позволи да се противопостави по-успешно на Федерер. Играта бе равностойна до седмия гейм, когато Ферер направи три елементарни грешки и допусна пробив. Следващите два гейма бяха спечелени от Федерер, което сложи точка на спора във втората част.
В началото на третия сет Давид Ферер пропусна три възможности за пробив и това окончателно сложи край на надеждите му. Швейцарецът продължи с блестящите си отигравания и не се отпусна, въпреки че имаше солиден аванс. Той осъществи пробив за 3:1 и нов за крайното в сета 6:2.
С успеха в Шанхай Федерер се доближи до Илие Настасе, който държи рекорда с победите си във финалните турнири – 5, докато Федерер вече има 4 титли от 5 участия и е близо до поредния рекорд, който може да подобри. Освен това швейцарецът си спечели 1,2 милиона долара от наградния фонд на турнира, което ще направи печалбите му за този сезон над 8,6 милиона долара. Единствения турнир, който най-добрият тенисист в света не можа да спечели тази година е „Ролан Гарос”, където Рафаел Надал е непобедим.