Nombre total de pages vues

jeudi 4 août 2016

Debian 8 : Afficher la sequence de démarrage | Enable verbose startup system


Par défaut Debian 8 ne montre pas les services démarrés au Boot du  système, cela peut être gênant
si vous essayer de configurer un script qui ne démarrage pas.
Avec ce mode, vous pouvez de voir ce qui ce passe !

By default Debian 8 does not show the services started at boot system, it can be annoying if you try to configure a script that does not start.
In this mode, you can see what happens!

Installer Ansible 2.0 sous Debian 8 | How To install Ansible 2.0 Debian 8 Jessie


Voici une façon rapide d'installer Ansible 2.0 via les sources Tarball (tar.gz)
Here is a quick method of installing Ansible 2.0 source tarball (tar.gz)

Prérequis être root ou avoir les droits root.
Prerequisites be root or have root privileges.


# apt-get update && apt -y install python-pip python-dev build-essential libssl-dev libffi-dev sudo
# pip install PyYAML && pip install jinja2 && pip install --upgrade setuptools
# pip install paramiko --upgrade && pip install --upgrade pyasn1

*** Download Ansible

# cd /tmp/
# wget http://releases.ansible.com/ansible/ansible-2.0.0.0.tar.gz
# tar xzfv ansible-2.0.0.0.tar.gz
cd ansible-2.0.0.0 && make && make install

*** TEST ANSIBLE

# ansible localhost -m ping

localhost | SUCCESS => {
    "changed": false,
    "ping": "pong"
}


# ansible --version
ansible 2.0.0.0
  config file =
  configured module search path = Default w/o overrides

mercredi 25 mai 2016

Docker Command-Line | Pense-bête | Reminder




     Voici une liste des commandes rapide pour Docker.
     Here is a quick list of commands for Docker.
     ---------------------------------------------------------------------------------
   
    # Run a container
    docker run ubuntu /bin/echo "Hello word"


    # Running an interactive shell
    docker run -i -t ubuntu /bin/bash
  
    # Start Container as a daemon
    docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
  
    # Show container running
    docker ps
  
    # nat port-Host -> Container
    docker run -d -p 80:5000 training/webapp python app.py
  
    # Show container logs
    docker logs -f name_container
  
    # container top
    docker top name_container
  
    # Remove container
     docker rm name_container
    
    # Start Stop container
    docker stop / start name_container
  
    # Listing images on the host
    docker images
  
    # Download images
    docker pull centos
  
    # Docker search images
    docker search sinatra
  
    # Updating and committing an image
     docker commit -m "Added json gem" -a "Kate Smith" 0b2616b0e5a8 ouruser/sinatra:v2
    
    # Set name container
    docker run -d -P --name web training/webapp python app.py
  
    # Show networks
    docker network ls
       
    # Create Bridge network
    docker network create -d bridge my-bridge-network
  
    # Show network detail
    docker network inspect my-bridge-network
    docker inspect --format='{{json .NetworkSettings.Networks}}' name_container
  
    # Show IP address Container
    docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' web
  
    # Connect networks
    docker network connect my-bridge-network web


    # Attach Container to network
    docker network connect my-bridge-network web

   # Adding a data volume
   docker run -d -P --name web -v /webapp training/webapp python app.py

 # Mount a host directory as a data volume
  docker run -d -P --name web -v /src/webapp:/webapp training/webapp python app.py



jeudi 20 août 2015

Installer les Vmware Tools sous Debian (Vmware Workstation)


# on install les paquets nécessaires 
aptitude install build-essential  linux-headers-$(uname -r) -y
# il faut monter le cdrom des tools via le menu VM
mount /media/cdrom
cd /media/cdrom
ll
# on decompresse le tar.gz dans le dossier /tmp
tar xzfv VMwareTools-9.9.3-2759765.tar.gz -C /tmp/
cd /tmp/
cd vmware-tools-distrib/
ll
# on lance l'installation via le script Vmware, l'option -d valide les questions par défauts
./vmware-install.pl -d
# on vérifie la présence des outils Vmware
vmware-checkvm


Debian : Activer alias

Installer Debian 8 Jessie sans GUI

jeudi 26 février 2015

Tutoriel : Authentification Active Directory sous Debian Wheezy

Tutoriel :  Authentification Active Directory sous Debian Wheezy

Bonjour,
Voici un petit tutoriel sur comment  joindre une machine sous Linux Debian dans un domaine Active Directory.

Prérequis Hardware :

  • Avoir un contrôleur de  domaine AD sous Windows Server 2008 R2. IP : 192.168.20.x.x
  • Un Poste de travail installé avec une Debian Wheezy sans interface graphique : maMachineLinux
  • Connexion via putty.


Prérequis Sofware:

# aptitude install ntpdate vim sudo

NTPDATE : Synchronise l'heure de la machine via le protocole NTP

     # ntpdate IP_DE_VOTRE_SERVEUR_AD

1. Vérification du fichier hosts [FQDN)]

     # vi /etc/hosts
     127.0.0.1  localhost maMachineLinux.MonDomaine MonDomaine
     192.168.x.x  maMachineLinux.MonDomaine        maMachineLinux

2. Installation et Configuration de Kerberos


Kerberos  récupère un ticket auprès du contrôleur de domaine
      # aptitude install krb5-user libpam-krb5

Modification du fichier de configuration  /etc/krb5.conf
Copie de l'original :

      # cd /etc/
      # cp krb5.conf krb5.conf.ORI
      # vi krb5.conf

                [logging]
                               Default = FILE:/var/log/krb5.log

                [libdefaults]
                               ticket_lifetime = 24000
                               clock-skew = 300
                               default_realm = MonDomaine
                [realms]
                               MonDomaine = {
                               kdc = 192.168.x.x
                               admin_server = 192.168.x.x
                               default_domain = MonDomaine
                                                               }                                            
                [domain_realm]
                               .MonDomaine = MonDomaine
                                               MonDomaine = MonDomaine


***
ATTENTION ! le nom du domaine doit être en MAJUSCULE


Test de connexion vers l'AD

          # kinit administrateur

                              Password for administrateur@MonDomaine: xxxx

On vérifie si on a bien reçu un ticket:

                               # klist

                Ticket cache: FILE:/tmp/krb5cc_0
                Default principal: administrateur@MonDomaine

                Valid starting       Expires              Service principal
                26/02/2015 11:17:00  26/02/2015 17:57:00  krbtgt/MonDomaine@MonDomaine

 3. Intégration au domaine AD

          # aptitude install samba winbind samba-common-bin

Modification du fichier /etc/samba/smb.conf

 Backup de l'original :

          # cp smb.conf smb.conf.ori

          # vi smb.conf

                                               [global]
                                                        security = ads
                                                        realm = MonDomaine.local
                                                        workgroup = MonDomaine
                                                        idmap uid = 10000-20000
                                                        idmap gid = 10000-20000
                                                        winbind enum users = yes
                                                        winbind enum groups = yes
                                                        template homedir = /home/%D/%U
                                                        template shell = /bin/bash
                                                        client use spnego = yes
                                                        client ntlmv2 auth = yes
                                                        encrypt passwords = yes
                                                        winbind use default domain = yes
                                                        restrict anonymous = 2
                                                        domain master = no
                                                        local master = no
                                                        preferred master = no
                                                        os level = 0
                                                        winbind nss info = rfc2307

On redémarre les services :


          # /etc/init.d/winbind stop
          # /etc/init.d/samba restart
          # /etc/init.d/winbind start

Jonction au domaine :


                        # net ads join -U administrateur

Pour vérifie l'intégration, on peut aller voir sur le serveur AD si l'objet portant le nom de la machine est bien présent, généralement dans l' OU "Computer"
             
Test :
                        # wbinfo -u  -> retourne tous les utilisateurs de l'AD
          # wbinfo -g  -> tous les groupes de l'AD

          # wbinfo -n "nom d'un objet ad" -> donne le SID


 4. Authentification

           
        /etc/nsswitch.conf

                On ajoute « winbind » à la fin des deux lignes suivantes :

          passwd:         compat winbind
          group:          compat winbind
         
Test :
            
            # getent passwd  ->  listes des utilisateurs locaux et AD.

     # getent group -> idem mais pour les groupes


 5. PAM -> autorise les utilisateurs de l'AD à se connecter sur le poste Linux


Dans /etc/pam.d/

Normalement la bibliothèque  pam_winbind.so doit être présente dans chaque fichier de configuration suivant :


                # vi common-auth

auth    [success=3 default=ignore]      pam_krb5.so minimum_uid=1000
auth    [success=2 default=ignore]      pam_unix.so nullok_secure try_first_pass

auth    [success=1 default=ignore]      pam_winbind.so krb5_auth  krb5_ccache_type=FILE cached_login try_first_pass

      # vi common-account

account [success=2 new_authtok_reqd=done default=ignore]        pam_unix.so
account [success=1 new_authtok_reqd=done default=ignore]        pam_winbind.so

      # vi common-session
session optional                        pam_winbind.so
session required pam_mkhomedir.so umask=0022 skel=/etc/skel  <-- on ajoute cette ligne pour le creation automatique du dossier home de chaque utilisateurs

# end of pam-auth-update config

On essaie de se connecter via ssh en putty ou autre :

Login: bruce.lee
bruce.lee@192.168.x.x's password:

Le prompt se présente à nous :

Linux maMachineLinux 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u2 x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Feb 26 10:46:50 2015 from maMachineLinux.MonDomaine
bruce.lee@maMachineLinux:~$

 6. Autoriser uniquement les membres d'un groupe AD à se connecter


Pour cela il faut éditer le fichier /etc/pam.d/common-auth et modifier la ligne suivante et ajouter le SID du groupe concerné:

auth    [success=1 default=ignore]      pam_winbind.so require_membership_of=S-1-5-21-796845957-1229272821-682003330-10184 krb5_auth krb5_ccache_type=FILE cached_login try_first_pass

Pour obtenir le SID d'un groupe AD :

     # wbinfo -n "nom du groupe" 
                               exemple  ~$ wbinfo -n debian

S-1-5-21-796845957-1229272821-682003330-10184 SID_DOM_GROUP (2)

Les Logs

En cas de problèmes vous pouvez regarder les logs dans /var/log/ notamment "messages"

Liens 

https://wiki.debian.org/fr/LDAP/NSS

https://help.ubuntu.com/community/ActiveDirectoryWinbindHowto