\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{geometry}
\geometry{top=15mm, bottom=15mm, left=1cm, right=1cm}
\usepackage[french]{babel}
\usepackage{pslatex}
\usepackage[colorlinks=true,urlcolor=black]{hyperref}
\usepackage{graphicx}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\footrulewidth}{0.4pt}
\fancyfoot[L]{Uubu.fr}
\fancyfoot[R]{lun. juil. 3 10:08:25 CEST 2017}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={sudo.conf},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Fichier de configuration de sudo},
CreationDate={D:20170703100825},
ModDate={D:20170703100825},
Keywords={sudo;rbac;security}
}}
\begin{document}
 
\begin{center}
{\Huge sudo.conf }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Fichier de configuration de sudo}
 
\vspace{10mm}
 
\hspace{1mm}  sudo.conf supporte les directive 'Plugin', 'Path', 'Set', 'Debug'.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Plugin }
 
\
 
\hspace{1mm} Une ligne Plugin définis un module et son chemin, suivi de paramètres optionnels. Peut être spécifié plusieurs fois \\
\hspace{1mm} \textbf{Plugin sudoers\_policy /usr/local/libexec/sudo/sudoers.so sudoers\_mode=0440} \\
 
\vspace{1cm}{\huge Path }
 
\
 
\hspace{1mm}  Path définis les chemins vers divers librairies/programmes nécessaire. Si une ligne Path ne contient pas de chemin, la fonctionnalité est considérée désactivée:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{6mm} askpass]{chemin du helper pour lire les mots de passe quand aucun terminal n'est disponible}
\item[\hspace{6mm} noexec]{Chemin de la librairie wrappers pour les fonctions execl(), execle(), execlp(), exect(), execv(), execve(), execvP(), execvp(), execvpe(), fexecve(), popen(), posix\_spawn(), posix\_spawnp(), system(), et wordexp() qui empêche l'exécution d'autres commandes. Utilisé pour implémenter la foncionnalité noexec dans les systèmes qui supportent LD\_PRELOAD ou son équivalent.}
\item[\hspace{6mm} plugin\_dir]{Répertoire de recherche des plugins spéficier sans chemin complet.}
\item[\hspace{6mm} sesh]{Chemin de sesh. Utilé quand sudo est compilé avec le support SELinux}
\end{description}
 
\vspace{1cm}{\huge Set }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} disable\_coredump true|false]{Par défaut sudo désactive le coredump pour éviter toute fuite de données sensible}
\item[\hspace{1mm} group\_source]{sudo passe la liste des groupes de l'utilisateur invoquant à la stratégie et les plugins I/O. Dans la plupart des système, il y a une limite du nombre de groupes (généralement 16). si la liste de groupe dépasse la limite kernel, sudo consulte lui-même la liste des groupes:}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{6mm} static]{Utilise la liste de groupe statique que le kernel retourne}
\item[\hspace{6mm} dynamic]{Requête toujours la base de groupe. C'est dynamique dans le sens où les changements fait dans la base de groupe après que l'utilisateur se soit loggé sont reflétés dans la liste des groupe.}
\item[\hspace{6mm} adaptive]{Ne requête la pase que si la liste des groupes retournés par le kernel a atteind la limite des entrées.}
\end{description}
 
\begin{description} \normalsize
\item[\hspace{1mm} max\_groups]{Nombre maximum de groupes utiliateur à récupérer dans la base de groupe lorsque sudo requête la base de groupe directement}
\item[\hspace{1mm} probe\_interfaces]{Par défaut, sudo sont les interfaces réseaux du système et passe l'IP à chaque interface activée au plugin de stratégie. Cela simplifie les règles de match basé sur l'IP sans avoir à requêter DNS.}
\end{description}
 
\vspace{1cm}{\huge Debug }
 
\
 
\hspace{1mm} Une ligne Debug consiste du mot clé Debug, suivi par le nom du programme ou plugin à débugger (sudo, visudo, sudoreplay, sudoers), le nom du fichier de dibug et une liste de flags. Par exemple: \\
\hspace{1mm} \textbf{Debug sudo /var/log/sudo\_debug all@warn,plugin@info} \\
 
\begin{description} \normalsize
\item[\hspace{6mm} all]{Match tous les sous-systèmes}
\item[\hspace{6mm} args]{traitement des arguments de la ligne de commande}
\item[\hspace{6mm} conv]{Conversation utilisateur}
\item[\hspace{6mm} edit]{sudoedit}
\item[\hspace{6mm} event]{Sous-système d'évènement}
\item[\hspace{6mm} exec]{exécution de commande}
\item[\hspace{6mm} main]{Fonction main de sudo}
\item[\hspace{6mm} netif]{Gestion des interfaces réseaux}
\item[\hspace{6mm} pcomm]{Communication avec le plugin}
\item[\hspace{6mm} pty]{Code lié au pty}
\item[\hspace{6mm} selinux]{gestion SELinux}
\item[\hspace{6mm} util]{Fonctions utilitaires}
\item[\hspace{6mm} utmp]{Gestion utmp}
\end{description}
\end{flushleft}
\end{document}
