Добавлена генерация пароля для БД
This commit is contained in:
43
install.sh
43
install.sh
@@ -23,8 +23,14 @@ NC='\033[0m'
|
||||
log_success() { echo -e "${GREEN}[SUCCESS]${NC} $1"; }
|
||||
log_error() { echo -e "${RED}[ERROR]${NC} $1"; }
|
||||
|
||||
# Функция генерации безопасного пароля
|
||||
generate_password() {
|
||||
# Генерируем пароль длиной 16 символов из букв, цифр и безопасных спецсимволов
|
||||
openssl rand -base64 32 | tr -d "=+/" | cut -c1-16
|
||||
}
|
||||
|
||||
full_uninstall() {
|
||||
echo -e "${YELLOW}[INFO]${NC} Начинаем полное удаление..."
|
||||
echo -e "${YELLOW}[INFO]${NC} Начинаем полное удаление LAMP-окружения..."
|
||||
|
||||
systemctl stop nginx apache2 httpd php*-fpm mariadb mysql redis 2>/dev/null || true
|
||||
|
||||
@@ -82,6 +88,10 @@ if [ "$UNINSTALL" = true ]; then
|
||||
full_uninstall
|
||||
fi
|
||||
|
||||
# Генерируем пароль для базы данных
|
||||
DB_PASSWORD=$(generate_password)
|
||||
echo -e "${YELLOW}[INFO]${NC} Сгенерирован пароль для базы данных"
|
||||
|
||||
systemctl stop nginx httpd apache2 php*-fpm 2>/dev/null || true
|
||||
systemctl disable nginx httpd 2>/dev/null || true
|
||||
|
||||
@@ -289,12 +299,13 @@ if [ -f "$PHP_INI_PATH" ]; then
|
||||
sed -i 's/;*log_errors = .*/log_errors = On/' "$PHP_INI_PATH"
|
||||
fi
|
||||
|
||||
cat > "$WEBROOT/db_config.php" << 'EOF'
|
||||
# Создаем конфигурационный файл БД с сгенерированным паролем
|
||||
cat > "$WEBROOT/db_config.php" << EOF
|
||||
<?php
|
||||
$db_host = 'localhost';
|
||||
$db_user = 'root';
|
||||
$db_pass = 'muJh9tNY8sg0';
|
||||
$db_name = 'ALTCor';
|
||||
\$db_host = 'localhost';
|
||||
\$db_user = 'root';
|
||||
\$db_pass = '$DB_PASSWORD';
|
||||
\$db_name = 'ALTCor';
|
||||
|
||||
define('OFFICE', '/usr/bin/libreoffice');
|
||||
define('DB_CHARSET', 'utf8mb4');
|
||||
@@ -425,9 +436,9 @@ chmod 644 "$WEBROOT/.htaccess" 2>/dev/null || true
|
||||
chmod 600 "$WEBROOT/db_config.php"
|
||||
|
||||
MYSQL_TMP_SCRIPT="/tmp/mysql_setup_$(date +%s).sql"
|
||||
cat > "$MYSQL_TMP_SCRIPT" << 'MYSQL_SCRIPT'
|
||||
cat > "$MYSQL_TMP_SCRIPT" << MYSQL_SCRIPT
|
||||
|
||||
ALTER USER IF EXISTS 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('muJh9tNY8sg0');
|
||||
ALTER USER IF EXISTS 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('$DB_PASSWORD');
|
||||
|
||||
CREATE DATABASE IF NOT EXISTS ALTCor CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
@@ -495,6 +506,19 @@ if ! php -r "echo phpversion();" >/dev/null 2>&1; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
DB_CREDENTIALS_FILE="/root/.altcor_db_credentials"
|
||||
cat > "$DB_CREDENTIALS_FILE" << EOF
|
||||
# Учетные данные базы данных ALTCor
|
||||
# Сгенерировано: $(date)
|
||||
|
||||
DB_HOST=localhost
|
||||
DB_USER=root
|
||||
DB_PASSWORD=$DB_PASSWORD
|
||||
DB_NAME=ALTCor
|
||||
EOF
|
||||
|
||||
chmod 600 "$DB_CREDENTIALS_FILE"
|
||||
|
||||
IP_ADDR=$(hostname -I | awk '{print $1}')
|
||||
|
||||
echo ""
|
||||
@@ -503,3 +527,6 @@ echo " Доступ к сайту:"
|
||||
echo " • http://localhost/"
|
||||
echo " • http://$IP_ADDR/"
|
||||
echo ""
|
||||
echo -e "${YELLOW}[INFO]${NC} Пароль базы данных сохранен в файле: $DB_CREDENTIALS_FILE"
|
||||
echo -e "${YELLOW}[INFO]${NC} Пароль БД: $DB_PASSWORD"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user