diff --git a/installer/opengnsys_git_installer.py b/installer/opengnsys_git_installer.py index 22cb9d9..5fa508e 100755 --- a/installer/opengnsys_git_installer.py +++ b/installer/opengnsys_git_installer.py @@ -508,67 +508,6 @@ class OpengnsysGitInstaller: self.__logger.debug("Instalando dependencias") subprocess.run(["apt-get", "install", "-y", "git"], check=True) - - # Autenticación del usuario opengnsys con clave pública desde los ogLive - # Requiere que todos los ogLive tengan la misma clave publica (utilizar setsslkey) - - # Tomamos la clave publica del cliente por defecto - default_num = self.oglive.get_default() - default_client = self.oglive.get_clients()[default_num] - - - client_initrd_path = os.path.join(tftp_dir, default_client, INITRD) - self.__logger.debug("Ruta de initrd: %s", client_initrd_path) - # Si me salgo con error borro el directorio temporal - - - if not self.ignoresshkey: - public_key = self._extract_ssh_key() - - # Si la clave publica no existe me salgo con error - if not public_key: - raise RequirementException(f"No se encuentra clave pública dentro del ogLive en {self.temp_dir}, imagen {client_initrd_path}. Rutas buscadas: {self.key_paths}\n" + - "Los oglive deben tener la misma clave pública (utilizar setsslkey)") - - - ssh_dir = os.path.join(self.ssh_homedir, ".ssh") - authorized_keys_file = os.path.join(ssh_dir, "authorized_keys") - - self.__logger.debug("Configurando ssh: Agregando clave %s a %s", public_key, authorized_keys_file) - self.__logger.debug("Key: %s", public_key) - os.makedirs(ssh_dir, exist_ok=True) - self._add_line_to_file(authorized_keys_file, public_key) - - os.chmod(authorized_keys_file, 0o600) - os.chown(ssh_dir, uid=self.ssh_uid, gid=self.ssh_gid) - os.chown(authorized_keys_file, uid=self.ssh_uid, gid=self.ssh_gid) - - # Configuramos el servicio ssh para que permita el acceso con clave pública - self.__logger.info(" Configuramos el servicio ssh para que permita el acceso con clave pública.") - with open("/etc/ssh/sshd_config", "r") as f: - sshd_config = f.read() - sshd_config = sshd_config.replace("PubkeyAuthentication no", "PubkeyAuthentication yes") - with open("/etc/ssh/sshd_config", "w") as f: - f.write(sshd_config) - os.system("systemctl reload ssh") - - # Instalamos git - os.system("apt install git") - - # Para que el usuario sólo pueda usar git (no ssh) - SHELL = shutil.which("git-shell") - os.system(f"usermod -s {SHELL} opengnsys") - - # Creamos repositorios - #self.init_git_repo('windows.git') - #self.init_git_repo('linux.git') - #self.init_git_repo('mac.git') - - - # Damos permiso al usuario opengnsys - #for DIR in ["base.git", "linux.git", "windows.git"]: #, "LinAcl", "WinAcl"]: - # self._recursive_chown(os.path.join(ogdir_images, DIR), ouid=self.ssh_uid, ogid=self.ssh_gid) - def _install_template(self, template, destination, keysvalues): self.__logger.info("Writing template %s into %s", template, destination)