netstat vs ss
For netværksadministratorer er socket info en vigtig del af jobbet.
netstat, men også ss, er uundværlige værktøjer, men ikke alle Linux har dem installeret default.
Hvis du ønsker info omkring netstat og ss, så vær venlig at spørge ...
netstat, men også ss, er uundværlige værktøjer, men ikke alle Linux har dem installeret default.
Hvis du ønsker info omkring netstat og ss, så vær venlig at spørge ...
Kommentarer2
Hvis du ønsker info
Hvad bruger man dem typisk til?
For at se hvad der sker på
netstat -h og ss -h lister flag og fortæller om funktionerne.
Jeg bruger dette bash med nogle få af de tilgængelige commands, men glem ikke Wireshark m.f., hvis de er mulige på netværk man normalt ikke administrerer.
Hvis det handler om Arch, så skal net-tools muligvis først installeres før netstat fungerer. Ubuntu brugere kender det muligvis under navnet gnome-nettool, på dansk netværksværktøjer. Imidlertid kan ss erstatte netstat.
#!/bin/bash
# Bash colors definition: https://misc.flogisoft.com/bash/tip_colors_and_formatting
# netstat options: https://www.ghacks.net/2018/03/21/how-to-use-netstat-in-gnu-linux/
# Define variables
#EDITOR=vim
#PASSWD=/etc/passwd
YEL='\033[1;33;1m'
RED='\033[0;41;37m'
RED2='\033[1;31;1m'
BLUE='\033[34m'
BLUE2='\033[1;34;1m'
STD='\033[0;0;39m'
# function
pause(){
read -p "Press [Enter] key to continue..." fackEnterKey
}
# call item 1
one(){
echo "one() called"
pause
}
# call item 2
two(){
echo "two() called"
pause
}
# call item 3
three(){
echo "three() called"
pause
}
# call item 4
four(){
echo "four() called"
pause
}
# call item 5
five(){
echo "five() called"
pause
}
# call item 6
six(){
echo "six() called"
pause
}
# call item 7
seven(){
echo "seven() called"
pause
}
# call item 8
eight(){
echo "eight() called"
pause
}
# call item 9
nine(){
echo "nine() called"
pause
}
# function to display menu
show_menus() {
clear
echo
echo -e ${BLUE2}
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo " N E T S T A T - S S - M E N U"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo
echo "1. Display all sockets statically (netstat)"
echo "2. Display all sockets continuously (netstat)"
echo "3. Check all unique IP addresses connected (netstat)"
echo "4. Check for DOS attack (netstat)"
echo "5. Check network interfaces (netstat)"
echo "6. Netstat documentation and flags (netstat)"
echo "7. Display all sockets statically (ss)"
echo "8. Display all listening sockets (ss)"
echo -e ${RED2}
echo "9. Exit"
echo -e ${STD}
}
# read input from the keyboard and take an action
# &>/dev/null suppress stdout and stderr
read_options(){
local choice
tput setaf 2
tput bold
read -p "Enter choice and press Enter [1 - 9] " choice
tput sgr0
case $choice in
1) netstat -an ;;
2) netstat -c ;;
3) netstat -nat | awk '{ print $5}' | cut -d: -f1 | sed -e '/^$/d' | uniq ;;
4) echo -e "${YEL}Check for unauthorised sockets to this computer${STD}"
echo
sudo netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n ;;
5) netstat -ie ;;
6) xdg-open https://www.ghacks.net/2018/03/21/how-to-use-netstat-in-gnu-linux &>/dev/null ;;
7) ss -a ;;
8) ss -l ;;
9) exit 0;;
*) echo -e "${RED}Not a menu-item...${STD}" && sleep 1
esac
}
# Trap CTRL+C, CTRL+Z and quit singles
trap '' SIGINT SIGQUIT SIGTSTP
# Main logic - infinite loop
while true
do
show_menus
read_options
echo -e $YEL
read -p "Press [Enter] key to return to the NETSTAT MENU..." fackEnterKey
#$SHELL
done
Ellers er der mere forklaret her, for dem der ikke kender ss:
https://www.binarytides.com/linux-ss-command/
gHacks om netstat:
https://www.ghacks.net/2018/03/21/how-to-use-netstat-in-gnu-linux/