sudo unzip -o /tmp/enginegp/proftpd.zip -d /tmp/enginegp 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo mv /tmp/enginegp/EngineGPDev-ProFTPD-*/proftpd.conf /etc/proftpd/proftpd.conf 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo mv /tmp/enginegp/EngineGPDev-ProFTPD-*/modules.conf /etc/proftpd/modules.conf 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo mv /tmp/enginegp/EngineGPDev-ProFTPD-*/sql.conf /etc/proftpd/sql.conf 2>&1| sudo tee -a "$logsInst" > /dev/null
# Создаем базу данных для ProFTPD
sudo mysql -e "CREATE DATABASE $dbProFTPD CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" 2>&1| sudo tee -a "$logsInst" > /dev/null
# Создаем пользователя для ProFTPD и предоставляем ему все права на базу данных
sudo mysql -e "CREATE USER '$userProFTPD'@'localhost' IDENTIFIED BY '$passProFTPD';" 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo mysql -e "GRANT ALL PRIVILEGES ON $dbProFTPD . * TO '$userProFTPD'@'localhost';" 2>&1| sudo tee -a "$logsInst" > /dev/null
# Импортируем дамп базы данных для ProFTPD
{ sudo cat /tmp/enginegp/EngineGPDev-ProFTPD-*/proftpd.sql | sudo mysql -u "$userProFTPD" -p"$passProFTPD""$dbProFTPD";} 2>&1| sudo tee -a "$logsInst" > /dev/null
# Очищаем временную папку
sudo rm -rf /tmp/enginegp/* 2>&1| sudo tee -a "$logsInst" > /dev/null
# Вносим даннык в конфигурационный файл
sed -i 's/__FTP_DATABASE__/'"$dbProFTPD"'/g' /etc/proftpd/sql.conf 2>&1| sudo tee -a "$logsInst" > /dev/null
sed -i 's/__FTP_USER__/'"$userProFTPD"'/g' /etc/proftpd/sql.conf 2>&1| sudo tee -a "$logsInst" > /dev/null
sed -i 's/__FTP_PASSWORD__/'"$passProFTPD"'/g' /etc/proftpd/sql.conf 2>&1| sudo tee -a "$logsInst" > /dev/null
# Устанавливаем права доступа на конфигурационные файлы
chmod -R 750 /etc/proftpd 2>&1| sudo tee -a "$logsInst" > /dev/null
# Перезапускаем ProFTPD для применения изменений
systemctl restart proftpd 2>&1| sudo tee -a "$logsInst" > /dev/null
else
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"proftpd уже установлен. Продолжение установки невозможно."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
read -rp "Нажмите Enter для завершения..."
continue
fi
# Настраиваем rclocal
if[ ! -f /etc/rc.local ];then
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"rc.local не настроен. Выполняется настройка..."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo touch /etc/rc.local 2>&1| sudo tee -a "$logsInst" > /dev/null
echo'#!/bin/bash'| sudo tee -a /etc/rc.local 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"/root/iptables_block"| sudo tee -a /etc/rc.local 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"exit 0"| sudo tee -a /etc/rc.local 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chmod +x /etc/rc.local 2>&1| sudo tee -a "$logsInst" > /dev/null
fi
# Настраиваем iptables
if dpkg-query -W -f='${Status}'"iptables" 2>/dev/null | grep -q "install ok installed";then
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"iptables не настроен. Выполняется настройка..."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
# Проверка на наличие файла
if[ ! -f /root/iptables_block ];then
sudo touch /root/iptables_block 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chmod 500 /root/iptables_block 2>&1| sudo tee -a "$logsInst" > /dev/null
else
sudo chmod 500 /root/iptables_block 2>&1| sudo tee -a "$logsInst" > /dev/null
fi
else
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"iptables уже установлен. Продолжение установки невозможно."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
read -rp "Нажмите Enter для завершения..."
continue
fi
# Установка SteamCMD
if[ ! -d "/path/cmd"];then
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"steamcmd не настроен. Выполняется настройка..."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo groupadd -f servers 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo mkdir -p /path /path/cmd /path/update /path/maps 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chmod -R 755 /path 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chown root:servers /path 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo mkdir -p /servers 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chmod -R 711 /servers 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chown root:servers /servers 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo mkdir -p /copy 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chmod -R 750 /copy 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chown root:root /copy 2>&1| sudo tee -a "$logsInst" > /dev/null
curl -SL -o steamcmd_linux.tar.gz http://media.steampowered.com/client/steamcmd_linux.tar.gz 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo tar -xzf steamcmd_linux.tar.gz -C /path/cmd 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo rm steamcmd_linux.tar.gz 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo chmod +x /path/cmd/steamcmd.sh 2>&1| sudo tee -a "$logsInst" > /dev/null
sudo /path/cmd/steamcmd.sh +quit 2>&1| sudo tee -a "$logsInst" > /dev/null
else
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"steamcmd уже установлен. Продолжение установки невозможно...."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
read -rp "Нажмите Enter для завершения..."
continue
fi
echo"==================================="| sudo tee -a $saveFile
echo"Данные локации"| sudo tee -a $saveFile
echo"Пользователь ProFTPD: $userProFTPD"| sudo tee -a $saveFile
echo"Пароль ProFTPD: $passProFTPD"| sudo tee -a $saveFile
echo"База данных ProFTPD: $dbProFTPD"| sudo tee -a $saveFile
echo"Порт базы данных: 3306"| sudo tee -a $saveFile
echo"==================================="| sudo tee -a $saveFile
read -rp "Нажмите Enter для завершения..."
continue
else
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Вы используете неподдерживаемую версию Linux"| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
read -rp "Нажмите Enter для завершения..."
fi
;;
3)
game_menu(){
clear
# Игровой репозиторий
gamesURL="http://gs.enginegp.ru"
echo"Меню установки игровых серверов:"
echo"1. Counter-Strike: 1.6"
echo"2. Counter-Strike: Source v34 (old)"
echo"3. Counter-Strike: Source (new)"
echo"4. Counter-Strike: Global Offensive"
echo"5. Counter-Strike: 2"
echo"6. Grand Theft Auto: San Andreas MultiPlayer"
echo"7. Grand Theft Auto: Criminal Russia MultiPlayer"
echo"8. Grand Theft Auto: Multi Theft Auto"
echo"9. Minecraft Java Edition"
echo"10. RUST"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " game_choice
case$game_choice in
1)
cs16_menu(){
while true;do
clear
mkdir -p /path/cs /path/update/cs /path/maps/cs /servers/cs 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки Counter-Strike: 1.6"
echo"1. Steam"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " cs16_choice
case$cs16_choice in
1)
mkdir -p /path/cs/steam 2>&1| sudo tee -a "${logsInst}"
sudo /path/cmd/steamcmd.sh +force_install_dir /path/cs/steam +login anonymous +app_update 90 -beta beta validate +quit 2>&1| sudo tee -a "${logsInst}"
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
cs16_menu
;;
2)
cssold_menu(){
while true;do
clear
mkdir -p /path/cssold /path/update/cssold /path/maps/cssold /servers/cssold 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки Counter-Strike: Source v34"
echo"1. Steam"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " css34_choice
case$css34_choice in
1)
mkdir -p /path/cssold/steam 2>&1| tee -a "${logsInst}"
curl -SL -o /path/cssold/steam/steam.zip $gamesURL/cssold/steam.zip 2>&1| sudo tee -a "${logsInst}"
sudo unzip -o /path/cssold/steam/steam.zip -d /path/cssold/steam/ 2>&1| sudo tee -a "${logsInst}"
sudo rm /path/cssold/steam/steam.zip 2>&1| sudo tee -a "${logsInst}"
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
cssold_menu
;;
3)
css_menu(){
while true;do
clear
mkdir -p /path/css /path/update/css /path/maps/css /servers/css 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки Counter-Strike: Source"
echo"1. Steam"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " css_choice
case$css_choice in
1)
mkdir -p /path/css/steam 2>&1| sudo tee -a "${logsInst}"
/path/cmd/steamcmd.sh +force_install_dir /path/css/steam +login anonymous +app_update 232330 validate +quit 2>&1| sudo tee -a "${logsInst}"
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
css_menu
;;
4)
csgo_menu(){
while true;do
clear
mkdir -p /path/csgo /path/update/csgo /path/maps/csgo /servers/csgo 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки Counter-Strike: GO"
echo"1. Steam"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " csgo_choice
case$csgo_choice in
1)
mkdir -p /path/csgo/steam 2>&1| sudo tee -a "${logsInst}"
/path/cmd/steamcmd.sh +force_install_dir /path/csgo/steam +login anonymous +app_update 740 validate +quit 2>&1| sudo tee -a "${logsInst}"
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
csgo_menu
;;
5)
cs2_menu(){
while true;do
clear
mkdir -p /path/cs2 /path/update/cs2 /path/maps/cs2 /servers/cs2 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки Counter-Strike: 2"
echo"1. Steam"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " cs2_choice
case$cs2_choice in
1)
mkdir -p /path/cs2/steam 2>&1| sudo tee -a "${logsInst}"
/path/cmd/steamcmd.sh +force_install_dir /path/cs2/steam +login anonymous +app_update 730 validate +quit 2>&1| sudo tee -a "${logsInst}"
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
cs2_menu
;;
6)
samp_menu(){
while true;do
clear
mkdir -p /path/samp /path/update/samp /path/maps/samp /servers/samp /tmp/enginegp 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки GTA: SAMP"
echo"1. 0.3.7-R2"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " samp_choice
case$samp_choice in
1)
curl -SL -o /tmp/enginegp/samp037svr_R2-2-1.tar.gz https://gta-multiplayer.cz/downloads/samp037svr_R2-2-1.tar.gz 2>&1| sudo tee -a "${logsInst}"
sudo tar -xzf /tmp/enginegp/samp037svr_R2-2-1.tar.gz -C /tmp/enginegp 2>&1| sudo tee -a "$logsInst"
sudo mv /tmp/enginegp/samp03 /path/samp/037R2 2>&1| sudo tee -a "$logsInst"
sudo rm -rf /tmp/enginegp/* 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
samp_menu
;;
7)
crmp_menu(){
while true;do
clear
mkdir -p /path/crmp /path/update/crmp /path/maps/crmp /servers/crmp /tmp/enginegp 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки GTA: CRMP"
echo"1. 0.3e Rev C3"
echo"2. 0.3.7 Rev C5"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " crmp_choice
case$crmp_choice in
1)
curl -SL -o /tmp/enginegp/srv-cr-mp-c3-linux.tar.gz https://cr-mp.ru/download/srv-cr-mp-c3-linux.tar.gz 2>&1| sudo tee -a "${logsInst}"
sudo tar -xzf /tmp/enginegp/srv-cr-mp-c3-linux.tar.gz -C /tmp/enginegp 2>&1| sudo tee -a "$logsInst"
sudo mv /tmp/enginegp/srv-cr-mp-c3-linux /path/crmp/03eC3 2>&1| sudo tee -a "$logsInst"
sudo rm -rf /tmp/enginegp/* 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
2)
curl -SL -o /tmp/enginegp/srv-cr-mp-c5-linux.tar.gz https://cr-mp.ru/download/srv-cr-mp-c5-linux.tar.gz 2>&1| sudo tee -a "${logsInst}"
sudo tar -xzf /tmp/enginegp/srv-cr-mp-c5-linux.tar.gz -C /tmp/enginegp 2>&1| sudo tee -a "$logsInst"
sudo mv /tmp/enginegp/samp03 /path/crmp/037C5 2>&1| sudo tee -a "$logsInst"
sudo rm -rf /tmp/enginegp/* 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
crmp_menu
;;
8)
mta_menu(){
while true;do
clear
mkdir -p /path/mta /path/update/mta /path/maps/mta /servers/mta /tmp/enginegp 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки GTA: MTA"
echo"1. 1.6.0"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " mta_choice
case$mta_choice in
1)
curl -SL -o /tmp/enginegp/multitheftauto_linux_x64.tar.gz https://linux.multitheftauto.com/dl/multitheftauto_linux_x64.tar.gz 2>&1| sudo tee -a "${logsInst}"
sudo tar -xzf /tmp/enginegp/multitheftauto_linux_x64.tar.gz -C /tmp/enginegp 2>&1| sudo tee -a "$logsInst"
sudo mv /tmp/enginegp/multitheftauto_linux_x64 /path/mta/160 2>&1| sudo tee -a "$logsInst"
sudo mv /path/mta/160/mta-server64 /path/mta/160/mta-server 2>&1| sudo tee -a "$logsInst"
sudo rm -rf /tmp/enginegp/* 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
;;
esac
done
}
mta_menu
;;
9)
mc_menu(){
while true;do
clear
mkdir -p /path/mc /path/update/mc /path/maps/mc /servers/mc 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Меню установки Minecraft"
echo"1. PaperSpigot 1.20.4 [Java 17]"
echo"0. Вернуться в предыдущее меню"
read -rp "Выберите пункт меню: " mc_choice
case$mc_choice in
1)
mkdir -p /path/mc/paper1204 2>&1| sudo tee -a "${logsInst}"
curl -SL -o /path/mc/paper1204/start.jar https://api.papermc.io/v2/projects/paper/versions/1.20.4/builds/497/downloads/paper-1.20.4-497.jar 2>&1| sudo tee -a "${logsInst}"
;;
0)
break
;;
*)
clear
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null
echo"Неверный выбор. Попробуйте еще раз."| sudo tee -a "$logsInst"
echo"===================================" 2>&1| sudo tee -a "$logsInst" > /dev/null