Étiquette : vmware

  • Récupérer un fichier dans une machine virtuelle à l’aide des VMWare Tools

    Récupérer un fichier dans une machine virtuelle à l’aide des VMWare Tools

    Dans le cadre d’un projet pour un client, nous avons été amené à récupérer des fichiers présents dans une machine virtuelle à l’aide des VMWare Tools. Pour ce faire, rien de plus simple, il faut utiliser l’API de VMWare, dans notre cas, nous avons fait le choix d’utiliser du Python et pyvmomi

    But de l’opération ?

    Sur une machine par exemple piratée, il est alors possible, en déconnectant la machine du réseau, de récupérer son contenu qui pourrait ne pas avoir été sauvegardé, ou bien encore, à travers une autre API de VMWare, lancer un exécutable qui écrirait dans un fichier de logs le résultat et en récupérer le résultat pour analyser.

    On peut récupérer des fichiers mais on peut également en envoyer et on peut également lancer des commandes à travers les VMWare Tools. La récupération de données ne peut se faire que sur des fichiers, il faut donc zipper le contenu si vous avez besoin de récupérer un ensemble de fichiers.

    On veut du code …

    from pyVim.connect import SmartConnectNoSSL, Disconnect
    from pyVmomi import vim, vmodl
    import argparse
    import getpass
    
    def get_args():
        parser = argparse.ArgumentParser(description='Arguments for talking to vCenter')
        parser.add_argument('--host', required=True, action='store', help='vCenter host')
        parser.add_argument('--user', required=True, action='store', help='User name to use')
        parser.add_argument('--password', required=False, action='store', help='Password to use')
        parser.add_argument('--vm-name', required=True, action='store', help='Name of VM to interact with')
        parser.add_argument('--file-path', required=True, action='store', help='Path of the file to retrieve from the VM')
        parser.add_argument('--guest-user', required=True, action='store', help='Guest OS user')
        parser.add_argument('--guest-password', required=True, action='store', help='Guest OS password')
        args = parser.parse_args()
    
        if not args.password:
            args.password = getpass.getpass(prompt='Enter password for vCenter: ')
    
        return args
    
    def main():
        args = get_args()
    
        # Connect to the host without SSL certification verification
        si = SmartConnectNoSSL(host=args.host, user=args.user, pwd=args.password)
        content = si.RetrieveContent()
    
        # Find the VM
        vm = None
        for child in content.rootFolder.childEntity:
            if hasattr(child, 'vmFolder'):
                datacenter = child
                vmFolder = datacenter.vmFolder
                vmList = vmFolder.childEntity
                for vm in vmList:
                    if vm.name == args.vm_name:
                        break
                if vm:
                    break
    
        if not vm:
            print("VM not found")
            return
    
        # Set up guest file manager
        creds = vim.vm.guest.NamePasswordAuthentication(username=args.guest_user, password=args.guest_password)
        gfm = content.guestOperationsManager.fileManager
    
        # Define the file to retrieve
        guestFilePath = args.file_path
    
        # Generate a URL to download the file
        try:
            fileTransferInformation = gfm.InitiateFileTransferFromGuest(vm, creds, guestFilePath)
            print(f"Download URL: {fileTransferInformation.url}")
        except vmodl.MethodFault as error:
            print("Error: ", error.msg)
    
        # Disconnect from the host
        Disconnect(si)
    
    if __name__ == "__main__":
        main()

    Vous pouvez récupérer votre fichier à l’adresse indiquée par Download URL. Comme vous pouvez le voir, les VMWare tools doivent être installés et fonctionnels. Il faut également un nom d’utilisateur et un mot de passe pour pouvoir récupérer du contenu.

  • Présentation de nos solutions d’infogérance serveur et Cloud

    Vous êtes client en hébergement de serveur virtuel ou dédié chez des prestataires comme OVH, Online, Gandi, Ikoula, Amazon, Azure ou d’autres ? Nous pouvons alors travailler ensemble sur la gestion de votre serveur, vous permettant ainsi de vous concentrer sur votre métier et de vous décharger de la lourdeur de cette tâche.

    Devenez partenaire avec un expert de l’infogérance depuis plus de 10 an

    Fort d’une expérience de plus de 10 ans en infogérance serveur et en montée en charge, nous avons mis en place des solutions de gestion de serveur souples et évolutives.

    Les points communs de l’infogérance chez Devclic et sur des serveurs de prestataire tiers sont :

    • La supervision et l’alerting en cas de problème sur le serveur, tout en étant le plus possible pro-actif (Double Supervision par nos outils interne et un outil externe)
    • Les interventions illimitées (pas de limite de temps concernant les demandes de nos clients)
    • Le support par e-mail et par téléphone (heures ouvrées)
    • L’accès à un intervenant d’astreinte si le pack souscrit le propose
    • La sauvegarde de vos données (50 Go si le pack le propose)
    • Les mises à jour de votre Système d’exploitation et des logiciels liés.
    • Configuration de base de la sécurité votre serveur (Firewall)
    • Selon le contrat, vous pouvez bénéficier de conseils en optimisation de code ou d’architecture ainsi que de l’aide dans le choix de solutions techniques
    • Mise en place d’un panneau d’administration si nécessaire (Plesk ou CPanel)

    Offres disponibles pour OVH, Online, Ikoula, Amazon, Azure

    Les offres d’infogérance chez les prestataires tiers sont uniquement garanties en Temps d’Intervention (GTI) et ne contiennent pas de GTR (Garantie du temps de rétablissement). Si vous souhaitez ce genre de garantie, il faut passer sur nos machines puisque dans ce cas précis, nous avons la main sur toute l’infrastructure.

    Les tarifs sont également un peu plus élevés chez les prestataires tiers, en effet, nous devons adapter nos méthodes et processus pour avoir la meilleure réactivité possible.

    Notre tarif de base pour une infogérance de base en heures ouvrées (9h-12h, 14h-18h du Lundi au Vendredi) chez un prestataire externe est de 89 € HT / mois, dans le cas où vous souhaitez bénéficier d’une sauvegarde de 50 Go en mode Cloud via Acronis ou tout autre solution de sauvegarde de notre choix, on passe alors à un tarif de 129 € HT / mois. Ces deux tarifs sont réduits si l’infogérance est prise sur des serveurs Devclic et vous pouvez bénéficier d’une Garantie du temps de rétablissement en 4 heures.

    Gestion des clusters

    Si vous disposez de plusieurs serveurs en gestion par nos services, vous bénéficiez de remise sur l’ensemble des prestations d’infogérance, peu importe que les serveurs forment un cluster ou non.

    Offres pour Proxmox, VmWare ou autres solutions de virtualisation

    Nos offres d’infogérance sont également valables pour des Clusters VMWare ou Proxmox (Private Cloud chez OVH par exemple, Cloud Devclic), dans ce cadre, nous nous occupons de la maintenance complète du cluster, de la supervision et les interventions en cas de besoin. Cette offre est facturée proportionnellement au nombre d’hôtes formant le cluster.

    Des références qui nous font confiance depuis plusieurs années

    Ces offres sont le fruit de plusieurs années d’expérience et nous sommes heureux de pouvoir contribuer aux succès de plusieurs sites internet comme DriftShop, Les-Horaires / Shopping-Time, Moins-Depenser, Fysiki, Jetelecharge, Bestofsante, le FC Metz et bien d’autres …

    Au besoin, n’hésitez pas à nous contacter pour tout besoin ponctuel, nous saurons mettre à profit notre réactivité afin de résoudre votre problématique le plus rapidement possible.