whoisconnected
Télécharger (1 Ko)
#!/bin/bash
#Affiche les connexions actives.
#Plus pour montrer l'utilisation de /proc/net/tcp
#étant donné que netstat permet facilement d'obtenir
#ces informations.
convertIP()
{
IP=""
for i in 1 2 3 4
do
car1=`expr $i "*" 2 - 1`
car2=`expr $i "*" 2`
number=`echo $1 | cut -c $car1-$car2 | hex2 d`
if [ -n "$IP" ]
then
IP=$number.${IP}
else
IP=$number
fi
done
echo $IP
}
echo -e "\tSource\t\t\tDestination"
echo
for connexion in `cat /proc/net/tcp | grep -v local | sed 's/ /_/g'`
do
connexion=`echo $connexion | sed 's/_/ /g'`
source=`echo $connexion | gawk '{print $2}'`
dest=`echo $connexion | gawk '{print $3}'`
source_addr=`echo $source | gawk -F ":" '{print $1}'`
source_port=`echo $source | gawk -F ":" '{print $2}'`
dest_addr=`echo $dest | gawk -F ":" '{print $1}'`
dest_port=`echo $dest | gawk -F ":" '{print $2}'`
if [ "$source_addr" != "00000000" -a "$dest_addr" != "00000000" ]
then
source_addr=`convertIP $source_addr`
dest_addr=`convertIP $dest_addr`
source_port=`echo $source_port | hex2 d`
dest_port=`echo $dest_port | hex2 d`
echo -e "${source_addr}:${source_port}\t\t${dest_addr}:${dest_port}"
echo "`host $source_addr | gawk '{print $5}'` - `host $dest_addr | gawk '{print $5}'`"
echo
fi
done
#Affiche les connexions actives.
#Plus pour montrer l'utilisation de /proc/net/tcp
#étant donné que netstat permet facilement d'obtenir
#ces informations.
convertIP()
{
IP=""
for i in 1 2 3 4
do
car1=`expr $i "*" 2 - 1`
car2=`expr $i "*" 2`
number=`echo $1 | cut -c $car1-$car2 | hex2 d`
if [ -n "$IP" ]
then
IP=$number.${IP}
else
IP=$number
fi
done
echo $IP
}
echo -e "\tSource\t\t\tDestination"
echo
for connexion in `cat /proc/net/tcp | grep -v local | sed 's/ /_/g'`
do
connexion=`echo $connexion | sed 's/_/ /g'`
source=`echo $connexion | gawk '{print $2}'`
dest=`echo $connexion | gawk '{print $3}'`
source_addr=`echo $source | gawk -F ":" '{print $1}'`
source_port=`echo $source | gawk -F ":" '{print $2}'`
dest_addr=`echo $dest | gawk -F ":" '{print $1}'`
dest_port=`echo $dest | gawk -F ":" '{print $2}'`
if [ "$source_addr" != "00000000" -a "$dest_addr" != "00000000" ]
then
source_addr=`convertIP $source_addr`
dest_addr=`convertIP $dest_addr`
source_port=`echo $source_port | hex2 d`
dest_port=`echo $dest_port | hex2 d`
echo -e "${source_addr}:${source_port}\t\t${dest_addr}:${dest_port}"
echo "`host $source_addr | gawk '{print $5}'` - `host $dest_addr | gawk '{print $5}'`"
echo
fi
done
Si avez des problèmes avec ce script, vous pouvez utiliser le Forum Scripts