mirror of
https://github.com/nodemailer/wildduck.git
synced 2024-12-28 03:07:13 +08:00
144 lines
6.2 KiB
Bash
Executable file
144 lines
6.2 KiB
Bash
Executable file
#! /bin/bash
|
|
|
|
OURNAME=03_install_check_running_services.sh
|
|
|
|
# No $AUT_SAFETY variable present, so we have not sourced install_variables.sh yet
|
|
# check if $AUT_SAFETY is unset (as opposed to empty "" string)
|
|
if [ -z ${AUT_SAFETY+x} ]
|
|
then
|
|
echo "this script ${RED}called directly${NC}, and not from the main ./install.sh script"
|
|
echo "initializing common variables ('install_variables.sh')"
|
|
source "$INSTALLDIR/install_variables.sh"
|
|
fi
|
|
|
|
echo -e "\n\n-- Executing ${ORANGE}${OURNAME}${NC} subscript --"
|
|
|
|
echo -e "Checking programs listening on port 25,587,993,995,80,443"
|
|
PORT25=`lsof -Pi :25 -sTCP:LISTEN -t`
|
|
PORT587=`lsof -Pi :587 -sTCP:LISTEN -t`
|
|
PORT993=`lsof -Pi :993 -sTCP:LISTEN -t`
|
|
PORT995=`lsof -Pi :995 -sTCP:LISTEN -t`
|
|
PORT80=`lsof -Pi :80 -sTCP:LISTEN -t`
|
|
PORT443=`lsof -Pi :443 -sTCP:LISTEN -t`
|
|
|
|
|
|
# check if $PORT25 is empty "" string (as opposed to unset)
|
|
if ! [ -z $PORT25 ] ; then
|
|
echo -e "${RED}Error:${NC} SMTP server already running on port 25"
|
|
echo -e "PID: ${YELLOW}$PORT25${NC}"
|
|
BINARY=`ps -p $PORT25 -o comm=`
|
|
echo -e "binary: ${YELLOW}$BINARY${NC}"
|
|
echo -e "full command with arguments: ${YELLOW}`ps -p $PORT25 -o command=`${NC}"
|
|
echo -e "possible packages (dpkg -S $BINARY | grep /${BINARY}$):"
|
|
echo -e "`dpkg -S $BINARY | grep /${BINARY}$`"
|
|
echo -e "If it is launched by systemd, finding the service with"
|
|
echo -e "Executing ${YELLOW}systemctl status $PORT25${NC}"
|
|
echo -e "`systemctl status $PORT25`"
|
|
echo -e "\nList all enabled services:"
|
|
echo -e "systemctl list-unit-files | grep enabled"
|
|
echo -e "stop a service: systemctl stop [service]"
|
|
echo -e "${RED}QUITTING... (please stop the service and launch again)${NC}"
|
|
exit 1
|
|
else
|
|
echo -e 'OK: port 25 (SMTP) is free'
|
|
fi
|
|
|
|
if ! [ -z $PORT587 ] ; then
|
|
echo -e "${RED}Error:${NC} SMTP server already running on port 587"
|
|
echo -e "PID: ${YELLOW}$PORT587${NC}"
|
|
BINARY=`ps -p $PORT587 -o comm=`
|
|
echo -e "binary: ${YELLOW}$BINARY${NC}"
|
|
echo -e "full command with arguments: ${YELLOW}`ps -p $PORT587 -o command=`${NC}"
|
|
echo -e "possible packages (dpkg -S $BINARY | grep /${BINARY}$):"
|
|
echo -e "`dpkg -S $BINARY | grep /${BINARY}$`"
|
|
echo -e "If it is launched by systemd, finding the service with"
|
|
echo -e "Executing ${YELLOW}systemctl status $PORT587${NC}"
|
|
echo -e "`systemctl status $PORT587`"
|
|
echo -e "\nList all enabled services:"
|
|
echo -e "systemctl list-unit-files | grep enabled"
|
|
echo -e "stop a service: systemctl stop [service]"
|
|
echo -e "${RED}QUITTING... (please stop the service and launch again)${NC}"
|
|
exit 1
|
|
else
|
|
echo -e 'OK: port 587 (SMTP TLS) is free'
|
|
fi
|
|
|
|
if ! [ -z $PORT993 ] ; then
|
|
echo -e "${RED}Error:${NC} IMAP server already running on port 993"
|
|
echo -e "PID: ${YELLOW}$PORT993${NC}"
|
|
BINARY=`ps -p $PORT993 -o comm=`
|
|
echo -e "binary: ${YELLOW}$BINARY${NC}"
|
|
echo -e "full command with arguments: ${YELLOW}`ps -p $PORT993 -o command=`${NC}"
|
|
echo -e "possible packages (dpkg -S $BINARY | grep /${BINARY}$):"
|
|
echo -e "`dpkg -S $BINARY | grep /${BINARY}$`"
|
|
echo -e "If it is launched by systemd, finding the service with"
|
|
echo -e "Executing ${YELLOW}systemctl status $PORT993${NC}"
|
|
echo -e "`systemctl status $PORT993`"
|
|
echo -e "\nList all enabled services:"
|
|
echo -e "systemctl list-unit-files | grep enabled"
|
|
echo -e "stop a service: systemctl stop [service]"
|
|
echo -e "${RED}QUITTING... (please stop the service and launch again)${NC}"
|
|
exit 1
|
|
else
|
|
echo -e 'OK: port 993 (IMAP SSL/TLS) is free'
|
|
fi
|
|
|
|
if ! [ -z $PORT995 ] ; then
|
|
echo -e "${RED}Error:${NC} POP3 server already running on port 995"
|
|
echo -e "PID: ${YELLOW}$PORT995${NC}"
|
|
BINARY=`ps -p $PORT995 -o comm=`
|
|
echo -e "binary: ${YELLOW}$BINARY${NC}"
|
|
echo -e "full command with arguments: ${YELLOW}`ps -p $PORT995 -o command=`${NC}"
|
|
echo -e "possible packages (dpkg -S $BINARY | grep /${BINARY}$):"
|
|
echo -e "`dpkg -S $BINARY | grep /${BINARY}$`"
|
|
echo -e "If it is launched by systemd, finding the service with"
|
|
echo -e "Executing ${YELLOW}systemctl status $PORT995${NC}"
|
|
echo -e "`systemctl status $PORT995`"
|
|
echo -e "\nList all enabled services:"
|
|
echo -e "systemctl list-unit-files | grep enabled"
|
|
echo -e "stop a service: systemctl stop [service]"
|
|
echo -e "${RED}QUITTING... (please stop the service and launch again)${NC}"
|
|
exit 1
|
|
else
|
|
echo -e 'OK: port 995 (POP3 SSL/TLS) is free'
|
|
fi
|
|
|
|
if ! [ -z $PORT80 ] ; then
|
|
echo -e "${RED}Error:${NC} HTTP server already running on port 80"
|
|
echo -e "PID: ${YELLOW}$PORT80${NC}"
|
|
BINARY=`ps -p $PORT80 -o comm=`
|
|
echo -e "binary: ${YELLOW}$BINARY${NC}"
|
|
echo -e "full command with arguments: ${YELLOW}`ps -p $PORT80 -o command=`${NC}"
|
|
echo -e "possible packages (dpkg -S $BINARY | grep /${BINARY}$):"
|
|
echo -e "`dpkg -S $BINARY | grep /${BINARY}$`"
|
|
echo -e "If it is launched by systemd, finding the service with"
|
|
echo -e "Executing ${YELLOW}systemctl status $PORT80${NC}"
|
|
echo -e "`systemctl status $PORT80`"
|
|
echo -e "\nList all enabled services:"
|
|
echo -e "systemctl list-unit-files | grep enabled"
|
|
echo -e "stop a service: systemctl stop [service]"
|
|
echo -e "${RED}QUITTING... (please stop the service and launch again)${NC}"
|
|
exit 1
|
|
else
|
|
echo -e 'OK: port 80 (HTTP) is free'
|
|
fi
|
|
|
|
if ! [ -z $PORT443 ] ; then
|
|
echo -e "${RED}Error:${NC} HTTPS server already running on port 443"
|
|
echo -e "PID: ${YELLOW}$PORT443${NC}"
|
|
BINARY=`ps -p $PORT443 -o comm=`
|
|
echo -e "binary: ${YELLOW}$BINARY${NC}"
|
|
echo -e "full command with arguments: ${YELLOW}`ps -p $PORT443 -o command=`${NC}"
|
|
echo -e "possible packages (dpkg -S $BINARY | grep /${BINARY}$):"
|
|
echo -e "`dpkg -S $BINARY | grep /${BINARY}$`"
|
|
echo -e "If it is launched by systemd, finding the service with"
|
|
echo -e "Executing ${YELLOW}systemctl status $PORT443${NC}"
|
|
echo -e "`systemctl status $PORT443`"
|
|
echo -e "\nList all enabled services:"
|
|
echo -e "systemctl list-unit-files | grep enabled"
|
|
echo -e "stop a service: systemctl stop [service]"
|
|
echo -e "${RED}QUITTING... (please stop the service and launch again)${NC}"
|
|
exit 1
|
|
else
|
|
echo -e 'OK: port 443 (HTTPS) is free'
|
|
fi
|