Mittwoch, 27. Juni 2007

SQUID: fuer User ein Script ausfuehren

Hier im Beispeil ist es so das der SQUID_Porxy 10.11.12.12 auf Port: 3128
hinter einem AV-Proxy 10.11.12.13 Port: 8080 haengt.

Dazu muss in der /etc/init.d/squid bei

start {

noch folgende 2 Zeilen angefuegt werden!

export http_proxy=http://10.11.12.13:8080/
export ftp_proxy=http://193.11.12.13:8080/



Um z.B. einem / mehrer User etwas zu aergern kann man z.B. Bilder
unschaf machen. (blur)

Auf dem Proxy muss ein apache server instl. sein.

Im "ServerDocumentRoot" z.B: /var/www/html muss es ein verz. images geben.
In das der User der den mit dessen rechte der squid laeuft schreiben darf.

z.B:

# cd /var/www/html
# ls -la

drwxrwxr-x 3 root squid 4096 2007-06-26 14:17 images



--------------------

http_port 3128
cache_access_log none

cache_peer 10.11.12.13 parent 8080 7 no-query no-digest no-netdb-exchange

auth_param basic children 15
auth_param basic realm ourproxy.domain.tld
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off


### ADS Auth
auth_param basic program /usr/lib/squid/squid_ldap_auth -b "dc=ourdom,dc=zzz" -R -D ldapuser@ourdom.zzz -w password -f "(&(sAMAccountName=%s)(memberOf=CN=Squid-Proxy,OU=Groups,OU=NL1,DC=ourdom,DC=tld))" adssrv.ourdom.zzz


redirect_program /usr/local/bin/.pl
redirect_children 5

acl Mobbing proxy_auth user1 User2 User3
acl Mobbing proxy_auth SURFER


redirector_access allow Mobbing

http_access allow Mobbing SURFER

cache_peer_access 10.11.12.13 allow all
never_direct allow all



--------------------


Alle User aus der ADS die der Gruppe: Squid-Proxy angehoeren, koennen surfen.
Aber die User: user1 User2 User3 werden ueber das "redirect_program"
geleitet und mit den Bildern werden dann je nach Parameter bei "mogrify"
veraendert.


das PerlScript das als "redirect_program" angeben wird
muss fuer den User unter dem squid laeuft ausfuehrbar sein.

-rwxr-xr-x 1 root root 1004 2007-06-26 15:33 squid_redirection_script_blur.pl
-rwxr-xr-x 1 root root 992 2007-06-26 15:14 squid_redirection_script_flip.pl
-rwxr-xr-x 1 root root 992 2007-06-26 15:18 squid_redirection_script_flop.pl



squid_redirection_script_blur.pl

#!/usr/bin/perl

$|=1;

$count = 0;

$pid = $$;

while (<>) {

chomp $_;

if ($_ =~ /(.*\.jpg)/i) {

$url = $1;

system("/usr/bin/wget", "-q", "-O","/var/www/html/images/$pid-$count.jpg", "$url");

system("/usr/bin/mogrify", "-blur", "60","/var/www/html/images/$pid-$count.jpg");

system("/bin/chmod", "777","/var/www/html/images/$pid-$count.jpg");

print "http://193.98.77.123/images/$pid-$count.jpg\n";

}

elsif ($_ =~ /(.*\.gif)/i) {

$url = $1;

system("/usr/bin/wget", "-q", "-O","/var/www/html/images/$pid-$count.gif", "$url");

system("/usr/bin/mogrify", "-blur", "60","/var/www/html/images/$pid-$count.gif");

system("/bin/chmod", "777","/var/www/html/images/$pid-$count.gif");

print "http://193.98.77.123/images/$pid-$count.gif\n";



}

else {

print "$_\n";;

}

$count++;

}




squid_redirection_script_flip.pl


#!/usr/bin/perl

$|=1;

$count = 0;

$pid = $$;

while (<>) {

chomp $_;

if ($_ =~ /(.*\.jpg)/i) {

$url = $1;

system("/usr/bin/wget", "-q", "-O","/var/www/html/images/$pid-$count.jpg", "$url");

system("/usr/bin/mogrify", "-flip","/var/www/html/images/$pid-$count.jpg");

system("/bin/chmod", "777","/var/www/html/images/$pid-$count.jpg");

print "http://193.98.77.123/images/$pid-$count.jpg\n";

}

elsif ($_ =~ /(.*\.gif)/i) {

$url = $1;

system("/usr/bin/wget", "-q", "-O","/var/www/html/images/$pid-$count.gif", "$url");

system("/usr/bin/mogrify", "-flip","/var/www/html/images/$pid-$count.gif");

system("/bin/chmod", "777","/var/www/html/images/$pid-$count.gif");

print "http://193.98.77.123/images/$pid-$count.gif\n";



}

else {

print "$_\n";;

}

$count++;

}



squid_redirection_script_flop.pl


#!/usr/bin/perl

$|=1;

$count = 0;

$pid = $$;

while (<>) {

chomp $_;

if ($_ =~ /(.*\.jpg)/i) {

$url = $1;

system("/usr/bin/wget", "-q", "-O","/var/www/html/images/$pid-$count.jpg", "$url");

system("/usr/bin/mogrify", "-flop","/var/www/html/images/$pid-$count.jpg");

system("/bin/chmod", "777","/var/www/html/images/$pid-$count.jpg");

print "http://193.98.77.123/images/$pid-$count.jpg\n";

}

elsif ($_ =~ /(.*\.gif)/i) {

$url = $1;

system("/usr/bin/wget", "-q", "-O","/var/www/html/images/$pid-$count.gif", "$url");

system("/usr/bin/mogrify", "-flop","/var/www/html/images/$pid-$count.gif");

system("/bin/chmod", "777","/var/www/html/images/$pid-$count.gif");

print "http://193.98.77.123/images/$pid-$count.gif\n";



}

else {

print "$_\n";;

}

$count++;

}

Montag, 25. Juni 2007

rsh geht nicht (rhel3 / rhel5)

unter rhel3 / rhel5 geht folgendes wenn das rsh nicht gehen sollte:


vorr.

im homeverz. des users muss eine datei .rhosts sein

Inhalt:





im verz. /etc/pam.d/ die datei rsh


Inhalt:

#%PAM-1.0
# For root login to succeed here with pam_securetty, "rsh" must be
# listed in /etc/securetty.
auth required pam_nologin.so
auth required pam_securetty.so
auth required pam_env.so
#auth required pam_rhosts_auth.so
account required pam_stack.so service=system-auth
session required pam_stack.so service=system-auth


statt dem Orginal

Freitag, 15. Juni 2007

CISCO ISDN Router: Kommandos

Verbinden via Serielle-Kabel (CISCO 9Pol. -> RJ45)
an Consolen Port.



ISDN: (Ist ein Markenname)
-----

TEI = Wie die MAC-Adresse bei Ehternet
Wenn der Wert 0-63 ist dann ist es Statisch zugeweisen
Wert >64 ist es dynamisch zugeweisen
# show isdn status



Commands:
---------

help = Zeigt hilfe an

? = Hinter einem Commando zeigt hilfe zum Commando
(# show interface ?)

exit = Verlassen eines Modus

> show version = Zeigt Infos zum IOS an

> show history = Kommando History

> show clock = Uhrzeit anzeigen

> show sessions = Zeige akt. Sitzungen an

enable = In "Admin" Modus schalten (Prompt #, Normales Modus >)

# alias exec = Setzen von Commandos auf deinen Alias
z.B. alias exec s sh ip int brie

# configure terminal = In der Configureations Modus wechseln (Prompt #(COnfig) )

# show running-config = Zeigt akt. Konfiguration an

# write mem = Schreibe CFG in Flash, wenn nicht ist CFG nach reboot weg!!!!

# write erase = Router Config loeschen

# showflash = Zeigt die Installierte Firmware

# undebug all = Debug ausschalten

# debug all = Debug anschalten

# no ip http server = Auschalen des WebGUI, wengen Security Problemen

#(config) no logging console = Consolen Log ausschalten

#(config) line console 0 = Um z.B. Passwort auf Consolen zugriff auf den Router setzen
login
password meinpassword

#(config) enable secret = Passwort fuer den Enable Mode setzen, z.B. #(config) enable secret meinpassword
Passwort verschuesselt speichern

#(config) hostname = HOSTNAME setzen, z.B. #(config) hostname router



# show ip route = Routingtabelle anzeigen

# show isdn status = Zeigt ISDN Status, TEI usw. an

#(config) ip routing = Routing einschalten

#(config) no ip routing = Routing ausschalten

#(config) clear ip route * = Wenn doppelte Routingeintrage vorhanden


#(config) interface = Interface Konfigurieren (Prompt #(config-if) )

z.B. #(config) interface ethernet 0

#(config-if) ip addres = ip addres 192.168.0.1 255.255.255.0

#(config-if) description = Beschreibung setzen fuer das Interface


#(config-if) no shutdown = Interface UP setzen

#(config-if) shutdown = Interface DOWN setzen


# show interfaces = Zeigt die Interface an

# show interfaces ehternet 0 = Zeigt das Interface ethernet 0 an


# show access-lists = Zeigt Zugriffsliste an

# access-list = Setzen von Access Listen
z.B.
access-list 10 permit any
access-list 101 deny ip any 224.0.0.0 0.255.255.255
access-list 101 permit ip any 192.168.0.0 0.255.255.255


clear up: deny ip any any ist Std. ein
wird aber nicht angezeigt




# debug isdn ? = ISDN Debuggin einschalten

# show debug = Debug Infos anzeigen, was ist im debugmode

#(config-if) dialer load-threshold = Kanalbuendelung einschalten

z.B. #(config-if) dialer load-threshold 255
erst wenn die 64K voll ausgelastet sind
den 2. ISDN Kanal aufbauen
Wer 1 - 255


#(config) username password = verb. zu anderem Router einrichten

#(config) int bri 0
ppp authentication chap