Pārlūkot izejas kodu

Añadimos cambios de contraseña de root (SQL) -> En debuging

Guzmán Castanedo Villalba 6 gadi atpakaļ
vecāks
revīzija
3177a5b62a
1 mainītis faili ar 44 papildinājumiem un 2 dzēšanām
  1. 44 2
      install

+ 44 - 2
install

@@ -375,7 +375,7 @@ leerSQLPasswd() {
 			printf "ERROR:\tInstalación interrumpida por el usuario.\n"
 			exit 2
 		fi
-		if [ $sqlPasswd = $sqlPasswd2 ];then
+		if [ $sqlPasswd != "" ] && [ $sqlPasswd = $sqlPasswd2 ];then
 			control=true
 		fi
 	done
@@ -385,7 +385,46 @@ leerSQLPasswd() {
 
 establecerSQLPasswd() {
 	# Establecemos SQL root passwd y securizamos BD (mysql_secure_installation)
-	printf "SIN HACER...\n"
+	# FALTA REDIRIFIR LA SALIDA ESTÁNDAR
+	mysql -e "FLUSH PRIVILEGES"
+	if [ $? -eq 0];then
+		# Establecemos contraseña del usuario root
+		mysql -e "UPDATE mysql.user SET Password = PASSWORD('$sqlPasswd') WHERE User = 'root'"
+		if [ $? -ne 0 ];then
+			printf "SQL ERROR:\tImposible de cambiar la contraseña de 'root'.\n"
+			exit 3
+		fi
+		# Desactivamos acceso root desde el exterior (solo localhost)
+		mysql -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1')"
+		if [ $? -ne 0 ];then
+			printf "SQL ERROR:\tImposible desactivar acceso 'root' desde el exterior.\n"
+			exit 3
+		fi
+		# Eliminamos todos los usuarios anónimos
+		mysql -e "DELETE FROM mysql.user WHERE=''"
+		if [ $? -ne 0 ];then
+			printf "SQL ERROR:\tImposible eliminar usuarios anónimos.\n"
+			exit 3
+		fi
+		# Eliminamos bases de datos 'test'
+		mysql -e "DROP DATABASE IF EXISTS test"
+		if [ $? -ne 0 ];then
+			printf "SQL WARNING:\tImposible eliminar bases de datos de pruebas.\n"
+		fi
+		# Eliminamos privilegios de la base de datos 'test'
+		mysql -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'"
+		if [ $? -ne 0 ];then
+			printf "SQL WARNING:\tImposible eliminar los privilegios de la base de datos de pruebas.\n"
+		fi
+		# Aplicamos los cambios
+		mysql -e "FLUSH PRIVILEGES"
+		if [ $? -ne 0 ];then
+			printf "SQL ERROR:\tImposible recargar base de datos.\n"
+			exit 3
+		fi
+	else
+		printf "WARNING:\tUsuario 'root' ya dispone de contraseña.\n"
+	fi
 }
 
 instalarMySQL() {
@@ -483,6 +522,9 @@ mostrarExpress
 		printf " OK.\n"
 	fi	
 	
+# PRECAUCION!!!! Hay que habilitar algunos servicios antes de configurarlos
+# Por ejemplo: para cambiar la contraseña de root en mysql
+
 # Configuración
 	# Configuración Apache
 		# Virtual Hosts