DéveloppeurWeb.Com
    DéveloppeurWeb.Com
    • Agile Zone
    • AI Zone
    • Cloud Zone
    • Database Zone
    • DevOps Zone
    • Integration Zone
    • Web Dev Zone
    DéveloppeurWeb.Com
    Home»DevOps Zone»L’administrateur système de codage
    DevOps Zone

    L’administrateur système de codage

    octobre 21, 2021
    L'administrateur système de codage
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    En annonçant la semaine dernière la mégafusion désormais achevée de 1,2 milliard de dollars entre McAfee et FireEye, le PDG Bryan Palma a déclaré que la voie à suivre en matière de sécurité et de gestion moderne des systèmes était l’automatisation, déclarant :

    « Il n’y a tout simplement aucun moyen pour que les gens puissent suivre, et nous le constatons. Nous avons maintenant des États-nations impliqués dans des attaques, et c’est très préoccupant car ils ont évidemment des capacités très fortes. »

    Rester au top de l’échelle brute des systèmes d’entreprise est un travail tellement énorme et compliqué, soutient Palma, que le faire à la main n’est tout simplement pas pratique. Les risques sont trop grands et le personnel n’est tout simplement pas disponible pour tout faire.

    Pour toute personne travaillant dans un rôle d’administrateur système traditionnel, l’automatisation – et une conversation DevOps plus large – peut être déconcertante. L’automatisation moderne signifie « code » et certains administrateurs système insistent sur le fait que le codage est en dehors de leurs descriptions de poste. En fait, lorsque j’étais directeur informatique, un administrateur système m’a dit : « Nous ne codons pas ». Il se contentait de conserver des images dorées et de peaufiner ces machines virtuelles au fur et à mesure que des problèmes survenaient.

    Malheureusement, les environnements dynamiques d’aujourd’hui nécessitent beaucoup plus de contrôle et de visibilité. La sécurité en fait partie intégrante, mais c’est aussi une question de rapidité et de cohérence. La gestion manuelle de milliers de systèmes n’est pas chose aisée.

    Mais l’idée d’une infrastructure en tant que code ou d’une politique en tant que code n’a pas à être effrayante. En fait, pour tous ceux qui ont l’habitude d’exploiter des centaines d’instances sur site ou dans le cloud, même un peu de codage peut grandement contribuer à rendre la vie plus facile.

    Quand je parle avec quelqu’un qui est nouveau dans l’automatisation, je fais remarquer qu’il n’a pas à commencer par essayer de résoudre tous problème. Faire cela est intimidant, que vous fassiez vos premiers pas avec Ansible, Chef, Puppet ou Salt. Au lieu de cela, pensez aux tâches banales et les plus fastidieuses et commencez par là. De cette façon, vous pouvez obtenir des gains faciles et ajouter de la sophistication à mesure que vos compétences et votre niveau de confort augmentent.

    Par exemple, vous souhaitez peut-être un utilisateur administrateur sur tous vos nœuds Linux et Windows. Faire cela manuellement est un problème. Vous pouvez ajouter votre utilisateur administrateur à un modèle d’instance de VM ou de cloud, mais que se passe-t-il lorsque vous souhaitez supprimer ou modifier les paramètres de cet utilisateur administrateur ? Recréez-vous et relancez-vous des centaines de VM ?

    Faire cela avec du code d’automatisation est plus facile et fournit des résultats beaucoup plus certains. Par exemple, dans le code Chef, je pourrais créer un livre de recettes pour créer l’utilisateur admin, en ajoutant if...else logique afin que ce code fonctionne sur les systèmes Linux et Windows :

    if platform?('windows')
      user 'superadmin' do
        manage_home true
        comment 'Super Admin'
        home 'C:Userssuperadmin'
        password 'supersecretpassword'
        system true
        action :create
      end
    else
      user 'superadmin' do
        manage_home true
        comment 'Super Admin'
        home '/home/superadmin'
        shell '/bin/bash'
        password '$6$hOgRgN2aLudLPyOZ$xCAYdl3XyAHzQWqitQWfNJmgV3em9fErQIlh2g.'
      end
    end

    L’ajout d’un profil de conformité pour vérifier ma configuration peut être aussi simple que ces huit lignes de code :

    control 'create-admin-user' do
      impact 1.0
      title 'Create user superadmin'
      desc 'Ensure user superadmin exists'
      describe user('superadmin').exists? do
        it { should be true }
      end
    end

    C’est certainement un exemple basique, mais il est tout à fait valable et révèle à quel point l’automatisation puissante peut être écrite en code en langage clair. Apporter des modifications sur les systèmes en cours d’exécution est une simple question d’édition et de réapplication d’un seul livre de recettes Chef dans ce cas, et la tâche va de quelques heures à quelques minutes. Vous pouvez vous appuyer sur cet exemple en créant des recettes pour autoriser l’accès SSH à partir d’un seul sous-réseau sécurisé, accorder ou révoquer des autorisations de super-utilisateur, et bien plus encore.

    Lorsque la menace PrintNightmare est apparue récemment, une bonne solution initiale consistait à désactiver et à arrêter le spouleur d’impression Windows pour éviter la vulnérabilité. Une recette de chef en cinq lignes y parvient :

    if platform?('windows')
      windows_service 'spooler' do
        action %i(disable stop)
      end
    end

    Même si vous ne souhaitez pas effectuer un tel changement, vous pouvez utiliser l’automatisation pour auditer tous vos systèmes en cours d’exécution pour vous. Quelques lignes dans un profil Chef, appliquées à un ou des milliers de nœuds, vous indiquent où vous êtes vulnérable. Si le service Print Spooler est activé ou en cours d’exécution, vous verrez en quelques instants quels nœuds doivent être adressés :

    control 'print-spooler' do
      impact 1.0
      title 'Disable print spooler'
      desc 'Disable print server for security purposes'
      describe service('spooler') do
        it { should_not be_enabled }
        it { should_not be_running }
      end
    end

    Se lancer dans l’automatisation, quel que soit votre rôle, signifie ouvrir la porte à une toute nouvelle façon de penser à la façon dont vous configurez, gérez et auditez vos systèmes. Commencez petit, partagez ce que vous apprenez et habituez-vous à l’idée de devenir un administrateur système de codage agile.

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Email
    Add A Comment

    Leave A Reply Cancel Reply

    Catégories

    • Politique de cookies
    • Politique de confidentialité
    • CONTACT
    • Politique du DMCA
    • CONDITIONS D’UTILISATION
    • Avertissement
    © 2023 DéveloppeurWeb.Com.

    Type above and press Enter to search. Press Esc to cancel.