|
@@ -340,8 +340,19 @@ fn_details_statusbottom(){
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
# Engine Specific details
|
|
# Engine Specific details
|
|
|
|
|
|
|
|
|
|
+fn_details_ark(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep ShooterGame"
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ {
|
|
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL\tINI VARIABLE"
|
|
|
|
|
+ echo -e "> Game\tINBOUND\t${port}\tudp\tPort=${port}"
|
|
|
|
|
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
+ } | column -s $'\t' -t
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
fn_details_avalanche(){
|
|
fn_details_avalanche(){
|
|
|
echo -e "netstat -atunp | grep Jcmp-Server"
|
|
echo -e "netstat -atunp | grep Jcmp-Server"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
@@ -417,16 +428,27 @@ fn_details_factorio(){
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_minecraft(){
|
|
|
|
|
- echo -e "netstat -atunp | grep java"
|
|
|
|
|
|
|
+fn_details_goldsource(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep hlds_linux"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
{
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
|
|
|
|
+ echo -e "> Game/RCON\tINBOUND\t${port}\ttcp/udp"
|
|
|
|
|
+ echo -e "< Client\tOUTBOUND\t${clientport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_projectzomboid(){
|
|
|
|
|
|
|
+fn_details_hurtworld(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep Hurtworld"
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ {
|
|
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
+ echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
|
|
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
+ } | column -s $'\t' -t
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+fn_details_minecraft(){
|
|
|
echo -e "netstat -atunp | grep java"
|
|
echo -e "netstat -atunp | grep java"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
{
|
|
{
|
|
@@ -435,29 +457,31 @@ fn_details_projectzomboid(){
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+fn_details_mumble(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep murmur"
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ {
|
|
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
+ echo -e "> Voice\tINBOUND\t${port}\tudp"
|
|
|
|
|
+ echo -e "> ServerQuery\tINBOUND\t${port}\ttcp"
|
|
|
|
|
+ } | column -s $'\t' -t
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
-fn_details_realvirtuality(){
|
|
|
|
|
- echo -e "netstat -atunp | grep arma3server"
|
|
|
|
|
|
|
+fn_details_projectzomboid(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep java"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
- if [ -z "${port}" ]||[ -z "${queryport}" ]||[ -z "${masterport}" ]; then
|
|
|
|
|
- echo -e "${red}ERROR!${default} Missing/commented ports in ${servercfg}."
|
|
|
|
|
- echo -e ""
|
|
|
|
|
- fi
|
|
|
|
|
{
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
- echo -e "> Steam: Master traffic\tINBOUND\t${masterport}\tudp"
|
|
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_refractor(){
|
|
|
|
|
- echo -e "netstat -atunp | grep bf1942_lnxd"
|
|
|
|
|
|
|
+fn_details_quake(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep mvdsv"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
{
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Game/Query\tINBOUND\t${port}\tudp"
|
|
|
|
|
- echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
|
|
+ echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -479,39 +503,55 @@ fn_details_quake3(){
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_quake(){
|
|
|
|
|
- echo -e "netstat -atunp | grep mvdsv"
|
|
|
|
|
|
|
+fn_details_quakelive(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep qzeroded"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
|
|
+ if [ -z "${port}" ]||[ -z "${rconport}" ]||[ -z "${statsport}" ]; then
|
|
|
|
|
+ echo -e "${red}ERROR!${default} Missing/commented ports in ${servercfg}."
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ fi
|
|
|
{
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
|
|
+ echo -e "> Rcon\tINBOUND\t${rconport}\tudp"
|
|
|
|
|
+ echo -e "> Stats\tINBOUND\t${statsport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_quakelive(){
|
|
|
|
|
- echo -e "netstat -atunp | grep qzeroded"
|
|
|
|
|
|
|
+fn_details_realvirtuality(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep arma3server"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
- if [ -z "${port}" ]||[ -z "${rconport}" ]||[ -z "${statsport}" ]; then
|
|
|
|
|
|
|
+ if [ -z "${port}" ]||[ -z "${queryport}" ]||[ -z "${masterport}" ]; then
|
|
|
echo -e "${red}ERROR!${default} Missing/commented ports in ${servercfg}."
|
|
echo -e "${red}ERROR!${default} Missing/commented ports in ${servercfg}."
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
fi
|
|
fi
|
|
|
{
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> Rcon\tINBOUND\t${rconport}\tudp"
|
|
|
|
|
- echo -e "> Stats\tINBOUND\t${statsport}\tudp"
|
|
|
|
|
|
|
+ echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
+ echo -e "> Steam: Master traffic\tINBOUND\t${masterport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_wolfensteinenemyterritory(){
|
|
|
|
|
- echo -e "netstat -atunp | grep etded"
|
|
|
|
|
|
|
+fn_details_refractor(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep bf1942_lnxd"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
{
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game/Query\tINBOUND\t${port}\tudp"
|
|
echo -e "> Game/Query\tINBOUND\t${port}\tudp"
|
|
|
|
|
+ echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+fn_details_rust(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep Rust"
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ {
|
|
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
+ echo -e "> Game/Query\tINBOUND\t${port}\ttcp/udp"
|
|
|
|
|
+ echo -e "> RCON\tINBOUND\t${rconport}\ttcp"
|
|
|
|
|
+ } | column -s $'\t' -t
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
fn_details_seriousengine35(){
|
|
fn_details_seriousengine35(){
|
|
|
echo -e "netstat -atunp | grep Sam3_Dedicate"
|
|
echo -e "netstat -atunp | grep Sam3_Dedicate"
|
|
@@ -523,15 +563,41 @@ fn_details_seriousengine35(){
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+fn_details_sdtd(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep 7DaysToDie"
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ {
|
|
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
+ echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
|
|
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
+ echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp"
|
|
|
|
|
+ echo -e "> Telnet\tINBOUND\t${telnetport}\ttcp"
|
|
|
|
|
+ } | column -s $'\t' -t
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ echo -e "${lightgreen}${servername} WebAdmin${default}"
|
|
|
|
|
+ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
|
|
+ {
|
|
|
|
|
+ echo -e "${blue}WebAdmin enabled:\t${default}${webadminenabled}"
|
|
|
|
|
+ echo -e "${blue}WebAdmin url:\t${default}http://${ip}:${webadminport}"
|
|
|
|
|
+ echo -e "${blue}WebAdmin password:\t${default}${webadminpass}"
|
|
|
|
|
+ } | column -s $'\t' -t
|
|
|
|
|
+ echo -e ""
|
|
|
|
|
+ echo -e "${lightgreen}${servername} Telnet${default}"
|
|
|
|
|
+ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
|
|
+ {
|
|
|
|
|
+ echo -e "${blue}Telnet enabled:\t${default}${telnetenabled}"
|
|
|
|
|
+ echo -e "${blue}Telnet address:\t${default}${ip} ${telnetport}"
|
|
|
|
|
+ echo -e "${blue}Telnet password:\t${default}${telnetpass}"
|
|
|
|
|
+ } | column -s $'\t' -t
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
fn_details_source(){
|
|
fn_details_source(){
|
|
|
echo -e "netstat -atunp | grep srcds_linux"
|
|
echo -e "netstat -atunp | grep srcds_linux"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
{
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game/RCON\tINBOUND\t${port}\ttcp/udp"
|
|
echo -e "> Game/RCON\tINBOUND\t${port}\ttcp/udp"
|
|
|
- if [ -n "${sourcetvport}" ]; then
|
|
|
|
|
- echo -e "> SourceTV\tINBOUND\t${sourcetvport}\tudp"
|
|
|
|
|
- fi
|
|
|
|
|
|
|
+ echo -e "> SourceTV\tINBOUND\t${sourcetvport}\tudp"
|
|
|
echo -e "< Client\tOUTBOUND\t${clientport}\tudp"
|
|
echo -e "< Client\tOUTBOUND\t${clientport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
@@ -577,16 +643,6 @@ fn_details_teamspeak3(){
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_mumble(){
|
|
|
|
|
- echo -e "netstat -atunp | grep murmur"
|
|
|
|
|
- echo -e ""
|
|
|
|
|
- {
|
|
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
- echo -e "> Voice\tINBOUND\t${port}\tudp"
|
|
|
|
|
- echo -e "> ServerQuery\tINBOUND\t${port}\ttcp"
|
|
|
|
|
- } | column -s $'\t' -t
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
fn_details_teeworlds(){
|
|
fn_details_teeworlds(){
|
|
|
echo -e "netstat -atunp | grep teeworlds_srv"
|
|
echo -e "netstat -atunp | grep teeworlds_srv"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
@@ -605,54 +661,6 @@ fn_details_terraria(){
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_sdtd(){
|
|
|
|
|
- echo -e "netstat -atunp | grep 7DaysToDie"
|
|
|
|
|
- echo -e ""
|
|
|
|
|
- {
|
|
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
- echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
|
|
- echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
- echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp"
|
|
|
|
|
- echo -e "> Telnet\tINBOUND\t${telnetport}\ttcp"
|
|
|
|
|
- } | column -s $'\t' -t
|
|
|
|
|
- echo -e ""
|
|
|
|
|
- echo -e "${lightgreen}${servername} WebAdmin${default}"
|
|
|
|
|
- printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
|
|
- {
|
|
|
|
|
- echo -e "${blue}WebAdmin enabled:\t${default}${webadminenabled}"
|
|
|
|
|
- echo -e "${blue}WebAdmin url:\t${default}http://${ip}:${webadminport}"
|
|
|
|
|
- echo -e "${blue}WebAdmin password:\t${default}${webadminpass}"
|
|
|
|
|
- } | column -s $'\t' -t
|
|
|
|
|
- echo -e ""
|
|
|
|
|
- echo -e "${lightgreen}${servername} Telnet${default}"
|
|
|
|
|
- printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
|
|
- {
|
|
|
|
|
- echo -e "${blue}Telnet enabled:\t${default}${telnetenabled}"
|
|
|
|
|
- echo -e "${blue}Telnet address:\t${default}${ip} ${telnetport}"
|
|
|
|
|
- echo -e "${blue}Telnet password:\t${default}${telnetpass}"
|
|
|
|
|
- } | column -s $'\t' -t
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-fn_details_hurtworld(){
|
|
|
|
|
- echo -e "netstat -atunp | grep Hurtworld"
|
|
|
|
|
- echo -e ""
|
|
|
|
|
- {
|
|
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
- echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
|
|
- echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
- } | column -s $'\t' -t
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-fn_details_rust(){
|
|
|
|
|
- echo -e "netstat -atunp | grep Rust"
|
|
|
|
|
- echo -e ""
|
|
|
|
|
- {
|
|
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
- echo -e "> Game/Query\tINBOUND\t${port}\ttcp/udp"
|
|
|
|
|
- echo -e "> RCON\tINBOUND\t${rconport}\ttcp"
|
|
|
|
|
- } | column -s $'\t' -t
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
fn_details_unreal(){
|
|
fn_details_unreal(){
|
|
|
echo -e "netstat -atunp | grep ucc-bin"
|
|
echo -e "netstat -atunp | grep ucc-bin"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
@@ -700,16 +708,16 @@ fn_details_ut3(){
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-fn_details_ark(){
|
|
|
|
|
- echo -e "netstat -atunp | grep ShooterGame"
|
|
|
|
|
|
|
+fn_details_wolfensteinenemyterritory(){
|
|
|
|
|
+ echo -e "netstat -atunp | grep etded"
|
|
|
echo -e ""
|
|
echo -e ""
|
|
|
{
|
|
{
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL\tINI VARIABLE"
|
|
|
|
|
- echo -e "> Game\tINBOUND\t${port}\tudp\tPort=${port}"
|
|
|
|
|
- echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
|
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
|
|
+ echo -e "> Game/Query\tINBOUND\t${port}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
# Run checks and gathers details to display.
|
|
# Run checks and gathers details to display.
|
|
|
|
|
|
|
|
fn_display_details() {
|
|
fn_display_details() {
|
|
@@ -738,6 +746,8 @@ fn_display_details() {
|
|
|
fn_details_refractor
|
|
fn_details_refractor
|
|
|
elif [ "${engine}" == "dontstarve" ]; then
|
|
elif [ "${engine}" == "dontstarve" ]; then
|
|
|
fn_details_dontstarve
|
|
fn_details_dontstarve
|
|
|
|
|
+ elif [ "${engine}" == "goldsource" ]; then
|
|
|
|
|
+ fn_details_goldsource
|
|
|
elif [ "${engine}" == "lwjgl2" ]; then
|
|
elif [ "${engine}" == "lwjgl2" ]; then
|
|
|
fn_details_minecraft
|
|
fn_details_minecraft
|
|
|
elif [ "${engine}" == "projectzomboid" ]; then
|
|
elif [ "${engine}" == "projectzomboid" ]; then
|
|
@@ -746,7 +756,7 @@ fn_display_details() {
|
|
|
fn_details_realvirtuality
|
|
fn_details_realvirtuality
|
|
|
elif [ "${engine}" == "seriousengine35" ]; then
|
|
elif [ "${engine}" == "seriousengine35" ]; then
|
|
|
fn_details_seriousengine35
|
|
fn_details_seriousengine35
|
|
|
- elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]; then
|
|
|
|
|
|
|
+ elif [ "${engine}" == "source" ]
|
|
|
fn_details_source
|
|
fn_details_source
|
|
|
elif [ "${engine}" == "spark" ]; then
|
|
elif [ "${engine}" == "spark" ]; then
|
|
|
fn_details_spark
|
|
fn_details_spark
|