Új hozzászólás Aktív témák
-
SteveBeard
senior tag
Sziasztok!
A következőben kérném a segítségeteket!
Nem igazán értek a scriptek készítéséhez, de sikerült összeraknom különböző forrásokból egy működő scriptet. Cronból időzítettem, a mai napig jól is működött. Ma mikor hazaértem látom, hogy pár órája nem működik. Megpróbáltam futtatni, de ezzel a hibaüzenettel leáll: line 114: arithmetic syntax errorSemmit nem módosítottam, itthon sem voltam.
a 114. sorban egy done van és nem igazán értem miért nem megy az, ami eddig teljesen jól működött.
A scriptet folyamatosan javítgatom, mert menet közben, ahogy olvasom a leírásokat jövök rá hibákra. Tudom közel sem tökéletes, de azért eddig működött.
A script idevonatkozó része:
for MAC in $(cat /proc/net/arp | grep -v address | awk '{print $4}') ; do
MAC_=$(echo $MAC | sed 's/:/-/g')
IP=$(cat /proc/net/arp | grep $MAC | awk '{print $1}')
# This assumes that a local dns server (like dnsmasq) is running
NAME=$(nslookup $IP | grep Address | grep -v localhost | awk {'print $4}')
# echo "mac: $MAC ip: $IP_ name: $NAME"
UP=$(cat /opt/www_traff/traffic.tmp | awk '{print $2 " " $7}' | grep $IP | awk '{print $1}' | tr -d '\n' )
ALL_UP=`ifconfig eth0.2 | grep bytes | awk -F ":" '{print $3}' | awk '{print $1}'`
DOWN=$(cat /opt/www_traff/traffic.tmp | awk '{print $2 " " $8}' | grep $IP | awk '{print $1}' | tr -d '\n' )
ALL_DOWN=`ifconfig eth0.2 | grep bytes | awk -F ":" '{print $2}' | awk '{print $1}'`
if [ ! -e /opt/www_traff/rrd/$NAME.sum.traf ]; then
echo 0 > /opt/www_traff/rrd/$NAME.sum.traf
fi
PREVSUM=`cat /opt/www_traff/rrd/$NAME.sum.traf`
NOWSUM=$(($UP+$DOWN))
SUM=$(($PREVSUM+$NOWSUM))
echo $SUM >/opt/www_traff/rrd/$NAME.sum.traf
COUNTIP=$(iptables -vnL traffic | grep $IP | wc -l | awk '{print $1}')
if [ "$COUNTIP" -eq 0 ] ; then
iptables -A traffic -s $IP
iptables -A traffic -d $IP
fi
# create db if not exists
if [ ! -e /opt/www_traff/rrd/${MAC_}.rrd ] ; then
# echo creating /opt/www_traff/rrd/${MAC_}.rrd
rrdtool create /opt/www_traff/rrd/${MAC_}.rrd -s 300 \
DS:up:ABSOLUTE:600:0:U \
DS:down:ABSOLUTE:600:0:U \
RRA:AVERAGE:0.5:1:576 \
RRA:AVERAGE:0.5:3:672 \
RRA:AVERAGE:0.5:12:732
fi
#echo "up: $UP down: $DOWN"
ED=`date +%s`
STATDATE=`date +%Y-%m-%d`
START=`expr $ED % 86400`
logger -t traff_graph "Statdate:$STATDATE Start:$START"
rrdtool update /opt/www_traff/rrd/${MAC_}.rrd N:$UP:$DOWN
CreateGraph "/opt/www_traff/rrd/${MAC_}_${STATDATE}.png" $START /opt/www_traff/rrd/${MAC_}.rrd "IP: $IP MAC: $MAC_ Host: $NAME"
INDEX=$INDEX"<img src='${MAC_}_${STATDATE}.png'><br>"
SUMMB=$(($SUM/1048576))
SUMTRAFTAG=$SUMTRAFTAG"<a> $NAME: $SUMMB MB</a><br>"
WEEK=`echo 1 | awk '{print strftime("%Y-%W", systime()-86400)}'`
STATDATE=week_$WEEK
START=7d
CreateGraph "/opt/www_traff/rrd/${MAC_}_${STATDATE}.png" $START /opt/www_traff/rrd/${MAC_}.rrd "IP: $IP MAC: $MAC_ Host: $NAME"
INDEX=$INDEX"<img src='${MAC_}_${STATDATE}.png'><br>"
MONTH=`echo 1 | awk '{print strftime("%Y-%m", systime()-86400)}'`
STATDATE=month_$MONTH
START=`echo 1 | awk '{print strftime("%d", systime()-86400)}'`d
CreateGraph "/opt/www_traff/rrd/${MAC_}_${STATDATE}.png" $START /opt/www_traff/rrd/${MAC_}.rrd "IP: $IP MAC: $MAC_ Host: $NAME"
INDEX=$INDEX"<img src='${MAC_}_${STATDATE}.png'><br>"
doneElőre is köszi a segítséget!
[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
Sziasztok!
Egy scriptben így íratom ki a csatlakoztatott gép(ek) nevét.
nslookup $IP | grep Address | grep -v localhost | awk {'print $4}'Ezzel semmi gond, de a gép neve mellé még hozzáfűzi a .lan -t is. a lan előtt van pont is
Ezt ki lehetne valahogy szedni?Steve
-
SteveBeard
senior tag
válasz Jester01 #1222 üzenetére
Bocsánat én tényleg nem értek hozzá, de amit szeretnék azt készen nem találtam meg a neten, ezért megpróbálom megoldani magam. Mindent a neten szedtem össze különböző helyekről nem én találom ki.Ez is így szerepelt
Egyébként grafikonok készülnek MAC vagy IP alapján szűrve a hálózati forgalomról és a grafikonok felső sorába íratnám ki a gépek nevét. A dolog működik, csak felesleges nekem a .lan
És még egyszer bocs...
Steve
-
SteveBeard
senior tag
válasz Jester01 #1227 üzenetére
root@OpenWrt:~# nslookup 192.168.1.100 127.0.0.1 | grep "Name:" | awk '{print $2
}'
192.168.1.100
root@OpenWrt:~# nslookup 192.168.1.100 | grep Address | grep -v localhost | awk
{'print $4}'
Pistii-LAPTOP.lan
root@OpenWrt:~#Az első az eredeti, arra az ip címet dobta vissza, a második, amit én hoztam össze, azt sem egyedül.
Utánaolvasok és megpróbálom szabályosan megcsinálni, de csak egy éve foglalkozom "komolyabban" Linuxszal és 50 évesen nem egyszerű...Tényleg bocs a láma kérdésekért, ráadásul nem is otthon vagyok, távoli eléréssel próbálkozom...
[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
-
SteveBeard
senior tag
válasz bambano #1223 üzenetére
Köszönöm a tanácsot, tényleg elrontottam, javítottam.
Ez sed -e 's/\.lan//' működik, amíg nincs jobb, ez marad.
Ezt is köszönöm!
Mivel saját magamnak készül, és nem azt szeretném, hogy a leckét valaki más csinálja meg helyettem, ezért csak én nevetek majd magamon és nektek szerzek néhány vagy percet. Kinek kinek vérmérséklete szerintSteve
-
SteveBeard
senior tag
válasz Jester01 #1244 üzenetére
Sziasztok!
Mind a két megoldás jó lett, mivel nálam mindig van, legalábbis eddig mindig volt .lan a végén.
Köszönöm!
Közben már a host parancs is működik..root@OpenWrt:~# host 192.168.1.100
100.1.168.192.in-addr.arpa domain name pointer Pistii-LAPTOP.lan.
root@OpenWrt:~# host 192.168.1.100 | awk '{print $5}'
Pistii-LAPTOP.lan.
root@OpenWrt:~# host 192.168.1.100 | awk '{print $5}' | sed -e 's/\.lan.//'
Pistii-LAPTOP[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
válasz Jester01 #1250 üzenetére
Szia!
Ez is rendben van, tökéletesen megy nálam is.
A söröket hova küldjem?
Gondolom ezt lenne célszerű használni.
De alapból a host parncsot nem ismerte, mert arra a következő választ kaptam.
-ash: host: not foundJobb ötlet híján telepítettem ezt
bind-host 9.9.1-P3-1 bind simple DNS client
és innentől kezdve ez is ment.Mondtad, hogy láttad az eredeti scriptet és elszörnyülködtél rajta. Ettől függetlenül lehet még azzal kapcsolatban kérdésem, vagy ne hergeljelek vele tovább?
Mert van benne még egy ilyen grep | awk | grep sor , (kettő, de szinte ugyanaz) amit ha rendbe lehetne hozni nem is zaklatnálak tovább.
Ráadásul úgy vettem észre, hogy néha ki is akasztja a scriptet.
Ami azt jelenti, hogy váratlanul leáll syntax error hibával, de kétszer- háromszor újraindítva lefut rendesen.Ez az egész egy routeren fut. Van benne egy csomó monitorozó lehetőség, de olyan nagy az erőforrásigénye azoknak, hogy nem érdemes használni. Az rrdtool-t, ami gyűjti az adatokat és rajzolja a grafikonokat, meg észre sem venni, hogy megy a háttérben.
[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
válasz Jester01 #1253 üzenetére
Köszönöm!
Eu a parancs írja egy fájlba a forgalmat
iptables -L traffic -vnxZ -t filter > /opt/test/sum/traffic.tmpami így néz ki:
Chain traffic (1 references)
pkts bytes target prot opt in out source destination
15 3046 all -- * * 192.168.1.150 0.0.0.0/0
16 1238 all -- * * 0.0.0.0/0 192.168.1.150
184 23170 all -- * * 192.168.1.135 0.0.0.0/0
133 16470 all -- * * 0.0.0.0/0 192.168.1.135
0 0 all -- * * 192.168.1.190 0.0.0.0/0
0 0 all -- * * 0.0.0.0/0 192.168.1.190
0 0 all -- * * 192.168.10.5 0.0.0.0/0
0 0 all -- * * 0.0.0.0/0 192.168.10.5
0 0 all -- * * 192.168.10.152 0.0.0.0/0ez folytatódik hosszú sorokon keresztül, majd így fejeződik be:
0 0 all -- * * 0.0.0.0/0 192.168.2.150
0 0 all -- * * 192.168.1.10 0.0.0.0/0
0 0 all -- * * 0.0.0.0/0 192.168.1.10
5962 4181681 all -- * * 192.168.1.100 0.0.0.0/0
3893 419831 all -- * * 0.0.0.0/0 192.168.1.100
0 0 all -- * * 192.168.10.106 0.0.0.0/0
0 0 all -- * * 0.0.0.0/0 192.168.10.106
0 0 all -- * * 192.168.10.188 0.0.0.0/0
0 0 all -- * * 0.0.0.0/0 192.168.10.188
0 0 all -- * * 192.168.10.100 0.0.0.0/0
0 0 all -- * * 0.0.0.0/0 192.168.10.100
0 0 all -- * * 192.168.10.115 0.0.0.0/0
0 0 all -- * * 0.0.0.0/0 192.168.10.115
Zeroing chain `traffic'Azt nem tudom, hogy miért kerülnek bele a 192.168.10.XXX ip címek, de most ez talán lényegtelen. A modem címe egyébként a 192.168.10.1
Majd ebből a bejövő forgalmat ezzel szedi ki.
IN=$(cat /opt/test/sum/traffic.tmp | awk '{print $2 " " $7}' | grep $IP | awk '{print $1}' | tr -d '\n' )
IN=$(($IN+0))A kimenő forgalom ugyanez, csak a $7 helyett $8 szerepel
Steve
-
SteveBeard
senior tag
válasz bambano #1255 üzenetére
Természetesen igen, érzem, ezért is írtam, amit írtam, hogy kérdezhetek-e.
Az openwrt wiki-n találtam, az egészet, jól hangzott, kipróbáltam, nem működött és addig-addig alakítgattam,a míg sikerült belőle grafikonokat gyártani.
Ezen a részen nem alakítottam semmit ez teljesen ugyanaz, mint a leírásban
És van még benne több ilyen is
Most, hogy már működik és felvilágosítottatok arról, hogy egyébként úgy sz.r, ahogy van gondoltam valahogy egy kicsit rendbe kéne rakni és én is tanulok belőle valamit... talán, hisz' tele csuporba már nehéz tölteniSteve
-
SteveBeard
senior tag
válasz Jester01 #1268 üzenetére
Köszönöm a segítségeteket!
Amit elsőként szerettem volna megcsinálni az sikerült.
Sajnos igazán rendbe rakni nem tudtam, egyelőre így marad...
Ha már ennyit foglalkoztatok velem, akkor megmutatom miről is volt szó.
Ezek a képek MAC címre bontva készülnek el, napi, heti, és havi bontásban...Steve
-
SteveBeard
senior tag
Ahogy mondtam korábban, hogy napi, heti, és havi bontásban készülnek el a képek.
Azt sikerült elérni, hogy csak hétfőn készítse el az előző heti képet.
Azt meg lehet oldani, ha már elkészítette a képet, akkor többször már csinálja meg?
A script ide vonatkozó része:
if [ -z $1 ] && [ $WEEKDAY -eq 1 ]
then
WEEK=`echo 1 | awk '{print strftime("%Y-%W", systime()-86400)}'`
STATDATE=week_$WEEK
START=7d
CreateGraph "/opt/www_traff/rrd/${MAC_}_${STATDATE}.png" $START /opt/www_traff/rrd/${MAC_}.rrd "IP: $IP MAC: $MAC_ Host: $NAME $SUMMB MB"
fi[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
Sziasztok!
Nem nagyon van mozgás, ezért fel merem tenni a kérdésem...Egy scriptben ennek a sornak mi a feladata?
logger -t makepng_load "Imgfile:$IMGFILE Start:$2"
Steve
-
SteveBeard
senior tag
Sziasztok!
Szeretnék törölni több fájlt, mindegyikben szerepel a 00-00-00-00-00-00 és .traf .png .rrd lehet a kiterjesztése.
Az rm $IMAGEFILE/00-00-00-00-00-00*.png és persze a kiterjesztésnek megfelelően a többi parancs törli is a fájlokat, de ha nincs ilyen fájl, akkor hibaüzenetet ad.
Ezt szerettem volna kikerülni és a korábbi hozzászólásokat bogarászva próbáltam megoldani, de kevés sikerrel.
Ez lett volna, amit kitaláltam:
[[ -f "$IMAGEFILE/00-00-00-00-00-00*.png" ]] && rm "$IMAGEFILE/00-00-00-00-00-00*.png"
[[ -f "$IMAGEFILE/00-00-00-00-00-00*.traf" ]] && rm "$IMAGEFILE/00-00-00-00-00-00*.traf"
[[ -f "$IMAGEFILE/00-00-00-00-00-00*.rrd" ]] && rm "$IMAGEFILE/00-00-00-00-00-00*.rrd"vagy ez:
if [ -f $IMAGEFILE/00-00-00-00-00-00*.png ] ; then
rm "$IMAGEFILE/00-00-00-00-00-00*.png"
fi
De mind a két változatra ez a hibaüzenet:
+ [[ -f /opt/www_traff/stat_images/00-00-00-00-00-00_2013-01-10.png /opt/www_traff/stat_images/00-00-00-00-00-00_week_2013-01.png ]]
sh: /opt/www_traff/stat_images/00-00-00-00-00-00_week_2013-01.png: unknown operand
+ [[ -f /opt/www_traff/stat_images/00-00-00-00-00-00*.traf ]]
+ [[ -f /opt/www_traff/stat_images/00-00-00-00-00-00*.rrd ]]A sima törlés megy, ahogy látom a fájlokat is megtalálja, nem tudom hol rontom el
(#1284) bambano
Ha sikerül kijavítanom azokat a hibákat, amiket mondtatok, természetesen kiteszem, de ha érdekel elküldhetem Neked pü-ben. Egész szépen dolgozik, még egy html oldalt kell neki készítenem, hogy kereshető is legyen, mert egyelőre csak az aktuális kapcsolatokat és azok grafikonjait jeleníti meg. Az sem lesz kis feladat, mivel még soha nem csináltam.[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
válasz SteveBeard #1287 üzenetére
Kiszaladtam a szerkesztési időből.
Arra közben rájöttem, hogy az nem tetszik neki, ha ugyanolyan kiterjesztésű fájlból többet talál.
Ha csak egy van belőle, akkor simán törli....[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
Nem teljesen ide, de hirtelen nem tudom hol kérdezzem meg. Ti hogy íratnátok ki a hetek számát?
Ha jól tudom már a 2. hét van, de eszerint:
date +%Y-%W
2013-01az első....
[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
Sziasztok!
Adott ez a rész egy scriptben:
for MAC in $(cat /etc/ethers |cut -f1) ; do
MAC_=$(echo $MAC | sed 's/:/-/g')
doneHogy tudnám elérni, hogy bizonyos MAC címeket ne vegyen figyelembe?
Steve
-
SteveBeard
senior tag
válasz Jester01 #1299 üzenetére
Úgy nézett ki, hogy minden rendben, hibát sem dobott, de csak nem akarta figyelmen kívül hagyni a megadott MAC címet. Két MAC címről lett volna szó a 00-00... és egy a routerre csatlakoztatott PS2 címéről.
Egyelőre pihentetem a dolgot, azután pár nap után friss erővel nekifutok megint.
Már nem tudom Neked bemásolni, mert kitöröltem, de talán jobb isSteve
-
SteveBeard
senior tag
válasz Jester01 #1296 üzenetére
Sziasztok!
Egy kis segítséggel sikerült megoldani a MAC cím kizárást. Köszönöm megint, ez a része most tökéletes lett.Lenne egy újabb kérdésem.
A MAC címekre csak akkor tudok hivatkozni, ha az adott eszköz csatlakozik.
De nekem szükségem lenne arra, hogy olyankor is meg tudjam adni változónak a MAC címet, ha éppen nincs jelen az eszköz. Erre van valami ötletetek?
Például egy mappába gyűlnek a statisztikai adatok xx-xx-xx-xx-xx.xx.rrd néven. Esetleg ebből kiszedni a MAC címet és arra hivatkozni változóként?
Vagy amikor az alábbi parancs lefut, akkor valahova gyűjtse a MAC címeket és ott hivatkozni rájuk.
MAC_=$(echo $MAC | sed 's/:/-/g')
Valami ötlet esetleg?Steve
-
SteveBeard
senior tag
válasz bambano #1305 üzenetére
Szia!
A MAC címek fájlba gyűjtése rendben így:
echo $MAC >> /opt/www_traff/prevmac.txt
Majd ezzel a paranccsal rendbe rakom és egy másik fájlba másolom.
cat /opt/www_traff/prevmac.txt | sort | uniq >/opt/www_traff/mac.txt
Majd a script lefutásának a végén ezzel visszamásolom az eredeti fájlba.
cat /opt/www_traff/mac.txt > /opt/www_traff/prevmac.txt
Ez így jó vagy van valami szebb megoldás is?
[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
válasz bambano #1307 üzenetére
Én úgy veszem észre, hogy nem törli, de majd pár óra múlva kiderül, mikor lekapcsolódnak az eszközök.
Mivel a prevmac fájlba visszaírom a Mac címeket és az echo hozzáfűzi az aktuálist.
A felesleges fork-ot meg nem hiszem, hogy kitalálom...
Én szívesen használnám azt, amit valaki más megcsinál, a fene kínlódjon vele 50 fölött ennyit, megtanulni már úgysem fogom, de nem találtam készen ilyet.
Ha tudsz OpenWrt alá mondani hasonlót, ami szinte nulla terhelést okoz a routernek, akkor már törlöm is az egészet és használom aztSteve
-
SteveBeard
senior tag
válasz SteveBeard #1308 üzenetére
Esetleg erre gondoltál?
cat /opt/www_traff/prevmac.txt | sort -u[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
(#1305) bambano
Csak a jegyzőkönyvnek..
Működik a dolog, van olyan eszköz, (mobiltelefon) ami itthon sincs, de a MAC címe szerepel a listán.
Köszi az útmutatást, anélkül nem ment volna...
Sikerült szétbontani a scriptet, így az adatgyűjtés a grafikon készítéstől teljesen külön vált, így teljesen észrevétlen a működése.Steve
-
SteveBeard
senior tag
Sziasztok!
Egy script részeként olyan txt fájlokat szeretnék törölni, amelyeken az utolsó egy hónapban nem történt módosítás.
Ez a parancs megfelelő erre a feladatra?find /path -name "*.txt" -mtime +31 -exec rm -rf '{}' \;
Steve
-
SteveBeard
senior tag
Sziasztok!
Kéne egy "kis shell script topik" is kezdőknek...
Két számot kéne összehasonlítanom a problémám csak az, hogy tizedes számról van szó eben a formában.
1.11
Egész számokkal működik
if [[ 3 -ge 2 ]]
then
echo "nagyobb"
else
echo "kisebb"
fi
de ha így írom be
if [[ 3.00 -ge 2 ]]
then
echo "nagyobb"
else
echo "kisebb"
fi
bad number hibaüzenetet kapom.Steve
-
SteveBeard
senior tag
Sziasztok!
Ebben a scriptben, hogy tudnám megoldani azt, hogy a tiltást több ip címnél is alkalmazni tudjam?
Előre is köszi a segítséget!#Block URL on certain time for specified IP
LOCAL_IP=192.168.1.150
TIME_START=10:00
TIME_END=23:00
for URL_STRING in $(cat /etc/url_string.txt | awk '{print $1}') ; do
echo Blocking $URL_STRING from $LOCAL_IP at time interval $TIME_START - $TIME_END
iptables -I FORWARD -s $LOCAL_IP -m string --string $URL_STRING --algo bm -m time --weekdays Mon,Tue,Wed,Thu,Fri --timestart $TIME_START --timestop $TIME_END -j DROP
doneSteve
-
SteveBeard
senior tag
válasz dabadab #1472 üzenetére
Bocsánat rosszul fogalmaztam
Azt gondolom így lett volna helyes a megfogalmazás:
a tiltást több helyi ip címre is alkalmazni tudjam?
De megpróbálom másként:
Az etc/url_string.txt file-ban sorolom fel amit tiltani akarok.
Majd itt adom meg melyik belső ip címre vonatkozzon a tiltás. -> LOCAL_IP=192.168.1.150
De szeretném ugyanezt a tiltást több belső ip címre is alkalmazni. Tehát ne csak a 192.168.1.150-re vonatkozzon, hanem mondjuk a 192.168.1.178-ra is, vagy akár többre is.
Ne haragudjatok a szakszerűtlen megfogalmazásért!bambano
Köszönöm!
Kipróbálom..[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
válasz bambano #1473 üzenetére
Még egyszer köszönöm, jó lett.
Nem gondoltam, hogy ezt többször is lehet egymás után, mindig tanul az ember valamit.Íme a végeredmény, ami működik, csak azért így, hogy később ne kelljen a tűzfalban szerkesztgetni.
Egyszerűbb a txt fájlt módosítani.TIME_START=10:00
TIME_END=23:00
for LOCAL_IP in $(cat /etc/controlled_ip.txt | awk '{print $1}'); do
for URL_STRING in $(cat /etc/url_string.txt | awk '{print $1}') ; do
echo Blocking $URL_STRING from $LOCAL_IP at time interval $TIME_START - $TIME_END
iptables -I FORWARD -s $LOCAL_IP -m string --string $URL_STRING --algo bm -m time --weekdays Mon,Tue,Wed,Thu,Fri --timestart $TIME_START --timestop $TIME_END -j DROP
done
doneJól tudom, hogy linuxnál a txt kiterjesztést akár el is hagyhatom?
Nem túl rég használok linux rendszert...[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
válasz Intruder2k5 #1514 üzenetére
Szia!
Kicsit keresgéltem ez ügyben.
Ezt találtam, nekem úgy tűnik működik a Vargalex féle Openwrt alatt.
Legalábbis a script futtatása után ezt a választ kapom:
...
+ echo Login successful
Login successful
+ exit 0Csak a curl-t kellett telepíteni hozzá.
És a script:
#!/bin/sh
#DEBUG=1
LOGIN="****"
PASSWORD="****"
COOKIES="/tmp/.dynsdns.cookies.txt"
AL="en-gb"
#UA="Mozilla/5.0 (Macintosh; Intel Mac OS X) AppleWebKit/0.0.0 (KHTML, like Gecko) Version/0.0.0 Safari/0.0.0"
LOGINURL="https://account.dyn.com/entrance/"
POSTURL="$LOGINURL"
CHKURL="https://account.dyn.com/"
(( $DEBUG )) && DST="-" || DST="/dev/null"
[[ -w "$( dirname "$COOKIES" )" ]] || { echo >&2 "FATAL: Cannot write to directory '$( dirname "$COOKIES" )'" ; exit 1; }
# Ensure no broken session caching...
if [[ -s "$COOKIES" ]]; then
[[ -w "$COOKIES" ]] || { echo >&2 "FATAL: Cannot write to file '$COOKIES'" ; exit 1 ; }
rm -f "$COOKIES" >/dev/null 2>&1
fi
(( $DEBUG )) && echo >&2 "DEBUG: Fetching initial headers to pre-load cookies..."
curl -b $COOKIES -c $COOKIES -Ikso "$DST" -A "$UA" --url "$LOGINURL"
(( $DEBUG )) && echo >&2 "DEBUG: Fetching UID..."
VALUE="$(
curl -b $COOKIES -c $COOKIES -kso - -A "$UA" --url "$LOGINURL" | \
grep -m 1 "multiform" | \
cut -d"'" -f 6
)"
(( $DEBUG )) && echo >&2 "DEBUG: Read UID as '$VALUE' - posting data..."
curl -b $COOKIES -c $COOKIES -d "username=$LOGIN" -d "password=$PASSWORD" -d "iov_id" -d "multiform=$VALUE" -e "$LOGINURL" -kso "$DST" -A "$UA" --url "$POSTURL"
(( $DEBUG )) && echo >&2 "DEBUG: Response received - verifying result..."
curl -b $COOKIES -c $COOKIES -e "$POSTURL" -kso - -A "$UA" -H "Accept-Language: $AL" --url "$CHKURL" | \
grep -qE "<span>(Welcome|Hi) <b>$LOGIN</b></span>" \
&& echo "Login successful" \
|| { echo >&2 "Login failed" ; exit 1 ; }
exit 0Forrás:[link]
Steve
-
SteveBeard
senior tag
válasz Intruder2k5 #1516 üzenetére
Írd be a #!/bin/sh után a következő sorba set -x ,majd futtasd le újra!
Én innen derítettem ki, hogy nem ismeri fel curl parancsot.
Talán Nálad is kiderül, hogy mi nem tetszik neki...Steve
-
SteveBeard
senior tag
válasz Intruder2k5 #1518 üzenetére
Ha megnézed az eredeti oldalt, ott a 22. hsz környékén írnak arról, hogy a speciális karakterekkel gond lehet...
Reméljük ez meg is oldja ezt a problémát!
Addig, míg ki nem találnak valami speciális beléptetési módszert...
[ Szerkesztve ]
Steve
-
SteveBeard
senior tag
-
SteveBeard
senior tag
Sziasztok!
iptables -L traffic -vnxZ -t filter > /opt/www_traff/traffic.tmp
Ha az eredményt nem csak egy fájlba szeretném beíratni, hanem többe is, azt hogy tudnám megtenni?
Steve
Új hozzászólás Aktív témák
- World of Warcraft Shadowlands Collectors edition EU EN
- Canva Pro előfizetés - 1 éves
- Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Windows, Office licencek a legolcsóbban, egyenesen a Microsoft-tól - 2990 Ft-tól!
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! LEGOLCSÓBB! Automatikus 0-24