#!/bin/bash
# Verifică dacă script-ul este rulat cu privilegii de superutilizator (root)
if [ "$EUID" -ne 0 ]; then
echo "Script-ul trebuie să fie rulat cu privilegii de superutilizator (root)."
exit 1
fi
# Funcție pentru crearea unui cont de utilizator și configurarea Apache/Nginx
create_domain() {
read -p "Introduceți numele de domeniu: " domain_name
# Crează directorul pentru site-ul web
mkdir -p /var/www/$domain_name
chown -R www-data:www-data /var/www/$domain_name
# Creează un fișier HTML de test
echo "<html><body><h1>Salut, $domain_name!</h1></body></html>" > /var/www/$domain_name/index.html
# Configurare pentru Apache
if [ -f /etc/apache2/apache2.conf ]; then
echo "Configurare pentru Apache"
echo "<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName $domain_name
DocumentRoot /var/www/$domain_name
</VirtualHost>" > /etc/apache2/sites-available/$domain_name.conf
a2ensite $domain_name
systemctl reload apache2
fi
# Configurare pentru Nginx
if [ -f /etc/nginx/nginx.conf ]; then
echo "Configurare pentru Nginx"
echo "server {
listen 80;
server_name $domain_name;
root /var/www/$domain_name;
}" > /etc/nginx/sites-available/$domain_name
ln -s /etc/nginx/sites-available/$domain_name /etc/nginx/sites-enabled/
systemctl reload nginx
fi
echo "Site-ul pentru $domain_name a fost creat cu succes!"
# Creează cont FTP
ftp_username="ftpuser_$domain_name"
ftp_password=$(openssl rand -base64 12)
useradd -m -d /var/www/$domain_name -s /bin/false -U $ftp_username
echo "$ftp_username:$ftp_password" | chpasswd
echo "Contul FTP a fost creat cu succes:"
echo "Utilizator FTP: $ftp_username"
echo "Parolă FTP: $ftp_password"
}
# Funcție pentru crearea unei baze de date MySQL
create_database() {
read -p "Introduceți numele bazei de date: " db_name
read -p "Introduceți parola pentru utilizatorul MySQL: " db_password
mysql -e "CREATE DATABASE $db_name;"
mysql -e "GRANT ALL PRIVILEGES ON $db_name.* TO '$db_name'@'localhost' IDENTIFIED BY '$db_password';"
mysql -e "FLUSH PRIVILEGES"
echo "Baza de date $db_name a fost creată cu succes!"
}
# Apelarea funcțiilor
create_domain
create_database