add .env & block_port.sh
This commit is contained in:
2
scripts/.env
Normal file
2
scripts/.env
Normal file
@@ -0,0 +1,2 @@
|
||||
OPEN_PORT_SEQ="8100, 7200, 13000"
|
||||
CLOSE_PORT_SEQ="6300, 5200, 12001"
|
||||
29
scripts/block_port.sh
Executable file
29
scripts/block_port.sh
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
source .env # load vars from .env file
|
||||
|
||||
case "${1}" in
|
||||
search )
|
||||
# load container ip in array IPs
|
||||
mapfile IPs < <( nmap 172.28.0.2-10 -sn | grep "ngx" | awk '{print substr($6, 2, length($6)-2)}')
|
||||
# using 'tr' for escape bug with \n in array elements
|
||||
echo "IPs=( $(echo ${IPs[@]} | tr '\n' ' '))" >> .env
|
||||
;;
|
||||
block )
|
||||
echo "knock -v ${IPs[$2]} $(echo ${CLOSE_PORT_SEQ} | sed 's/,//g')"
|
||||
knock -v ${IPs[$2]} $(echo ${CLOSE_PORT_SEQ} | sed 's/,//g')
|
||||
;;
|
||||
open )
|
||||
echo "knock -v ${IPs[$2]} $(echo ${OPEN_PORT_SEQ} | sed 's/,//g')"
|
||||
knock -v ${IPs[$2]} $(echo ${OPEN_PORT_SEQ} | sed 's/,//g')
|
||||
;;
|
||||
list )
|
||||
# print array IPs
|
||||
numb=0 # counter var
|
||||
for ip in "${IPs[@]}"; do
|
||||
echo "${numb}: ${ip}" # add index array element
|
||||
numb=$((${numb}+1))
|
||||
done
|
||||
;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user