[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[RFR2] po4a://harden-doc/fr.po



Salut,

Le 12/04/2012 14:16, David Prévot a écrit :

Le neuvième chapitre est « nouveau » (c'est à dire qu'il n'était pas
traduit jusqu'à présent, je ne prétends pas qu'il soit récent), en pièce
jointe le faux PO ne contenant que ce chapitre. Par avance merci pour
vos relectures.

> Le fichier complet est en ligne […] :
> 
> http://anonscm.debian.org/viewvc/ddp/manuals/trunk/securing-howto/po4a/po/fr.po?view=co
> 
> Les fichiers construits sont aussi en ligne (et seront à jour des
> dernières modifications d'ici quelques heures) :
> 
> http://www.debian.org/doc/manuals/securing-debian-howto/
> http://www.debian.org/doc/manuals/securing-debian-howto/securing-debian-howto.fr.pdf

Amicalement

David

P.-S. : Note perso	(head -n 22 po4a/po/fr.po && \
		         head -n 21087 po4a/po/fr.po | \
			 tail -n 635) \
				> /tmp/chapitre9.po

# Copyright (C) 2002-2005, 2008, 2011, 2012 Debian French l10n team <debian-l10n-french@lists.debian.org>
# This file is distributed under the same license as the harden-doc package.
#
# Arnaud Assad <arnaud@cruncher.underlands.org>, 2002.
# Pierre Machard <pmachard@tuxfamily.org>, 2002.
# Frédéric Bothamy <frederic.bothamy_AT_free.fr>, 2003-2005.
# Simon Valiquette <v.simon@ieee.org>, 2008.
# David Prévot <david@tilapin.org>, 2011, 2012.
msgid ""
msgstr ""
"Project-Id-Version: harden-doc\n"
"POT-Creation-Date: 2012-04-01 15:48-0400\n"
"PO-Revision-Date: 2012-04-14 08:44-0400\n"
"Last-Translator: David Prévot <david@tilapin.org>\n"
"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Lokalize 1.2\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. type: <heading></heading>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:8
msgid "Developer's Best Practices for OS Security"
msgstr "Meilleures pratiques de sécurité pour les développeurs"

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:15
msgid ""
"This chapter introduces some best secure coding practices for developers "
"writing Debian packages. If you are really interested in secure coding I "
"recommend you read David Wheeler's <url id=\"http://www.dwheeler.com/secure-";
"programs/\" name=\"Secure Programming for Linux and Unix HOWTO\"> and <url "
"id=\"http://www.securecoding.org\"; name=\"Secure Coding: Principles and "
"Practices\"> by Mark G. Graff and Kenneth R. van Wyk (O'Reilly, 2003)."
msgstr ""
"Ce chapitre introduit certaines des meilleures pratiques de code sécurisé "
"pour les développeurs écrivant des paquets Debian. Si vous êtes vraiment "
"intéressé par le code sécurisé, vous devriez lire le <url id=\"http://www.";
"dwheeler.com/secure-programs/\" name=\"HOWTO de programmation sécurisée pour "
"Linux et UNIX\"> de David Wheeler et  <url id=\"http://www.securecoding.org";
"\" name=\"Secure Coding: Principles and Practices\"> de Mark G. Graff et "
"Kenneth R. van Wyk (O'Reilly, 2003)."

#. type: <heading></heading>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:16
msgid "Best practices for security review and design"
msgstr "Meilleures pratiques de vérification et conception sécurisées"

# NOTE: s/that/who/
#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:20
msgid ""
"Developers that are packaging software should make a best effort to ensure "
"that the installation of the software, or its use, does not introduce "
"security risks to either the system it is installed on or its users."
msgstr ""
"Les développeurs qui empaquettent des logiciels devraient faire de leur "
"mieux pour s'assurer que l'installation du logiciel, ou son utilisation, "
"n'introduit pas de risques en matière de sécurité à la fois au système où il "
"est installé et à ses utilisateurs."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:34
msgid ""
"In order to do so, they should make their best to review the source code of "
"the package and detect any flaws that might introduce security bugs before "
"releasing the software or distributing a new version. It is acknowledged "
"that the cost of fixing bugs grows for different stages of its development, "
"so it is easier (and cheaper) to fix bugs when designing than when the "
"software has been deployed and is in maintenance mode (some studies say that "
"the cost in this later phase is <strong>sixty</strong> times higher). "
"Although there are some tools that try to automatically detect these flaws, "
"developers should strive to learn about the different kind of security flaws "
"in order to understand them and be able to spot them in the code they (or "
"others) have written."
msgstr ""
"Pour ce faire, ils devraient faire de leur mieux pour examiner le code "
"source du paquet et détecter tous les défauts qui pourraient introduire des "
"bogues de sécurité avant de publier le programme ou de distribuer une "
"nouvelle version. Il est reconnu que le coût de correction de bogues "
"augmente aux différentes étapes de son développement, il est donc plus "
"facile (et moins coûteux) de corriger les bogues lors de la conception "
"qu'une fois le logiciel déployé et en mode maintenance (plusieurs études "
"disent que le coût dans cette dernière phase est <strong>soixante</strong> "
"fois plus élevé). Bien que plusieurs outils essayent de détecter "
"automatiquement ces défauts, les développeurs devraient faire leur possible "
"pour se tenir au courant des différents types de défauts de sécurité afin de "
"les comprendre et être capable de les remarquer dans le code qu'ils (ou "
"d'autres) ont écrit."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:52
msgid ""
"The programming bugs which lead to security bugs typically include: <url id="
"\"http://en.wikipedia.org/wiki/Buffer_overflow\"; name=\"buffer overflows\">, "
"format string overflows, heap overflows and integer overflows (in C/C++ "
"programs), temporary <url id=\"http://en.wikipedia.org/wiki/Symlink_race\"; "
"name=\"symlink race conditions\"> (in scripts), <url id=\"http://en.";
"wikipedia.org/wiki/Directory_traversal\" name=\"directory traversal\"> and "
"command injection (in servers) and <url id=\"http://en.wikipedia.org/wiki/";
"Cross_site_scripting\" name=\"cross-site scripting\">, and <url id=\"http://";
"en.wikipedia.org/wiki/SQL_injection\" name=\"SQL injection bugs\"> (in the "
"case of web-oriented applications). For a more complete information on "
"security bugs review Fortify's <url id=\"http://vulncat.fortifysoftware.com/";
"\" name=\"Taxonomy of Software Security Errors\">."
msgstr ""
"Les bogues de programmation qui conduisent à des bogues de sécurité sont "
"typiquement (entres autres) : les <url id=\"http://fr.wikipedia.org/wiki/";
"Dépassement_de_tampon\" name=\"dépassements de tampon\">, les dépassements "
"de chaîne de formatage, les dépassements de tas et les dépassements d'entier "
"(dans les programme en C ou C++), les <url id=\"http://en.wikipedia.org/wiki/";
"Symlink_race\" name=\"conditions de situation de compétition de liens "
"symboliques\"> temporaires (dans les scripts), les <url id=\"http://en.";
"wikipedia.org/wiki/Directory_traversal\" name=\"traversées de répertoires\"> "
"et les injections de commande (sur les serveurs) et <url id=\"http://fr.";
"wikipedia.org/wiki/Cross-site_scripting\" name=\"scripts intersites\">, et "
"les <url id=\"http://fr.wikipedia.org/wiki/Injection_SQL\"; name=\"bogues "
"d'injection SQL\"> (dans le cas des applications orientées web). Pour de "
"plus amples renseignements sur les bogues de sécurité, consultez la <url id="
"\"https://www.fortify.com/vulncat/en/vulncat/index.html\"; name=\"taxonomie "
"des erreurs de sécurité de logiciels\"> de Fortify."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:62
msgid ""
"Some of these issues might not be easy to spot unless you are an expert in "
"the programming language the software uses, but some security problems are "
"easy to detect and fix. For example, finding temporary race conditions due "
"to misuse of temporary directories can easily be done just by running "
"<tt>grep -r \"/tmp/\" .</tt>. Those calls can be reviewed and replace the "
"hardcoded filenames using temporary directories to calls to either "
"<prgn>mktemp</prgn> or <prgn>tempfile</prgn> in shell scripts, <manref "
"section=\"3perl\" name=\"File::Temp\"> in Perl scripts, or <manref section="
"\"3\" name=\"tmpfile\"> in C/C++."
msgstr ""
"Certains de ces problèmes pourraient ne pas être faciles à repérer à moins "
"d'être un expert dans le langage de programmation utilisé par le logiciel, "
"mais certains problèmes sont faciles à détecter et à corriger. Par exemple, "
"trouver des conditions de situation de compétitions temporaires à cause "
"d'une mauvaise utilisation de répertoires temporaires peut se faire "
"facilement en exécutant « <tt>grep -r \"/tmp/\" .</tt> ». Ces appels peuvent "
"être examinés et remplacer les noms de fichiers écrits en dur en utilisant "
"des répertoires temporaires pour appeler <prgn>mktemp</prgn> ou "
"<prgn>tempfile</prgn> dans les scripts d'interpréteur, <manref section="
"\"3perl\" name=\"File::Temp\"> dans les scripts Perl ou <manref section="
"\"3\" name=\"tmpfile\"> en C ou C++."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:70
msgid ""
"There are a set of tools available to assist to the security code review "
"phase. These include <package>rats</package>, <package>flawfinder</package> "
"and <package>pscan</package>. For more information, read the <url id="
"\"http://www.debian.org/security/audit/tools\"; name=\"list of tools used by "
"the Debian Security Audit Team\">."
msgstr ""
"Certains outils permettent d'aider à l'examen de sécurité du code, y compris "
"<package>rats</package>, <package>flawfinder</package> et <package>pscan</"
"package>. Pour de plus amples renseignements, consultez la <url id=\"http://";
"www.debian.org/security/audit/tools\" name=\"liste d'outils utilisés par "
"l'équipe d'audit de sécurité Debian\">."

#. type: <p><list>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:73
msgid ""
"When packaging software developers have to make sure that they follow common "
"security principles, including:"
msgstr ""
"Lors de l'empaquetage, les développeurs de logiciel doivent s'assurer de "
"suivre les principes de sécurité habituels, y compris :"

#. type: <p><list>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:77
msgid "The software runs with the minimum privileges it needs:"
msgstr "le logiciel s'exécute avec le minimum de droits nécessaires :"

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:86
msgid ""
"The package does install binaries setuid or setgid. <prgn>Lintian</prgn> "
"will warn of <url id=\" http://lintian.debian.org/reports/Tsetuid-binary.html";
"\" name=\"setuid\">, <url id=\"http://lintian.debian.org/reports/Tsetgid-";
"binary.html\" name=\"setgid\"> and <url id=\"http://lintian.debian.org/";
"reports/Tsetuid-gid-binary.html\" name=\"setuid and setgid\"> binaries."
msgstr ""
"le paquet installe des binaires setuid or setgid. <prgn>Lintian</prgn> "
"avertira des binaires <url id=\" http://lintian.debian.org/reports/Tsetuid-";
"binary.html\" name=\"setuid\">, <url id=\"http://lintian.debian.org/reports/";
"Tsetgid-binary.html\" name=\"setgid\"> ou <url id=\"http://lintian.debian.";
"org/reports/Tsetuid-gid-binary.html\" name=\"setuid et setgid\"> ;"

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:89
msgid ""
"The daemons the package provide run with a low privilege user (see <ref id="
"\"bpp-lower-privs\">)"
msgstr ""
"les démons fournis par le paquet s'exécutent avec un utilisateur aux droits "
"restreints (consultez <ref id=\"bpp-lower-privs\">) ;"

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:95
msgid ""
"Programmed (i.e., <prgn>cron</prgn>) tasks running in the system do NOT run "
"as root or, if they do, do not implement complex tasks."
msgstr ""
"les tâches programmées (c'est-à-dire <prgn>cron</prgn>) s'exécutant sur le "
"systèmes ne le sont <strong>pas</strong> en tant que superutilisateur, et si "
"elle le sont, elles n'implémentent pas de tâches complexes."

# NOTE: EANCHOR #s-permissions-owners
#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:105
msgid ""
"If you have to do any of the above make sure the programs that might run "
"with higher privileges have been audited for security bugs. If you are "
"unsure, or need help, contact the <url id=\"http://www.debian.org/security/";
"audit/\" name=\"Debian Security Audit team\">. In the case of setuid/setgid "
"binaries, follow the Debian policy section regarding <url id=\"http://www.";
"debian.org/doc/debian-policy/ch-files.html#s10.9\" name=\"permissions and "
"owners\">"
msgstr ""
"Si vous devez faire l'un des deux, assurez-vous que les programmes qui "
"pourraient s'exécuter avec des privilèges plus élevés ont été contrôlés pour "
"les bogues de sécurité. En cas de doute, ou pour obtenir de l'aide, "
"contactez l'<url id=\"http://www.debian.org/security/audit/\"; name=\"équipe "
"d'audit de sécurité Debian\">. Pour les binaires setuid ou setgid, suivez la "
"section de la charte Debian sur les <url id=\"http://www.debian.org/doc/";
"debian-policy/ch-files.html#s-permissions-owners\" name=\"droits et "
"proprétaires\">."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:113
msgid ""
"For more information, specific to secure programming, make sure you read (or "
"point your upstream to) <url id=\"http://www.dwheeler.com/secure-programs/\"; "
"name=\"Secure Programming for Linux and Unix HOWTO\"> and the <url id="
"\"https://buildsecurityin.us-cert.gov/portal/\"; name=\"Build Security In\"> "
"portal."
msgstr ""
"Pour de plus amples renseignements, spécifiques à la programmation "
"sécurisée, assurez vous de lire (ou d'indiquer en amont) le <url id=\"http://";
"www.dwheeler.com/secure-programs/\" name=\"HOWTO de programmation sécurisée "
"pour Linux et UNIX\"> et le portail <url id=\"https://buildsecurityin.us-";
"cert.gov/portal/\" name=\"Build Security In\">."

#. type: <heading></heading>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:121
msgid "Creating users and groups for software daemons"
msgstr "Création d'utilisateurs et de groupes pour les démons logiciels"

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:128
msgid ""
"If your software runs a daemon that does not need root privileges, you need "
"to create a user for it. There are two kind of Debian users that can be used "
"by packages: static uids (assigned by <package>base-passwd</package>, for a "
"list of static users in Debian see <ref id=\"faq-os-users\">) and dynamic "
"uids in the range assigned to system users."
msgstr ""
"Si le logiciel exécute un démon qui n'a pas besoin des droits du "
"superutilisateur, vous devez lui créer un utilisateur. Deux types "
"d'utilisateurs Debian peuvent être utilisés par les paquets : avec "
"identifiant (UID) statique (attribués par <package>base-passwd</package> ; "
"consultez <ref id=\"faq-os-users\"> pour une liste des utilisateurs "
"statiques dans Debian) et avec identifiant dynamique dans l'intervalle "
"dévolu aux utilisateurs système."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:133
msgid ""
"In the first case, you need to ask for a user or group id to the "
"<package>base-passwd</package>. Once the user is available there the package "
"needs to be distributed including a proper versioned depends to the "
"<package>base-passwd</package> package."
msgstr ""
"Dans le premier cas, il faut demander un identifiant de groupe ou "
"d'utilisateur à <package>base-passwd</package>. Une fois l'utilisateur "
"disponible, le paquet doit être distribué avec une dépendance versionnée "
"adéquate sur le paquet <package>base-passwd</package>."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:137
msgid ""
"In the second case, you need to create the system user either in the "
"<em>preinst</em> or in the <em>postinst</em> and make the package depend on "
"<tt>adduser (>= 3.11)</tt>."
msgstr ""
"Dans le second cas, il faut créer un utilisateur système en <em>preinst</em> "
"ou en <em>postinst</em>, avec  le paquet dépendant de <tt>adduser (>= 3.11)</"
"tt>."

#. type: <p><example>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:140
msgid ""
"The following example code creates the user and group the daemon will run as "
"when the package is installed or upgraded:"
msgstr ""
"L'exemple de code suivant crée les utilisateur et groupe utilisés par le "
"démon pour s'exécuter quand le paquet est installé ou mis à niveau :"

#. type: <example></example>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:203
#, no-wrap
msgid ""
"[...]\n"
"case \"$1\" in\n"
"  install|upgrade)\n"
"\n"
"  # If the package has default file it could be sourced, so that\n"
"  # the local admin can overwrite the defaults\n"
"\n"
"  [ -f \"/etc/default/<var>packagename</var>\" ] && . /etc/default/<var>packagename</var>\n"
"\n"
"  # Sane defaults:\n"
"\n"
"  [ -z \"$SERVER_HOME\" ] && SERVER_HOME=<var>server_dir</var>\n"
"  [ -z \"$SERVER_USER\" ] && SERVER_USER=<var>server_user</var>\n"
"  [ -z \"$SERVER_NAME\" ] && SERVER_NAME=\"<var>Server description</var>\"\n"
"  [ -z \"$SERVER_GROUP\" ] && SERVER_GROUP=<var>server_group</var>\n"
"\n"
"  # Groups that the user will be added to, if undefined, then none.\n"
"  ADDGROUP=\"\"\n"
"\n"
"  # create user to avoid running server as root\n"
"  # 1. create group if not existing\n"
"  if ! getent group | grep -q \"^$SERVER_GROUP:\" ; then\n"
"     echo -n \"Adding group $SERVER_GROUP..\"\n"
"     addgroup --quiet --system $SERVER_GROUP 2>/dev/null ||true\n"
"     echo \"..done\"\n"
"  fi\n"
"  # 2. create homedir if not existing\n"
"  test -d $SERVER_HOME || mkdir $SERVER_HOME\n"
"  # 3. create user if not existing\n"
"  if ! getent passwd | grep -q \"^$SERVER_USER:\"; then\n"
"    echo -n \"Adding system user $SERVER_USER..\"\n"
"    adduser --quiet \\\n"
"            --system \\\n"
"            --ingroup $SERVER_GROUP \\\n"
"            --no-create-home \\\n"
"            --disabled-password \\\n"
"            $SERVER_USER 2>/dev/null || true\n"
"    echo \"..done\"\n"
"  fi\n"
"  # 4. adjust passwd entry\n"
"  usermod -c \"$SERVER_NAME\" \\\n"
"          -d $SERVER_HOME   \\\n"
"          -g $SERVER_GROUP  \\\n"
"             $SERVER_USER\n"
"  # 5. adjust file and directory permissions\n"
"  if ! dpkg-statoverride --list $SERVER_HOME >/dev/null\n"
"  then\n"
"      chown -R $SERVER_USER:adm $SERVER_HOME\n"
"      chmod u=rwx,g=rxs,o= $SERVER_HOME\n"
"  fi\n"
"  # 6. Add the user to the ADDGROUP group\n"
"  if test -n $ADDGROUP\n"
"  then\n"
"      if ! groups $SERVER_USER | cut -d: -f2 | \\\n"
"         grep -qw $ADDGROUP; then\n"
"           adduser $SERVER_USER $ADDGROUP\n"
"      fi\n"
"  fi\n"
"  ;;\n"
"  configure)\n"
"\n"
"[...]"
msgstr ""
"[...]\n"
"case \"$1\" in\n"
"  install|upgrade)\n"
"\n"
"  # Si le paquet a un fichier default permettant à\n"
"  # l'administrateur local d'écraser les défauts\n"
"\n"
"  [ -f \"/etc/default/<var>nompaquet</var>\" ] && . /etc/default/<var>nompaquet</var>\n"
"\n"
"  # Défauts sains :\n"
"\n"
"  [ -z \"$SERVER_HOME\" ] && SERVER_HOME=<var>rép_serveur</var>\n"
"  [ -z \"$SERVER_USER\" ] && SERVER_USER=<var>utilisateur_serveur</var>\n"
"  [ -z \"$SERVER_NAME\" ] && SERVER_NAME=\"<var>Description du serveur</var>\"\n"
"  [ -z \"$SERVER_GROUP\" ] && SERVER_GROUP=<var>groupe_serveur</var>\n"
"\n"
"  # Groupes auxquels l'utilisateur sera ajouté ; aucun si non défini.\n"
"  ADDGROUP=\"\"\n"
"\n"
"  # créer un utilisateur pour éviter d'exécuter le serveur en tant\n"
"  # que superutilisateur\n"
"  # 1. créer le groupe s'il n'existe pas\n"
"  if ! getent group | grep -q \"^$SERVER_GROUP:\" ; then\n"
"     echo -n \"Ajout du groupe $SERVER_GROUP..\"\n"
"     addgroup --quiet --system $SERVER_GROUP 2>/dev/null ||true\n"
"     echo \"fait\"\n"
"  fi\n"
"  # 2. créer un répertoire personnel s'il n'existe pas\n"
"  test -d $SERVER_HOME || mkdir $SERVER_HOME\n"
"  # 3. créer un utilisateur s'il n'existe pas\n"
"  if ! getent passwd | grep -q \"^$SERVER_USER:\"; then\n"
"    echo -n \"Ajout de l'utilisateur système $SERVER_USER..\"\n"
"    adduser --quiet \\\n"
"            --system \\\n"
"            --ingroup $SERVER_GROUP \\\n"
"            --no-create-home \\\n"
"            --disabled-password \\\n"
"            $SERVER_USER 2>/dev/null || true\n"
"    echo \"fait\"\n"
"  fi\n"
"  # 4. ajuster l'entrée de mot de passe\n"
"  usermod -c \"$SERVER_NAME\" \\\n"
"          -d $SERVER_HOME   \\\n"
"          -g $SERVER_GROUP  \\\n"
"             $SERVER_USER\n"
"  # 5. ajuster les droits des fichiers et répertoires\n"
"  if ! dpkg-statoverride --list $SERVER_HOME >/dev/null\n"
"  then\n"
"      chown -R $SERVER_USER:adm $SERVER_HOME\n"
"      chmod u=rwx,g=rxs,o= $SERVER_HOME\n"
"  fi\n"
"  # 6. ajouter l'utilisateur au groupe ADDGROUP\n"
"  if test -n $ADDGROUP\n"
"  then\n"
"      if ! groups $SERVER_USER | cut -d: -f2 | \\\n"
"         grep -qw $ADDGROUP; then\n"
"           adduser $SERVER_USER $ADDGROUP\n"
"      fi\n"
"  fi\n"
"  ;;\n"
"  configure)\n"
"\n"
"[...]"

#. type: <p><list>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:207
msgid "You have to make sure that the init.d script file:"
msgstr "Assurez-vous que le fichier de script init.d :"

# NOTE: s/call/option/
#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:213
msgid ""
"Starts the daemon dropping privileges: if the software does not do the "
"<manref section=\"2\" name=\"setuid\"> or <manref section=\"2\" name="
"\"seteuid\"> call itself, you can use the <tt>--chuid</tt> call of "
"<prgn>start-stop-daemon</prgn>."
msgstr ""
"démarre le démon en perdant les droits : si le logiciel ne fait pas l'appel "
"<manref section=\"2\" name=\"setuid\"> ou <manref section=\"2\" name="
"\"seteuid\"> lui-même, l'option <tt>--chuid</tt> de <prgn>start-stop-daemon</"
"prgn> est utilisable."

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:217
msgid ""
"Stops the daemon only if the user id matches, you can use the <prgn>start-"
"stop-daemon</prgn> <tt>--user</tt> option for this."
msgstr ""
"n'arrête le démon que si l'identifiant utilisateur correspond, l'option "
"<tt>--user</tt> de <prgn>start-stop-daemon</prgn> permet de faire cela."

#. type: <p><example>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:218
msgid "Does not run if either the user or the group do not exist:"
msgstr "ne s'exécute pas si l'utilisateur ou le groupe n'existent pas :"

#. type: <example></example>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:227
#, no-wrap
msgid ""
"  if ! getent passwd | grep -q \"^<var>server_user</var>:\"; then\n"
"     echo \"Server user does not exist. Aborting\" >&2\n"
"     exit 1\n"
"  fi\n"
"  if ! getent group | grep -q \"^<var>server_group</var>:\" ; then\n"
"     echo \"Server group does not exist. Aborting\" >&2\n"
"     exit 1\n"
"  fi"
msgstr ""
"  if ! getent passwd | grep -q \"^<var>utilisateur_serveur</var>:\"; then\n"
"     echo \"L'utilisateur du serveur n'existe pas. Abandon\" >&2\n"
"     exit 1\n"
"  fi\n"
"  if ! getent group | grep -q \"^<var>groupe_serveur</var>:\" ; then\n"
"     echo \"Le groupe du serveur n'existe pas. Abandon\" >&2\n"
"     exit 1\n"
"  fi"

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:243
msgid ""
"If the package creates the system user it can remove it when it is purged in "
"its <em>postrm</em>. This has some drawbacks, however. For example, files "
"created by it will be orphaned and might be taken over by a new system user "
"in the future if it is assigned the same uid<footnote><p>Some relevant "
"threads discussing these drawbacks include <url id=\"http://lists.debian.org/";
"debian-mentors/2004/10/msg00338.html\"> and <url id=\"http://lists.debian.";
"org/debian-devel/2004/05/msg01156.html\"></p></footnote>. Consequently, "
"removing system users on purge is not yet mandatory and depends on the "
"package needs. If unsure, this action could be handled by asking the "
"administrator for the prefered action when the package is installed (i.e. "
"through <prgn>debconf</prgn>)."
msgstr ""
"Si le paquet crée l'utilisateur système, il peut le retirer lors de la purge "
"en <em>postrm</em>. Cela a cependant quelques inconvénients. Par exemple les "
"fichiers créés par cet utilisateurs seront orphelins et pourraient être "
"repris par un nouvel utilisateur système plus tard si le même identifiant "
"utilisateur lui est attribué<footnote><p>Plusieurs discussions à propos de "
"ces inconvénients ont déjà eu lieu comme <url id=\"http://lists.debian.org/";
"debian-mentors/2004/10/msg00338.html\"> et <url id=\"http://lists.debian.org/";
"debian-devel/2004/05/msg01156.html\">.</p></footnote>. Par conséquent, "
"retirer les utilisateurs système lors de la purge n'est pas encore "
"obligatoire et dépend des besoins du paquet. En cas de doute, cette action "
"pourrait être adressée en demandant à l'administrateur ce qu'il préfère lors "
"du retrait du paquet (c'est-à-dire avec <prgn>debconf</prgn>)."

#. type: <p><example>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:251
msgid ""
"The following example code<footnote><p>This might eventually be introduced "
"as a <prgn>dh_adduser</prgn> in debhelper. See <url id=\"http://bugs.debian.";
"org/81697\" name=\"#81967\">, <url id=\"http://bugs.debian.org/291177\"; name="
"\"#291177\"> and <url id=\"http://bugs.debian.org/118787\"; name=\"#118787\">."
"</p></footnote> removes the user and groups created before only, and only "
"if, the uid is in the range of dynamic assigned system uids and the gid is "
"belongs to a system group:"
msgstr ""
"Le code exemple suivant <footnote><p>Cela pourrait éventuellement être "
"introduit en tant que <prgn>dh_adduser</prgn> dans debhelper. Consultez les "
"bogues <url id=\"http://bugs.debian.org/81697\"; name=\"nº 81967\">, <url id="
"\"http://bugs.debian.org/291177\"; name=\"nº 291177\"> et <url id=\"http://";
"bugs.debian.org/118787\" name=\"nº 118787\">.</p></footnote> retire "
"l'utilisateur et les groupes créés seulement avant, et seulement si, "
"l'identifiant utilisateur est dans l'intervalle des identifiants utilisateur "
"dynamiques attribués pour le système et que l'identifiant de groupe "
"appartient à un groupe système :"

#. type: <example></example>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:297
#, no-wrap
msgid ""
"case \"$1\" in\n"
" purge)\n"
"[...]\n"
"   # find first and last SYSTEM_UID numbers\n"
"   for LINE in `grep SYSTEM_UID /etc/adduser.conf | grep -v \"^#\"`; do\n"
"      case $LINE in\n"
"         FIRST_SYSTEM_UID*)\n"
"           FIST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='`\n"
"           ;;\n"
"         LAST_SYSTEM_UID*)\n"
"           LAST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='`\n"
"           ;;\n"
"         *)\n"
"           ;;\n"
"         esac\n"
"   done\n"
"   # Remove system account if necessary\n"
"   CREATEDUSER=\"<var>server_user</var>\"\n"
"   if [ -n \"$FIST_SYSTEM_UID\" ] && [ -n \"$LAST_SYSTEM_UID\" ]; then\n"
"    if USERID=`getent passwd $CREATEDUSER | cut -f 3 -d ':'`; then\n"
"      if [ -n \"$USERID\" ]; then\n"
"        if [ \"$FIST_SYSTEM_UID\" -le \"$USERID\" ] && \\\n"
"           [ \"$USERID\" -le \"$LAST_SYSTEM_UID\" ]; then\n"
"              echo -n \"Removing $CREATEDUSER system user..\"\n"
"              deluser --quiet $CREATEDUSER || true\n"
"              echo \"..done\"\n"
"        fi\n"
"      fi\n"
"    fi\n"
"  fi\n"
"  # Remove system group if necessary\n"
"  CREATEDGROUP=<var>server_group</var>\n"
"  FIRST_USER_GID=`grep ^USERS_GID /etc/adduser.conf | cut -f2 -d '='`\n"
"  if [ -n \"$FIST_USER_GID\" ] then\n"
"    if GROUPGID=`getent group $CREATEDGROUP | cut -f 3 -d ':'`; then\n"
"      if [ -n \"$GROUPGID\" ]; then\n"
"        if [ \"$FIST_USER_GID\" -gt \"$GROUPGID\" ]; then\n"
"          echo -n \"Removing $CREATEDGROUP group..\"\n"
"          delgroup --only-if-empty $CREATEDGROUP || true\n"
"          echo \"..done\"\n"
"        fi\n"
"      fi\n"
"    fi\n"
"  fi\n"
"[...]"
msgstr ""
"case \"$1\" in\n"
" purge)\n"
"[...]\n"
"   # trouver les premier et dernier numéros de SYSTEM_UID\n"
"   for LINE in `grep SYSTEM_UID /etc/adduser.conf | grep -v \"^#\"`; do\n"
"      case $LINE in\n"
"         FIRST_SYSTEM_UID*)\n"
"           FIST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='`\n"
"           ;;\n"
"         LAST_SYSTEM_UID*)\n"
"           LAST_SYSTEM_UID=`echo $LINE | cut -f2 -d '='`\n"
"           ;;\n"
"         *)\n"
"           ;;\n"
"         esac\n"
"   done\n"
"   # supprimer le compte système si nécessaire\n"
"   CREATEDUSER=\"<var>utilisateur_serveur</var>\"\n"
"   if [ -n \"$FIST_SYSTEM_UID\" ] && [ -n \"$LAST_SYSTEM_UID\" ]; then\n"
"    if USERID=`getent passwd $CREATEDUSER | cut -f 3 -d ':'`; then\n"
"      if [ -n \"$USERID\" ]; then\n"
"        if [ \"$FIST_SYSTEM_UID\" -le \"$USERID\" ] && \\\n"
"           [ \"$USERID\" -le \"$LAST_SYSTEM_UID\" ]; then\n"
"              echo -n \"Suppression de l'utilisateur système $CREATEDUSER\"\n"
"              deluser --quiet $CREATEDUSER || true\n"
"              echo \"fait\"\n"
"        fi\n"
"      fi\n"
"    fi\n"
"  fi\n"
"  # supprimer le groupe système si nécessaire\n"
"  CREATEDGROUP=<var>groupe_serveur</var>\n"
"  FIRST_USER_GID=`grep ^USERS_GID /etc/adduser.conf | cut -f2 -d '='`\n"
"  if [ -n \"$FIST_USER_GID\" ] then\n"
"    if GROUPGID=`getent group $CREATEDGROUP | cut -f 3 -d ':'`; then\n"
"      if [ -n \"$GROUPGID\" ]; then\n"
"        if [ \"$FIST_USER_GID\" -gt \"$GROUPGID\" ]; then\n"
"          echo -n \"Suppression du groupe $CREATEDGROUP\"\n"
"          delgroup --only-if-empty $CREATEDGROUP || true\n"
"          echo \"fait\"\n"
"        fi\n"
"      fi\n"
"    fi\n"
"  fi\n"
"[...]"

#. type: <p></p>
#: securing-debian-howto.en.sgml:57 en/developer.sgml:309
msgid ""
"Running programs with a user with limited privileges makes sure that any "
"security issue will not be able to damage the full system. It also follows "
"the principle of <em>least privilege</em>. Also consider you can limit "
"privileges in programs through other mechanisms besides running as non-"
"root<footnote><p>You can even provide a SELinux policy for it</p></"
"footnote>. For more information, read the <url id=\"http://www.dwheeler.com/";
"secure-programs/Secure-Programs-HOWTO/minimize-privileges.html\" name="
"\"Minimize Privileges\"> chapter of the <em>Secure Programming for Linux and "
"Unix HOWTO</em> book."
msgstr ""
"L'exécution de programmes avec un utilisateur ayant des droits restreints "
"assure qu'aucun problème de sécurité ne pourra endommager tout le système. "
"Cela suit aussi le principe du <em>minimum de droits</em>. Songez aussi à "
"limiter les droits dans les programmes avec d'autres mécanismes que "
"l'exécution en tant que non superutilisateur<footnote><p>Vous pouvez même "
"fournir une politique SELinux pour cela.</p></footnote>. Pour de plus amples "
"renseignements, consultez le chapitre <url id=\"http://www.dwheeler.com/";
"secure-programs/Secure-Programs-HOWTO/minimize-privileges.html\" name="
"\"Minimiser les droits\"> du livre <em>HOWTO de programmation sécurisée pour "
"Linux et UNIX</em>."

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: