The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"RE: Организация защиты от подмены IP адреса"
Отправлено irish2000, 22-Ноя-02 13:33 
>
>Как можно не допустить подмену IP адреса на чужой машине? Раньше эта
>проблема решалась с помощью жёсткой привязки мас-адреса к ip адресу через
>arp -s, но теперь встретился с фактом, что можно на некоторых
>картах прямо в их настройках вручную изменять MAC. Можно ли как-либо
>ещё что-то сделать, чтобы избежать такого проникновения?

Я сделал так:
Для пользователей под маскарадингом все просто -
1. Открывается аккаунт, пользователю шеллом ставится intmasq (см ниже)
2. Скрипт billmas в кроне на одну минуту по циклу
3. Каталог юзверя содержит:
intmasq
userdata
flag
----------
intmasq:

#! /usr/bin/perl -w
#programma START/STOP Inet
open (flags1,"/home/user/flag.txt");
$usl = <flags1>;
if ($usl == 1){
print "Inet DOWN";
open(flags1,">/home/user/flag.txt");    #esli flag=1 to NET vkluchen - otkluchaem
print flags1 0,"\n";            #sbrasivaem flag
close(flags1);
open (userfile1,"> /home/user/userdata");    #ustanavlivaem flag dla billmas.pl
print userfile1 0 , "\n";        #otrubaem NET
close userfile1;
}
else{
print "Inet UP";
open(flags1,">/home/user/flag.txt");    #NET vikluchen - vkluchaem
print flags1 1,"\n";            #ustanavlivaem flag
close(flags1);
open (userfile1,"> /home/user/userdata");
print userfile1 1 , "\n";
close userfile1;
  }
-------------
billmas:
#! /usr/bin/perl -w
# Eta programma vipolnaetsa pod ROOT i vkl/vikl cepochki IPCHAINS
# po zapusku skriptov START/STOP v katalogah polzovatelej
# Etot variant TOLKO DLA MASKARADINGA!
system ("ipchains -L forward -n -v > /internet/forward.txt");
open (datafile1, "/internet/forward.txt") || die "Fuck off!!!";

OUTER:
system ("/sbin/ipchains -L output -n -v > /internet/chains.txt");
open (userfile4, "/home/user/userdata") || die;
$data = <userfile4>;
close (userfile4);
    if ($data==1) {                        #
            while (defined ($line = <datafile1>))
            {
            chomp $line;
            #ichem sovpadenie
            if ($line =~ /\b192.168.1.2\b/) {
            print "inet UP - not duble";
            goto dfg56rtmetka;
            };
            }
        open (userfile1, ">> /internet/userstat") || die;    #
        print userfile1 "----------" , "\n"  ;                    #
        close (userfile1);                    #
        
        system ("date >> /internet/userstat");    #pishem datu vhoda v Inet
        system ("/bin/grep 192.168.1.2 /internet/chains.txt > /internet/statuser/user/tmp.grp");

        open (traf1, "/internet/statuser/user/tmp.grp") || die;    #blok zapisi statistiki START
        $line=<traf1>;
        close(traf1);
                
        open (userfile1, ">> /internet/userstat") || die;    #
        print userfile1 $line;                    #
        close (userfile1);                    #
                        
        open (userfile2, "> /home/user/userdata") || die;        #
        print userfile2 2 , "\n"  ;                    #pishem flag "NOP"
        close (userfile2);                    #
        system ("/sbin/ipchains -A forward -i eth0 -s 192.168.1.2 -j MASQ")         #razreshaem MASQ
        };
    
    if ($data==0) {                        #flag vihoda iz Inet
        system ("/bin/grep 192.168.1.2 /internet/chains.txt > /internet/statuser/user/tmp.grp");
        
        open (traf1, "/internet/statuser/user/tmp.grp") || die;    #blok zapisi statistiki START
        $line=<traf1>;
        close(traf1);
        open (userfile1, ">> /internet/userstat") || die;    #
        print userfile1 $line;                    #
        close (userfile1);                    #
                        
        system ("date >> /internet/userstat");    #
        
        open (userfile3, "> /home/user/userdata") || die;        #
        print userfile3 2 , "\n"  ;            #
        close (userfile3);                    #
        system ("/sbin/ipchains -D forward -i eth0 -s 192.168.1.2 -j MASQ")         #zaprechaem MASQ
        };
#------------------------------------------------------------------------------
Авторизация юзеров по SSH , не коннектясь на сервер лазят только внутри локалки...
Скрипты написаны коряво конечно, но программер я хреновый...


 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру