<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
		<id>http://www.teteve.fr/wiki/index.php?feed=atom&amp;namespace=0&amp;title=Sp%C3%A9cial%3ANouvelles_pages</id>
		<title>Teteve wiki - Nouvelles pages [fr]</title>
		<link rel="self" type="application/atom+xml" href="http://www.teteve.fr/wiki/index.php?feed=atom&amp;namespace=0&amp;title=Sp%C3%A9cial%3ANouvelles_pages"/>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Sp%C3%A9cial:Nouvelles_pages"/>
		<updated>2026-04-28T11:02:48Z</updated>
		<subtitle>De Teteve wiki</subtitle>
		<generator>MediaWiki 1.28.0</generator>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Secu_LAMP</id>
		<title>Secu LAMP</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Secu_LAMP"/>
				<updated>2017-06-13T12:56:24Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== PHPMyAdmin ==&lt;br /&gt;
&lt;br /&gt;
Dans le fichier /etc/apache2/conf-available/phpmyadmin.conf&lt;br /&gt;
 Modifier :&lt;br /&gt;
 Alias /gestionsql /usr/share/phpmyadmin&lt;br /&gt;
 Commenter :&lt;br /&gt;
 # Authorize for setup&lt;br /&gt;
 #&amp;lt;Directory /usr/share/phpmyadmin/setup&amp;gt;&lt;br /&gt;
/usr/share/phpmyadmin/setup&lt;br /&gt;
 #    &amp;lt;IfModule mod_authz_core.c&amp;gt;&lt;br /&gt;
 #        &amp;lt;IfModule mod_authn_file.c&amp;gt;&lt;br /&gt;
 #            AuthType Basic&lt;br /&gt;
 #            AuthName &amp;quot;phpMyAdmin Setup&amp;quot;&lt;br /&gt;
 #            AuthUserFile /etc/phpmyadmin/htpasswd.setup&lt;br /&gt;
 #        &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 #        Require valid-user&lt;br /&gt;
 #    &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 #&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le répertoire : /usr/share/phpmyadmin/setup&lt;br /&gt;
&lt;br /&gt;
mettre en SSL : [https://www.guillaume-leduc.fr/4-securiser-son-serveur-phpmyadmin.html]&lt;br /&gt;
&lt;br /&gt;
== WordPress ==&lt;br /&gt;
&lt;br /&gt;
modifier dans wp-content.php les lignes :&lt;br /&gt;
&lt;br /&gt;
 define(&amp;#039;AUTH_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
 define(&amp;#039;SECURE_AUTH_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
 define(&amp;#039;LOGGED_IN_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
 define(&amp;#039;NONCE_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
Générer des clés (dans le &amp;quot;moins meilleur des cas&amp;quot;, aller sur le site [https://api.wordpress.org/secret-key/1.1 Générateur de clés] )&lt;br /&gt;
&lt;br /&gt;
Installer le pluggin TAC, qui permet de tester la qualité des thèmes installés, et surtout ne pas télécharger des thèmes n&amp;#039;importe où !!! :)&lt;br /&gt;
&lt;br /&gt;
lien externe :&amp;lt;br /&amp;gt;&lt;br /&gt;
http://digwp.com/2009/06/wordpress-configuration-tricks/&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=LAMP</id>
		<title>LAMP</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=LAMP"/>
				<updated>2017-06-13T12:56:00Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== PhpMyAdmin == &lt;br /&gt;
&lt;br /&gt;
L&amp;#039;installation de PhpMyAdmin se fait dans la foulée après celle de Mysql et Php :&lt;br /&gt;
&lt;br /&gt;
 # apt-get install phpmyadmin&lt;br /&gt;
&lt;br /&gt;
Editer le fichier de configuration d&amp;#039;Apache :&lt;br /&gt;
&lt;br /&gt;
 # vim /etc/apache2/apache2.conf&lt;br /&gt;
&lt;br /&gt;
Rajouter la ligne suivante :&lt;br /&gt;
&lt;br /&gt;
 include /etc/phpmyadmin/apache.conf&lt;br /&gt;
&lt;br /&gt;
Pour accéder ensuite à l&amp;#039;interface de PhpMyAdmin, il suffit de se rendre sur le site web (ou en localhost si le serveur web n&amp;#039;est pas opérationnel) :&lt;br /&gt;
&lt;br /&gt;
http://localhost/phpmyadmin&lt;br /&gt;
&lt;br /&gt;
note : PhpMyAdmin utilise les identifiants de l&amp;#039;admin de Mysql tels que définis à l&amp;#039;installation de Mysql&lt;br /&gt;
&lt;br /&gt;
== Blog avec WordPress==&lt;br /&gt;
&lt;br /&gt;
Grâce à l&amp;#039;interface web de phpmyadmin, créer une base de données.&amp;lt;br /&amp;gt;&lt;br /&gt;
Nous appelons cette base de données : db_blog&amp;lt;br /&amp;gt;&lt;br /&gt;
Créer un utilisateur dans Mysql pour accéder à la base de données du blog : user_blog&amp;lt;br /&amp;gt;&lt;br /&gt;
Mettre un mot de passe aléatoire complexe (nous n&amp;#039;aurons pas à nous en souvenir)&lt;br /&gt;
mettre les autorisations pour user_blog sur db_blog&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
installer Wordpress :&lt;br /&gt;
 cd /var/home/www/&lt;br /&gt;
 wget http://fr.wordpress.org/latest-fr_FR.zip&lt;br /&gt;
 unzip latest-fr_FR.zip ./&lt;br /&gt;
aller sur l&amp;#039;adresse du site, et suivre la configuration automatique, en renseignant les nom de la base/login/mot de passe/localhost&lt;br /&gt;
&lt;br /&gt;
=== Mise à jour ===&lt;br /&gt;
&lt;br /&gt;
Je suis obligé de faire des mises à jour manuelles de Wordpress. Je fais donc ici un petit récapitulatif des actions à effectuer :&lt;br /&gt;
(pb reglé : l&amp;#039;utilisateur d&amp;#039;Apache doit être le propriétaire des fichiers. Sinon, il faut renseigner un user/mdp FTP qui soit le propriétaire =&amp;gt; OK vu que tous les utilisateurs FTP sont virtuels...)&lt;br /&gt;
&lt;br /&gt;
 wget http://fr.wordpress.org/latest-fr_FR.zip&lt;br /&gt;
 unzip latest-fr_FR.zip&lt;br /&gt;
sauvegarder le site&lt;br /&gt;
 cp -r blog/* /home/temp/&lt;br /&gt;
 cp -r worpress/* blog/&lt;br /&gt;
Lancer le site, on arrive sur une page d&amp;#039;installation. S&amp;#039;aider de la sauvegarde /home/temp/wp-config.php pour renseigner les champs. &amp;lt;br /&amp;gt;&lt;br /&gt;
A la demande, fermer le site, et recopier les thèmes et uploads :&lt;br /&gt;
 cp -r /home/temp/wp-content/themes/* blog/wp-content/themes/&lt;br /&gt;
relancer le site et se connecter...&lt;br /&gt;
&lt;br /&gt;
== AWSTATS ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;En cours de mise en place et d&amp;#039;approfondissement...&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Installation :&lt;br /&gt;
&lt;br /&gt;
 # apt-get install awstats&lt;br /&gt;
&lt;br /&gt;
Définir l&amp;#039;alias utilisé par les différents domaines :&lt;br /&gt;
&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039;vim /etc/apache2/sites-available/stats.conf&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 Alias /awstatsclasses &amp;quot;/usr/share/awstats/classes/&amp;quot;&lt;br /&gt;
 Alias /awstatscss &amp;quot;/usr/share/awstats/css/&amp;quot;&lt;br /&gt;
 Alias /awstats-icon &amp;quot;/usr/share/awstats/icon/&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 ScriptAlias /stats /usr/lib/cgi-bin/awstats.pl&lt;br /&gt;
 &lt;br /&gt;
 # mêmes paramètres que dans awstats.*.conf&lt;br /&gt;
 &amp;lt;Directory /usr/lib/cgi-bin/&amp;gt;&lt;br /&gt;
   DirectoryIndex awstats.pl&lt;br /&gt;
   UseCanonicalName off&lt;br /&gt;
   AuthType Digest&lt;br /&gt;
   AuthName &amp;quot;Acces restreint aux stats&amp;quot;&lt;br /&gt;
   AuthDigestDomain /awstats http://www.teteve.fr/awstats&lt;br /&gt;
   AuthDigestProvider file&lt;br /&gt;
   AuthUserFile /etc/apache2/.awstats.pwd&lt;br /&gt;
   Require valid-user&lt;br /&gt;
   Options +ExecCGI&lt;br /&gt;
   AllowOverride None&lt;br /&gt;
   Order allow,deny&lt;br /&gt;
   Allow from all&lt;br /&gt;
 &amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039; a2ensite stats.conf&lt;br /&gt;
 Enabling site stats.&lt;br /&gt;
 To activate the new configuration, you need to run:&lt;br /&gt;
  service apache2 reload&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039;service apache2 reload&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Je n&amp;#039;explique pas le fonctionnement du &amp;quot;AuthDigestDomain&amp;quot; : ça fonctionne pour tous les sites : www.mondomaine.fr/awstats avec le même et unique fichier de conf...&amp;lt;br /&amp;gt;&lt;br /&gt;
recopier le fichier de conf par défaut :&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039;cp /etc/awstats/awstats.local.conf /etc/awstats/awstats.www.teteve.fr.conf&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Config ===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;EN COURS...&amp;lt;/span&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Extrait de mon fichier de config, à rapprocher de la [[Apache#Les_fichiers_de_conf|Conf d&amp;#039;Apache]] et des [[Apache#Les_vhosts|vhosts]]... &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 LogFile=&amp;quot;/var/log/apache2/log/teteve.log&amp;quot;&lt;br /&gt;
 LogType=W&lt;br /&gt;
 &lt;br /&gt;
 J&amp;#039;ai barré les variables ne correspondant pas à un serveur web. A reprendre dans le cas d&amp;#039;un autre type de serveur.&lt;br /&gt;
 # Enter here your log format (Must match your web server config. See setup&lt;br /&gt;
 # instructions in documentation to know how to configure your web server to&lt;br /&gt;
 # have the required log format).&lt;br /&gt;
 # Possible values: 1,2,3,4 or &amp;quot;your_own_personalized_log_format&amp;quot;&lt;br /&gt;
 # 1 - Apache or Lotus Notes/Domino native combined log format (NCSA combined/XLF/ELF log format)&lt;br /&gt;
 # 2 - IIS or ISA format (IIS W3C log format). See FAQ-COM115 For ISA.&lt;br /&gt;
 # 3 - Webstar native log format.&lt;br /&gt;
 # 4 - Apache or Squid native common log format (NCSA common/CLF log format)&lt;br /&gt;
 #     With LogFormat=4, some features (browsers, os, keywords...) can&amp;#039;t work.&lt;br /&gt;
 # &amp;quot;your_own_personalized_log_format&amp;quot; = If your log is ftp, mail or other format,&lt;br /&gt;
 #     you must use following keys to define the log format string (See FAQ for&lt;br /&gt;
 #     ftp, mail or exotic web log format examples):&lt;br /&gt;
 #   %host             Client hostname or IP address (or Sender host for mail log)&lt;br /&gt;
 &amp;lt;s&amp;gt;#   %host_r           Receiver hostname or IP address (for mail log)&amp;lt;/s&amp;gt;&lt;br /&gt;
 #   %lognamequot      Authenticated login/user with format: &amp;quot;john&amp;quot;&lt;br /&gt;
 #   %logname          Authenticated login/user with format: john&lt;br /&gt;
 #   %time1            Date and time with format: [dd/mon/yyyy:hh:mm:ss +0000] or [dd/mon/yyyy:hh:mm:ss]&lt;br /&gt;
 #   %time2            Date and time with format: yyyy-mm-dd hh:mm:ss&lt;br /&gt;
 #   %time3            Date and time with format: Mon dd hh:mm:ss or Mon dd hh:mm:ss yyyy&lt;br /&gt;
 #   %time4            Date and time with unix timestamp format: dddddddddd&lt;br /&gt;
 #   %methodurl        Method and URL with format: &amp;quot;GET /index.html HTTP/x.x&amp;quot;&lt;br /&gt;
 #   %methodurlnoprot  Method and URL with format: &amp;quot;GET /index.html&amp;quot;&lt;br /&gt;
 #   %method           Method with format: GET&lt;br /&gt;
 #   %url              URL only with format: /index.html&lt;br /&gt;
 #   %query            Query string (used by URLWithQuery option)&lt;br /&gt;
 #   %code             Return code status (with format for web log: 999)&lt;br /&gt;
 #   %bytesd           Size of document in bytes&lt;br /&gt;
 #   %refererquot      Referer page with format: &amp;quot;http://from.com/from.htm&amp;quot;&lt;br /&gt;
 #   %referer          Referer page with format: http://from.com/from.htm&lt;br /&gt;
 #   %uabracket        User agent with format: [Mozilla/4.0 (compatible, ...)]&lt;br /&gt;
 #   %uaquot           User agent with format: &amp;quot;Mozilla/4.0 (compatible, ...)&amp;quot;&lt;br /&gt;
 #   %ua               User agent with format: Mozilla/4.0_(compatible...)&lt;br /&gt;
 #   %gzipin           mod_gzip compression input bytes: In:XXX&lt;br /&gt;
 #   %gzipout          mod_gzip compression output bytes &amp;amp; ratio: Out:YYY:ZZpct.&lt;br /&gt;
 #   %gzipratio        mod_gzip compression ratio: ZZpct.&lt;br /&gt;
 #   %deflateratio     mod_deflate compression ratio with format: (ZZ)&lt;br /&gt;
 &amp;lt;s&amp;gt;#   %email            EMail sender (for mail log)&amp;lt;/s&amp;gt;&lt;br /&gt;
 &amp;lt;s&amp;gt;#   %email_r          EMail receiver (for mail log)&amp;lt;/s&amp;gt;&lt;br /&gt;
 #   %virtualname      Web sever virtual hostname. Use this tag when same log&lt;br /&gt;
 #                     contains data of several virtual web servers. AWStats&lt;br /&gt;
 #                     will discard records not in SiteDomain nor HostAliases&lt;br /&gt;
 #   %cluster          If log file is provided from several computers (merged by&lt;br /&gt;
 #                     logresolvemerge.pl), use this to define cluster id field.&lt;br /&gt;
 #   %extraX           Another field that you plan to use for building a&lt;br /&gt;
 #                     personalized report with ExtraSection feature (See later).&lt;br /&gt;
 #   If your log format has some fields not included in this list, use:&lt;br /&gt;
 #   %other            Means another not used field&lt;br /&gt;
 #   %otherquot        Means another not used double quoted field&lt;br /&gt;
 #&lt;br /&gt;
 # Examples for Apache combined logs (following two examples are equivalent):&lt;br /&gt;
 # LogFormat = 1&lt;br /&gt;
 # LogFormat = &amp;quot;%host %other %logname %time1 %methodurl %code %bytesd %refererquot %uaquot&amp;quot;&lt;br /&gt;
 #&lt;br /&gt;
 # Example for IIS:&lt;br /&gt;
 # LogFormat = 2&lt;br /&gt;
 #&lt;br /&gt;
 LogFormat = %virtualname %host %logname %time1 %methodurl %code %bytesd %refererquot %uaquot&lt;br /&gt;
 &lt;br /&gt;
 LogFile=&amp;quot;/var/log/apache2/vhosts/teteve.log&amp;quot;&lt;br /&gt;
 LogType=W&lt;br /&gt;
 LogFormat = %virtualname %host %logname %time1 %methodurl %code %bytesd %refererquot %uaquot&lt;br /&gt;
 LogSeparator=&amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai été obligé de rajouter %bytesd sinon awstats refuse d&amp;#039;analyser les logs.&lt;br /&gt;
De même, je n&amp;#039;ai pas réussi à faire passer un &amp;quot;virtualname:port&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Commande ===&lt;br /&gt;
&lt;br /&gt;
Pour lancer l&amp;#039;update manuellement (ou à rajouter dans un cron...)&lt;br /&gt;
 /usr/lib/cgi-bin/awstats.pl -config=www.teteve.fr&lt;br /&gt;
&lt;br /&gt;
== Web radio avec MPD et Icecast2 ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Cette section est un tutoriel visant à expliquer comment installer, configurer et utiliser une web radio.&lt;br /&gt;
Tout d&amp;#039;abord, il faut savoir qu&amp;#039;elle est composée de plusieurs logiciels ayant des rôles spécifiques :&lt;br /&gt;
&lt;br /&gt;
* Un lecteur audio, ==&amp;gt; MPD &lt;br /&gt;
* Un diffuseur de flux, ==&amp;gt; Icecast2&lt;br /&gt;
* Une interface. ==&amp;gt; Pitchfork&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Lecteur audio : MPD (Music Player Daemon) ===&lt;br /&gt;
==== Installation ====&lt;br /&gt;
&lt;br /&gt;
Sous Debian :&lt;br /&gt;
 # apt-get install mpd avahi-daemon&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
Pour configurer MPD, il faut éditer le fichier de configuration : &amp;#039;&amp;#039;&amp;#039;/etc/mpd.conf&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;music_directory&amp;#039;&amp;#039;&amp;#039; “chemin du Répertoire où se trouvent les fichiers audio”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;playlist_directory&amp;#039;&amp;#039;&amp;#039; “chemin du Répertoire où se trouvent les playlists”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;db_file&amp;#039;&amp;#039;&amp;#039; “chemin du Répertoire où se la Base de données MPD&amp;quot;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;log_file&amp;#039;&amp;#039;&amp;#039; “chemin du fichier log”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;error_file&amp;#039;&amp;#039;&amp;#039; “chemin du fichier log d&amp;#039;erreur”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;pid_file&amp;#039;&amp;#039;&amp;#039; “chemin du fichier pid”&lt;br /&gt;
&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;password          &amp;quot;XXXX@read,add,control,admin&amp;quot;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
  &amp;#039;&amp;#039;audio_output {&amp;#039;&amp;#039;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;type&amp;#039;&amp;#039;&amp;#039;        “shout”                                         # Type de flux&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;name&amp;#039;&amp;#039;&amp;#039;        “Teteve Radio”                                  # Nom de la Web radio&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;host&amp;#039;&amp;#039;&amp;#039;        “localhost”                                     # Nom d&amp;#039;hôte ou ip&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;port&amp;#039;&amp;#039;&amp;#039;        “8000″                                          # Port&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;mount&amp;#039;&amp;#039;&amp;#039;       “/mpd.ogg”                                      # Point de montage pour Icecast&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;password&amp;#039;&amp;#039;&amp;#039;    “mot de passe qu&amp;#039;on réutilisera dans Icecast”   # Password&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;quality&amp;#039;&amp;#039;&amp;#039;     “5″                                             # Qualité du flux&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;user&amp;#039;&amp;#039;&amp;#039;        “mpd”                                           # Utilisateur système&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;description&amp;#039;&amp;#039;&amp;#039; “Radio de teteve.fr”                            # Commentaires, description&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;genre&amp;#039;&amp;#039;&amp;#039;       “éclectique”                                    # Genre de musique&lt;br /&gt;
 &amp;#039;&amp;#039;}&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;audio_output { &amp;#039;&amp;#039;                         # Sortie audio bidon pour éviter  &lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;type&amp;#039;&amp;#039;&amp;#039; &amp;quot;ao&amp;quot;                              # le message d&amp;#039;erreur : problem opening audio device&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;driver&amp;#039;&amp;#039;&amp;#039; &amp;quot;null&amp;quot;                                                    &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039; name&amp;#039;&amp;#039;&amp;#039; &amp;quot;Dummy output&amp;quot;        &lt;br /&gt;
  &amp;#039;&amp;#039;}&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;log_level&amp;#039;&amp;#039;&amp;#039;          &amp;quot;verbose&amp;quot;                                 # log explicites&lt;br /&gt;
&lt;br /&gt;
=== Diffuseur de flux : Icecast  ===&lt;br /&gt;
==== Installation ====&lt;br /&gt;
&lt;br /&gt;
Sous Debian :&lt;br /&gt;
 # apt-get install icecast2 php5 php-pear&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
Pour configurer Icecast2, il faut éditer le fichier &amp;#039;&amp;#039;&amp;#039;/etc/icecast2/icecast.xml.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;icecast&amp;gt;&lt;br /&gt;
    &amp;lt;limits&amp;gt;&lt;br /&gt;
        &amp;lt;clients&amp;gt;&amp;#039;&amp;#039;&amp;#039;10&amp;#039;&amp;#039;&amp;#039;&amp;lt;/clients&amp;gt; &amp;lt;-- ici, le nombre d&amp;#039;auditeurs simultanés autorisés&lt;br /&gt;
&lt;br /&gt;
... plus bas, ligne 23, reportez le mot de passe de /etc/mpd.conf:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;authentication&amp;gt;&lt;br /&gt;
         &amp;lt;!-- Sources log in with username &amp;#039;source&amp;#039; --&amp;gt;&lt;br /&gt;
         &amp;lt;source-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;XXXXXXX&amp;#039;&amp;#039;&amp;#039;&amp;lt;/source-password&amp;gt;&lt;br /&gt;
Puis modifiez les paramètres par défaut d&amp;#039;authentification:&lt;br /&gt;
         &amp;lt;!-- Relays log in username &amp;#039;relay&amp;#039; --&amp;gt;&lt;br /&gt;
        &amp;lt;relay-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;YYYYYYYYYY&amp;#039;&amp;#039;&amp;#039;&amp;lt;/relay-password&amp;gt;&lt;br /&gt;
L&amp;#039;Admin se connecte avec le nom d&amp;#039;utilisateur ci-dessous:&lt;br /&gt;
        &amp;lt;admin-user&amp;gt;&amp;#039;&amp;#039;&amp;#039;admin&amp;#039;&amp;#039;&amp;#039;&amp;lt;/admin-user&amp;gt;&lt;br /&gt;
        &amp;lt;admin-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;ZZZZZZZZ&amp;#039;&amp;#039;&amp;#039;&amp;lt;/admin-password&amp;gt;&lt;br /&gt;
 &amp;lt;/authentication&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir lister les dossiers :&lt;br /&gt;
 &amp;lt;directory&amp;gt;                                                   #listage des dossiers&lt;br /&gt;
 &amp;lt;yp-url-timeout&amp;gt;15&amp;lt;/yp-url-timeout&amp;gt;&lt;br /&gt;
 &amp;lt;yp-url&amp;gt;http://dir.xiph.org/cgi-bin/yp-cgi&amp;lt;/yp-url&amp;gt;&lt;br /&gt;
 &amp;lt;/directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ligne 49, votre hôte (doit correspondre à ce que vous avez rentré au paramètre &amp;quot;host&amp;quot; du fichier de configuration de  MPD)&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;hostname&amp;gt;&amp;#039;&amp;#039;&amp;#039;localhost&amp;#039;&amp;#039;&amp;#039;&amp;lt;/hostname&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le port utilisé par Icecast, vous pouvez laisser 8000&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
    &amp;#039;&amp;#039;&amp;#039;&amp;lt;port&amp;gt; &amp;#039;&amp;#039;&amp;#039;8000&amp;#039;&amp;#039;&amp;#039; &amp;lt;/port&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
    &amp;#039;&amp;#039;&amp;#039;&amp;lt;port&amp;gt; &amp;#039;&amp;#039;&amp;#039;8001&amp;#039;&amp;#039;&amp;#039; &amp;lt;/port&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Le reste de la configuration d&amp;#039;Icecast :&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-server&amp;gt; &amp;#039;&amp;#039;&amp;#039;127.0.0.1&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-server&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-server-port&amp;gt; &amp;#039;&amp;#039;&amp;#039;8000&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-server-port&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-update-interval&amp;gt; &amp;#039;&amp;#039;&amp;#039;120&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-update-interval&amp;gt;&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-password&amp;gt; &amp;#039;&amp;#039;&amp;#039;XXXXX&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;fileserve&amp;gt; &amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039; &amp;lt;/fileserve&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;shoutcast-mount&amp;gt; &amp;#039;&amp;#039;&amp;#039;/mpd.ogg&amp;#039;&amp;#039;&amp;#039; &amp;lt;/shoutcast-mount&amp;gt;&amp;#039;&amp;#039;&amp;#039;       # Point de montage du flux&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;paths&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;basedir&amp;gt; &amp;#039;&amp;#039;&amp;#039;/usr/share/icecast2&amp;#039;&amp;#039;&amp;#039; &amp;lt;/basedir&amp;gt;&amp;#039;&amp;#039;&amp;#039;           # utilisé que lorsque chroot est activé&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;logdir&amp;gt; &amp;#039;&amp;#039;&amp;#039;/var/log/icecast2&amp;#039;&amp;#039;&amp;#039; &amp;lt;/logdir&amp;gt;&amp;#039;&amp;#039;&amp;#039;               #dossier des logs&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;webroot&amp;gt; &amp;#039;&amp;#039;&amp;#039;/usr/share/icecast2/web&amp;#039;&amp;#039;&amp;#039; &amp;lt;/webroot&amp;gt;&amp;#039;&amp;#039;&amp;#039;       #dossier interface&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;adminroot&amp;gt; &amp;#039;&amp;#039;&amp;#039;/usr/share/icecast2/admin&amp;#039;&amp;#039;&amp;#039; &amp;lt;/adminroot&amp;gt;&amp;#039;&amp;#039;&amp;#039; #dossier interface administration&lt;br /&gt;
     &amp;lt;alias source=&amp;quot;/&amp;quot; dest=&amp;quot;/status.xsl&amp;quot;/&amp;gt;           #redirige vers la page de status&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/paths&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;&amp;lt;security&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
      &amp;#039;&amp;#039;&amp;#039;&amp;lt;chroot&amp;gt;&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;&amp;lt;/chroot&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;&amp;lt;/security&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039; &amp;lt;/icecast&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Pour que Icecast2 tourne en tâche de fond, éditer également: &amp;#039;&amp;#039;&amp;#039;/etc/default/icecast2&amp;#039;&amp;#039;&amp;#039; et modifier la fin du fichier pour obtenir: &lt;br /&gt;
&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ENABLE=true&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Relance Icecast2 et MPD pour tenir compte des modifications:&lt;br /&gt;
&lt;br /&gt;
 #/etc/init.d/mpd restart&lt;br /&gt;
&lt;br /&gt;
 #/etc/init.d/icecast2 stop&lt;br /&gt;
&lt;br /&gt;
 #/etc/init.d/icecast2 start&lt;br /&gt;
&lt;br /&gt;
Et créer la base de données de MPD:&lt;br /&gt;
&lt;br /&gt;
 #mpd --create-db&lt;br /&gt;
&lt;br /&gt;
==== Utilisation ====&lt;br /&gt;
Vous accéderez a l&amp;#039;interface d&amp;#039;Icecast à une adresse du type: &amp;#039;&amp;#039;&amp;#039;http://teteve.fr:8000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Interface Web Cliente : Pitchfork ===&lt;br /&gt;
==== Installation ====&lt;br /&gt;
&lt;br /&gt;
Pour commencer, télécharger Pitchfork à l&amp;#039;adresse suivante :&lt;br /&gt;
[http://pitchfork.remiss.org/files/pitchfork-0.5.5.tar.bz2]&lt;br /&gt;
&lt;br /&gt;
Ensuite :&lt;br /&gt;
* Décompresser l&amp;#039;archive à l&amp;#039;endroit de votre choix.&lt;br /&gt;
* Mettre l&amp;#039;utilisateur Apache (www-data) propiétaire du dossier &amp;#039;&amp;#039;&amp;#039;&amp;quot;config&amp;quot;&amp;#039;&amp;#039;&amp;#039; de Pitchfork&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
&lt;br /&gt;
Copier le fichier Pitchfork.conf dans le dossier de configuration du serveur web &amp;#039;&amp;#039;&amp;#039;/etc/httpd/conf.d/&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Dans le Pitchfork.conf :&lt;br /&gt;
&lt;br /&gt;
 Alias /teteveradio /home/teteve/www/teteveradio        # radio accessible via teteve.fr/teteveradio&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;Directory /home/teteve/www/teteveradio&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;DirectoryIndex&amp;#039;&amp;#039;&amp;#039; index.php&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;Options&amp;#039;&amp;#039;&amp;#039; -Indexes&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;AllowOverride&amp;#039;&amp;#039;&amp;#039; all&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;AddType application/x-httpd-php&amp;#039;&amp;#039;&amp;#039; .php&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag magic_quotes_gpc&amp;#039;&amp;#039;&amp;#039; off&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag magic_quotes_runtime&amp;#039;&amp;#039;&amp;#039; off&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag display_errors&amp;#039;&amp;#039;&amp;#039; on&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag log_errors&amp;#039;&amp;#039;&amp;#039; on&lt;br /&gt;
        &amp;#039;&amp;#039;# switch comment marks on the two items to disable access logging &lt;br /&gt;
        # completely for pitchfork. See INSTALL&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;SetEnvIf&amp;#039;&amp;#039;&amp;#039; Request_URI &amp;quot;player/command\.php&amp;quot; pitchforknolog &lt;br /&gt;
        &amp;#039;&amp;#039;#SetEnv pitchforknolog&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/Directory&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Lancer ensuite la page de config de Pitchfork : [http://teteve.fr/teteveradio/player/config.php]&lt;br /&gt;
&lt;br /&gt;
Réglages de connexion :&lt;br /&gt;
 Hôte : &amp;#039;&amp;#039;&amp;#039;localhost&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 Port : &amp;#039;&amp;#039;&amp;#039;6600&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 Mot de Passe : &amp;#039;&amp;#039;&amp;#039;mot de passe MPD&lt;br /&gt;
&lt;br /&gt;
Intégration du shoutcast :&lt;br /&gt;
http://&amp;#039;&amp;#039;&amp;#039;&amp;lt;nom de domaine&amp;gt;&amp;#039;&amp;#039;&amp;#039;:&amp;#039;&amp;#039;&amp;#039;&amp;lt;port icecast&amp;gt;&amp;#039;&amp;#039;&amp;#039;/&amp;lt;&amp;#039;&amp;#039;&amp;#039;point de montage du shout&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Ce qui donne pour notre exemple :&lt;br /&gt;
http://teteve.fr:8000/mpd.ogg&lt;br /&gt;
&lt;br /&gt;
Vous pouvez également entrer cette URL dans un lecteur audio comme VLC pour écouter votre flux :&lt;br /&gt;
* Fichier/Ouvrir un flux réseau&lt;br /&gt;
* Sélectionner HTTP/HTTPS/FTP/MMS&lt;br /&gt;
* Entrer l&amp;#039;URL dans le champ à droite&lt;br /&gt;
&lt;br /&gt;
==== Utilisation ====&lt;br /&gt;
Pour utiliser Pitchfork, il suffit ensuite de lancer l&amp;#039;URL configurée dans Pitchfork.conf :&lt;br /&gt;
[http://teteve.fr/teteveradio/]&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Serveur dédié]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Procédures]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=PHPMyAdmin</id>
		<title>PHPMyAdmin</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=PHPMyAdmin"/>
				<updated>2017-06-13T08:24:36Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : Page créée avec «  == PhpMyAdmin ==   L&amp;#039;installation de PhpMyAdmin se fait dans la foulée après celle de Mysql et Php :   # apt-get install phpmyadmin  Editer le fichier de configuration... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== PhpMyAdmin == &lt;br /&gt;
&lt;br /&gt;
L&amp;#039;installation de PhpMyAdmin se fait dans la foulée après celle de Mysql et Php :&lt;br /&gt;
&lt;br /&gt;
 # apt-get install phpmyadmin&lt;br /&gt;
&lt;br /&gt;
Editer le fichier de configuration d&amp;#039;Apache :&lt;br /&gt;
&lt;br /&gt;
 # vim /etc/apache2/apache2.conf&lt;br /&gt;
&lt;br /&gt;
Rajouter la ligne suivante :&lt;br /&gt;
&lt;br /&gt;
 include /etc/phpmyadmin/apache.conf&lt;br /&gt;
&lt;br /&gt;
Pour accéder ensuite à l&amp;#039;interface de PhpMyAdmin, il suffit de se rendre sur le site web (ou en localhost si le serveur web n&amp;#039;est pas opérationnel) :&lt;br /&gt;
&lt;br /&gt;
http://localhost/phpmyadmin&lt;br /&gt;
&lt;br /&gt;
note : PhpMyAdmin utilise les identifiants de l&amp;#039;admin de Mysql tels que définis à l&amp;#039;installation de Mysql&lt;br /&gt;
&lt;br /&gt;
Sécurisation :&lt;br /&gt;
&lt;br /&gt;
Dans le fichier /etc/apache2/conf-available/phpmyadmin.conf&lt;br /&gt;
 Modifier :&lt;br /&gt;
 Alias /gestionsql /usr/share/phpmyadmin&lt;br /&gt;
 Commenter :&lt;br /&gt;
 # Authorize for setup&lt;br /&gt;
 #&amp;lt;Directory /usr/share/phpmyadmin/setup&amp;gt;&lt;br /&gt;
/usr/share/phpmyadmin/setup&lt;br /&gt;
 #    &amp;lt;IfModule mod_authz_core.c&amp;gt;&lt;br /&gt;
 #        &amp;lt;IfModule mod_authn_file.c&amp;gt;&lt;br /&gt;
 #            AuthType Basic&lt;br /&gt;
 #            AuthName &amp;quot;phpMyAdmin Setup&amp;quot;&lt;br /&gt;
 #            AuthUserFile /etc/phpmyadmin/htpasswd.setup&lt;br /&gt;
 #        &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 #        Require valid-user&lt;br /&gt;
 #    &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 #&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le répertoire : /usr/share/phpmyadmin/setup&lt;br /&gt;
&lt;br /&gt;
mettre en SSL : https://www.guillaume-leduc.fr/4-securiser-son-serveur-phpmyadmin.html&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Tips_securite</id>
		<title>Tips securite</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Tips_securite"/>
				<updated>2017-06-09T12:20:11Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : Page créée avec « https://www.guillaume-leduc.fr/pki-installez-votre-autorite-de-certification-sur-votre-debian-2.html »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;https://www.guillaume-leduc.fr/pki-installez-votre-autorite-de-certification-sur-votre-debian-2.html&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=VSFTPD</id>
		<title>VSFTPD</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=VSFTPD"/>
				<updated>2017-03-24T09:47:03Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Prérequis==&lt;br /&gt;
&lt;br /&gt;
On va installer un serveur FTP, grâce à vsftpd (Very Secure FTP Daemon).&amp;lt;br /&amp;gt;&lt;br /&gt;
Les utilisateurs de ce FTP sont les webmasters des différents sites hébergés sur le serveur.&amp;lt;br /&amp;gt;&lt;br /&gt;
Les utilisateurs n&amp;#039;auront pas de compte système sur la machine. Il faudra donc créer une base d&amp;#039;utilisateurs dits &amp;quot;virtuels&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Chaque utilisateur sera également &amp;quot;chrooté&amp;quot; dans son répertoire. Chaque utilisateur pourra lire et écrire dans son répertoire.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
&lt;br /&gt;
Installation du paquet :&lt;br /&gt;
 # apt-get install vsftpd&lt;br /&gt;
&lt;br /&gt;
Si le répertoire /etc/vsftpd n&amp;#039;existe pas, le créer :&lt;br /&gt;
 # mkdir /etc/vsftpd&lt;br /&gt;
&lt;br /&gt;
Renommer les fichiers de configuration d&amp;#039;origine pour sauvegarde :&lt;br /&gt;
 # cp /etc/vsftpd.conf /etc/vsftpd.conf.default.bak&lt;br /&gt;
 # cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.default.bak&lt;br /&gt;
&lt;br /&gt;
Installation du paquet pour gérer la base de données login/mot de passe : libdb4-util&lt;br /&gt;
 # apt-get install libdb8.3&lt;br /&gt;
 # apt-get install db5.3-util db-util&lt;br /&gt;
&lt;br /&gt;
Remplir le fichiers des utilisateurs :&lt;br /&gt;
 # vim /etc/vsftpd/login.txt&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Important&amp;#039;&amp;#039;&amp;#039; : respecter la syntaxe !&amp;lt;br /&amp;gt;&lt;br /&gt;
(retour à la ligne entre les deux et sans commentaires)&lt;br /&gt;
 utilisateur1&lt;br /&gt;
 mot de passe1&lt;br /&gt;
 utilisateur2&lt;br /&gt;
 mot de passe2&lt;br /&gt;
&lt;br /&gt;
Créer la base de données proprement dite :&lt;br /&gt;
 # db_load -T -t hash -f login.txt /etc/vsftpd/login.db&lt;br /&gt;
 # chmod 600 /etc/vsftpd/login.db&lt;br /&gt;
&lt;br /&gt;
 # vim /etc/pam.d/vsftpd.pam&lt;br /&gt;
 	auth required /lib/security/pam_userdb.so db=/etc/vsftpd/login&lt;br /&gt;
 	account required /lib/security/pam_userdb.so db=/etc/vsftpd/login&lt;br /&gt;
&lt;br /&gt;
 # cp /etc/pam.d/vsftpd.pam /etc/pam.d/vsftpd&lt;br /&gt;
&lt;br /&gt;
Le serveur FTP, géré par vsftpd, n&amp;#039;utilise pas les comptes système pour s&amp;#039;authentifier&lt;br /&gt;
(d&amp;#039;où l&amp;#039;utilité de la base de données des utilisateurs =&amp;gt; utilisateurs virtuels)&amp;lt;br /&amp;gt;&lt;br /&gt;
Il faut donc créer l&amp;#039;utilisateur système utilisé par le démon :&lt;br /&gt;
 # mkdir -p /home/ftp/virtual&lt;br /&gt;
 # groupadd ftp&lt;br /&gt;
 # useradd -g ftp -d /home/ftp/virtual/ virtual&lt;br /&gt;
Vérifier dans les fichiers /etc/passwd et /etc/group&lt;br /&gt;
 # chown root.ftp ~virtual/&lt;br /&gt;
 # chmod 2750 ~virtual/&lt;br /&gt;
&lt;br /&gt;
==Configuration VSFTPD==&lt;br /&gt;
&lt;br /&gt;
 # vim /etc/vsftpd.conf&lt;br /&gt;
&lt;br /&gt;
 &amp;#039;&amp;#039;# Ceci configure vsFTPd en mode &amp;quot;standalone&amp;quot;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;listen=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# On désactive les connexions anonymes et on active les non-anonymes(c&amp;#039;est le cas des utilisateurs virtuels):&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;anonymous_enable=NO&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;local_enable=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# On interdit par défaut toute possibilité d&amp;#039;écrire ou lire.&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;# Ces droits seront gérés par utilisateurs, dans les fichiers de conf de chaque user&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;anon_mkdir_write_enable=NO&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;anon_other_write_enable=NO&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;anon_upload_enable=NO&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;write_enable=NO&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# guest_enable pour activer l&amp;#039;utilisateur virtuel&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;guest_enable=YES&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;guest_username=virtual&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# On veut que les utilisateurs virtuels restent dans ~virtual/&amp;#039;&amp;#039; &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;chroot_local_user=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# On définit le nombre maximum de sessions à 4 (les nouveaux clients recevront un message du genre: &amp;quot;erreur : serveur occupé&amp;quot;)&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;max_clients=10&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# On définit le nombre maximum de sessions par IP à 4&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;# max_per_ip=4&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# Configuration emplacement fichiers utilisateurs, jail chroot, et service pam&amp;#039;&amp;#039; &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;secure_chroot_dir=/var/run/vsftpd&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;pam_service_name=vsftpd&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;user_config_dir=/etc/vsftpd/vsftpd_user_conf&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;#################### Supplément Teteve #############################&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ftpd_banner=Bienvenue sur le serveur FTP de teteve.fr&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# On active les logs pour les uploads/downloads&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;xferlog_enable=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;xferlog_file=/var/log/vsftpd-dl.log&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# Connexion et ports pour le mode passif&amp;#039;&amp;#039; &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;connect_from_port_20=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;pasv_address=87.98.141.85&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;pasv_min_port=20000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;pasv_max_port=20100&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;# temps d&amp;#039;inactivité&amp;#039;&amp;#039; &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;idle_session_timeout=600&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;data_connection_timeout=120&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;################# Droits sur les fichiers uploadés #################&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;chown_uploads=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;chown_username=virtual&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;chown_upload_mode=0750&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 #### anon_umask=007&lt;br /&gt;
 # The value that the umask for file creation is set to for anonymous users.&lt;br /&gt;
 NOTE! If you want to specify octal values, remember the &amp;quot;0&amp;quot; prefix otherwise the value will be treated as a base 10 integer! &lt;br /&gt;
 # Default: 077&lt;br /&gt;
 &lt;br /&gt;
 #### chown_upload_mode=0760 &lt;br /&gt;
 # The file mode to force for chown()ed anonymous uploads. (Added in v2.0.6). &lt;br /&gt;
 # Default: 0600&lt;br /&gt;
 &lt;br /&gt;
 #### file_open_mode=0117&lt;br /&gt;
 # The permissions with which uploaded files are created. Umasks are applied on top of this value.&lt;br /&gt;
 You may wish to change to 0777 if you want uploaded files to be executable. &lt;br /&gt;
 # Default: 0666 &lt;br /&gt;
 &lt;br /&gt;
 #### local_umask=022&lt;br /&gt;
 # The value that the umask for file creation is set to for local users.&lt;br /&gt;
 NOTE! If you want to specify octal values, remember the &amp;quot;0&amp;quot; prefix otherwise the value will be treated as a base 10 integer! &lt;br /&gt;
 # Default: 077&lt;br /&gt;
&lt;br /&gt;
==Droits utilisateurs==&lt;br /&gt;
 # mkdir /etc/vsftpd/vsftpd_user_conf/&lt;br /&gt;
Donner les droits en lecture (utilisateur1) et lecture/écriture (utilisateur2) :&lt;br /&gt;
 # echo &amp;quot;anon_world_readable_only=NO&amp;quot; &amp;gt; /etc/vsftpd/vsftpd_user_conf/utilisateur1&lt;br /&gt;
 &lt;br /&gt;
 # echo &amp;quot;anon_world_readable_only=NO&amp;quot; &amp;gt; /etc/vsftpd/vsftpd_user_conf/utilisateur2&lt;br /&gt;
 # echo &amp;quot;write_enable=YES&amp;quot; &amp;gt;&amp;gt; /etc/vsftpd/vsftpd_user_conf/utilisateur2&lt;br /&gt;
 # echo &amp;quot;anon_upload_enable=YES&amp;quot; &amp;gt;&amp;gt; /etc/vsftpd/vsftpd_user_conf/utilisateur2&lt;br /&gt;
&lt;br /&gt;
si besoin, rajouter deux lignes sur les ports ftp et modifier le firewall en conséquence&lt;br /&gt;
&lt;br /&gt;
=== Pour séparer le répertoire d&amp;#039;upload ===&lt;br /&gt;
Créer le répertoire utiliser pour les uploads :&lt;br /&gt;
 # mkdir ~virtual/upload/&lt;br /&gt;
 # chmod 770 ~virtual/upload/&lt;br /&gt;
&lt;br /&gt;
Commandes pour séparer les répertoires d&amp;#039;upload de chaque utilisateur&lt;br /&gt;
 # cd ~virtual/&lt;br /&gt;
 # mkdir -p {utilisateur1/,utilisateur2/}/upload&lt;br /&gt;
 # chmod 2750 {utilisateur1/,utilisateur2/}&lt;br /&gt;
 # chmod 770 {utilisateur1/,utilisateur2/}/upload/&lt;br /&gt;
 # echo &amp;quot;local_root=utilisateur1&amp;quot; &amp;gt;&amp;gt; /etc/vsftpd/vsftpd_user_conf/utilisateur1&lt;br /&gt;
 # echo &amp;quot;local_root=utilisateur2&amp;quot; &amp;gt;&amp;gt; /etc/vsftpd/vsftpd_user_conf/utilisateur2&lt;br /&gt;
&lt;br /&gt;
On relance le serveur FTP pour prendre en compte tous ces paramètres :&lt;br /&gt;
 # /etc/init.d/vsftpd stop&lt;br /&gt;
 # /etc/init.d/vsftpd start&lt;br /&gt;
&lt;br /&gt;
== SSL ==&lt;br /&gt;
===Préparation pour le SSL===&lt;br /&gt;
Installer le paquet openssl&lt;br /&gt;
 # apt-get install openssl&lt;br /&gt;
&lt;br /&gt;
Créer le fichier certificat&lt;br /&gt;
 # openssl req -x509 -nodes -days 730 -newkey rsa:1024 -keyout vsftpd.pem -out vsftpd.pem&lt;br /&gt;
Plusieurs questions seront posées afin de créer le certificat. La plus critique est celle-ci :&lt;br /&gt;
 Common Name (eg, YOUR name) []: &amp;lt;renseigner le nom ou l&amp;#039;ip que les clients utiliseront&amp;gt;&lt;br /&gt;
Une fois ce fichier certificat généré, il faut le copier dans le dossier /etc/ssl/certs.&lt;br /&gt;
 # cp vsftpd.pem /etc/ssl/certs&lt;br /&gt;
Il faut ensuite le sécuriser :&lt;br /&gt;
 sudo chown root:root /etc/ssl/certs/vsftpd.pem&lt;br /&gt;
 sudo chmod 600 /etc/ssl/certs/vsftpd.pem&lt;br /&gt;
Note : vsftp s&amp;#039;exécute avec les droits de l&amp;#039;utilisateur nobody mais il se lance en tant que root et donc lit le certificat en tant que root.&lt;br /&gt;
&lt;br /&gt;
 &amp;#039;&amp;#039;################## SSL : connexions cryptées ######################&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ssl_enable=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;allow_anon_ssl=NO&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;force_local_data_ssl=NO&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;force_local_logins_ssl=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ssl_tlsv1=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ssl_sslv2=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ssl_sslv3=YES&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;rsa_cert_file=/etc/ssl/certs/vsftpd.pem&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;rsa_private_key_file=/etc/ssl/certs/vsftpd.pem&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Proxmox]]&lt;br /&gt;
[[Catégorie:Serveur dédié]]&lt;br /&gt;
[[Catégorie:Procédures]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=QOS</id>
		<title>QOS</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=QOS"/>
				<updated>2017-03-24T09:46:42Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : Page créée avec « == Commandes utiles ==   &amp;#039;&amp;#039;&amp;#039;nmap&amp;#039;&amp;#039;&amp;#039; : port scanner&amp;lt;br /&amp;gt; Options utiles :&amp;lt;br /&amp;gt; - &amp;lt;br /&amp;gt; - &amp;lt;br /&amp;gt; - &amp;lt;br /&amp;gt;  &amp;#039;&amp;#039;&amp;#039;tcpdump&amp;#039;&amp;#039;&amp;#039; : sniffeur de trames réseau&amp;lt;br /&amp;gt; Permet de capt... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Commandes utiles ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;nmap&amp;#039;&amp;#039;&amp;#039; : port scanner&amp;lt;br /&amp;gt;&lt;br /&gt;
Options utiles :&amp;lt;br /&amp;gt;&lt;br /&gt;
- &amp;lt;br /&amp;gt;&lt;br /&gt;
- &amp;lt;br /&amp;gt;&lt;br /&gt;
- &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;tcpdump&amp;#039;&amp;#039;&amp;#039; : sniffeur de trames réseau&amp;lt;br /&amp;gt;&lt;br /&gt;
Permet de capturer tous les paquets passant par une carte réseau.&amp;lt;br /&amp;gt;&lt;br /&gt;
Oblige à passer la carte en mode &amp;quot;promiscuous&amp;quot;, donc c&amp;#039;est noté dans syslog...&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ethereal&amp;#039;&amp;#039;&amp;#039; : idem que tcpdump, mais en mode graphique.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;netstat&amp;#039;&amp;#039;&amp;#039; : indique l&amp;#039;état des connexions en cours&amp;lt;br /&amp;gt;&lt;br /&gt;
Options :&amp;lt;br /&amp;gt;&lt;br /&gt;
-t : Indique les connexions TCP.&amp;lt;br /&amp;gt;&lt;br /&gt;
-u : Indique les connexions UDP.&amp;lt;br /&amp;gt;&lt;br /&gt;
-a : Affiche toutes (&amp;quot;all&amp;quot;) les connexions, y comprit c&amp;lt;br /&amp;gt;elle des serveurs en attente de connexion.&lt;br /&gt;
-e : Affiche le nom de l’utilisateur qui a lancé le programme qui utilise ce port.&amp;lt;br /&amp;gt;&lt;br /&gt;
-p : Seul le root peut utiliser cette option. Elle indique quel est le PID (Process Identifiant) et le nom du programme utilisant le port.&amp;lt;br /&amp;gt;&lt;br /&gt;
Moyen mnémotechnique : netstat -taupe&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;LSOF&amp;#039;&amp;#039;&amp;#039; : &amp;quot;LiSt Open Files&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Options :&amp;lt;br /&amp;gt;&lt;br /&gt;
-i : Restreint la recherche aux seuls &amp;quot;fichiers&amp;quot; de connexion IP.&amp;lt;br /&amp;gt;&lt;br /&gt;
-P : Converti le numéro de port (exemple : 80) en son nom équivalent ( exemple : http).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;fuser&amp;#039;&amp;#039;&amp;#039; : se base sur les fichiers ouverts pour déterminer les connexions IP ouvertes.&amp;lt;br /&amp;gt;&lt;br /&gt;
Options : &amp;lt;br /&amp;gt;&lt;br /&gt;
-v [type de ports] : Affiche les ports ouverts du type [type de ports]. Exemple : &amp;quot;80/tcp&amp;quot; pour les port TCP 80.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ping&amp;#039;&amp;#039;&amp;#039; : sans commentaires&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;traceroute&amp;#039;&amp;#039;&amp;#039; : idem&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Proxmox]]&lt;br /&gt;
[[Catégorie:Serveur dédié]]&lt;br /&gt;
[[Catégorie:Réseau]]&lt;br /&gt;
[[Catégorie:Commandes]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Logs</id>
		<title>Logs</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Logs"/>
				<updated>2017-03-24T09:46:17Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : Page créée avec « Tips :  Suppression des messages d&amp;#039;authentification de cron dans /var/log/auth.log :  Nov 19 20:10:01 srv CRON[7373]: pam_unix(cron:session): session opened for user root... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Tips :&lt;br /&gt;
&lt;br /&gt;
Suppression des messages d&amp;#039;authentification de cron dans /var/log/auth.log :&lt;br /&gt;
 Nov 19 20:10:01 srv CRON[7373]: pam_unix(cron:session): session opened for user root by (uid=0)&lt;br /&gt;
 Nov 19 20:10:01 srv CRON[7373]: pam_unix(cron:session): session closed for user root&lt;br /&gt;
&lt;br /&gt;
Editer le fichier de conf de syslog :&lt;br /&gt;
 # vim /etc/syslog.conf&lt;br /&gt;
 &lt;br /&gt;
 auth,authpriv.*,&amp;#039;&amp;#039;&amp;#039;cron.none&amp;#039;&amp;#039;&amp;#039;       /var/log/auth.log&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai hésité à installer Rsyslog, qui permet d&amp;#039;exporter ses logs via le réseau. Je me contente pour l&amp;#039;instant de gérer la rotation des logs avec logrotate, et leur exploitation avec fail2ban et awstats. &amp;lt;br /&amp;gt;&lt;br /&gt;
Il faudra également rajouter les logs des sauvegardes dans le logrotate, et dans awstats... :)&lt;br /&gt;
&lt;br /&gt;
 # vim /etc/logrotate.d/apache2&lt;br /&gt;
 &lt;br /&gt;
 /var/log/apache2/*.log {     # Le fichier de log en question...&lt;br /&gt;
        weekly                # La rotation s&amp;#039;effectue toutes les semaines&lt;br /&gt;
        missingok             # L&amp;#039;absence de fichier de log n&amp;#039;est pas anormale...&lt;br /&gt;
        rotate 52             # On garde 52 fichiers. Vu qu&amp;#039;on change de fichier toutes les semaines, on a 1 an de logs&lt;br /&gt;
        compress              # On compresse tous les fichiers secondaires (= tous les fichiers sauf celui en cours)&lt;br /&gt;
        delaycompress         # Avec l&amp;#039;option compress, on décale l&amp;#039;archivage d&amp;#039;un cran (pour garder 2 fichiers non-archivés)&lt;br /&gt;
        notifempty            # ne pas permuter le journal lorsqu&amp;#039;il est vide&lt;br /&gt;
        create 640 root adm   # chmod et chown des fichiers de logs créés&lt;br /&gt;
        sharedscripts         # Permet d&amp;#039;exécuter une seule fois le script par rotation (???)&lt;br /&gt;
        postrotate            # Ces commandes (une par ligne) sont exécutées avant la rotation du fichier de log.&lt;br /&gt;
          if [ -f &amp;quot;`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`&amp;quot; ]; then&lt;br /&gt;
            /etc/init.d/apache2 reload &amp;gt; /dev/null&lt;br /&gt;
          fi&lt;br /&gt;
        endscript             # fin des commandes&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Serveur dédié]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Webradio</id>
		<title>Webradio</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Webradio"/>
				<updated>2017-03-24T09:45:08Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== PhpMyAdmin == &lt;br /&gt;
&lt;br /&gt;
L&amp;#039;installation de PhpMyAdmin se fait dans la foulée après celle de Mysql et Php :&lt;br /&gt;
&lt;br /&gt;
 # apt-get install phpmyadmin&lt;br /&gt;
&lt;br /&gt;
Editer le fichier de configuration d&amp;#039;Apache :&lt;br /&gt;
&lt;br /&gt;
 # vim /etc/apache2/apache2.conf&lt;br /&gt;
&lt;br /&gt;
Rajouter la ligne suivante :&lt;br /&gt;
&lt;br /&gt;
 include /etc/phpmyadmin/apache.conf&lt;br /&gt;
&lt;br /&gt;
Pour accéder ensuite à l&amp;#039;interface de PhpMyAdmin, il suffit de se rendre sur le site web (ou en localhost si le serveur web n&amp;#039;est pas opérationnel) :&lt;br /&gt;
&lt;br /&gt;
http://localhost/phpmyadmin&lt;br /&gt;
&lt;br /&gt;
note : PhpMyAdmin utilise les identifiants de l&amp;#039;admin de Mysql tels que définis à l&amp;#039;installation de Mysql&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Web radio avec MPD et Icecast2 ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Cette section est un tutoriel visant à expliquer comment installer, configurer et utiliser une web radio.&lt;br /&gt;
Tout d&amp;#039;abord, il faut savoir qu&amp;#039;elle est composée de plusieurs logiciels ayant des rôles spécifiques :&lt;br /&gt;
&lt;br /&gt;
* Un lecteur audio, ==&amp;gt; MPD &lt;br /&gt;
* Un diffuseur de flux, ==&amp;gt; Icecast2&lt;br /&gt;
* Une interface. ==&amp;gt; Pitchfork&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Lecteur audio : MPD (Music Player Daemon) ===&lt;br /&gt;
==== Installation ====&lt;br /&gt;
&lt;br /&gt;
Sous Debian :&lt;br /&gt;
 # apt-get install mpd avahi-daemon&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
Pour configurer MPD, il faut éditer le fichier de configuration : &amp;#039;&amp;#039;&amp;#039;/etc/mpd.conf&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;music_directory&amp;#039;&amp;#039;&amp;#039; “chemin du Répertoire où se trouvent les fichiers audio”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;playlist_directory&amp;#039;&amp;#039;&amp;#039; “chemin du Répertoire où se trouvent les playlists”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;db_file&amp;#039;&amp;#039;&amp;#039; “chemin du Répertoire où se la Base de données MPD&amp;quot;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;log_file&amp;#039;&amp;#039;&amp;#039; “chemin du fichier log”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;error_file&amp;#039;&amp;#039;&amp;#039; “chemin du fichier log d&amp;#039;erreur”&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;pid_file&amp;#039;&amp;#039;&amp;#039; “chemin du fichier pid”&lt;br /&gt;
&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;password          &amp;quot;XXXX@read,add,control,admin&amp;quot;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
  &amp;#039;&amp;#039;audio_output {&amp;#039;&amp;#039;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;type&amp;#039;&amp;#039;&amp;#039;        “shout”                                         # Type de flux&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;name&amp;#039;&amp;#039;&amp;#039;        “Teteve Radio”                                  # Nom de la Web radio&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;host&amp;#039;&amp;#039;&amp;#039;        “localhost”                                     # Nom d&amp;#039;hôte ou ip&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;port&amp;#039;&amp;#039;&amp;#039;        “8000″                                          # Port&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;mount&amp;#039;&amp;#039;&amp;#039;       “/mpd.ogg”                                      # Point de montage pour Icecast&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;password&amp;#039;&amp;#039;&amp;#039;    “mot de passe qu&amp;#039;on réutilisera dans Icecast”   # Password&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;quality&amp;#039;&amp;#039;&amp;#039;     “5″                                             # Qualité du flux&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;user&amp;#039;&amp;#039;&amp;#039;        “mpd”                                           # Utilisateur système&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;description&amp;#039;&amp;#039;&amp;#039; “Radio de teteve.fr”                            # Commentaires, description&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;genre&amp;#039;&amp;#039;&amp;#039;       “éclectique”                                    # Genre de musique&lt;br /&gt;
 &amp;#039;&amp;#039;}&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;audio_output { &amp;#039;&amp;#039;                         # Sortie audio bidon pour éviter  &lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;type&amp;#039;&amp;#039;&amp;#039; &amp;quot;ao&amp;quot;                              # le message d&amp;#039;erreur : problem opening audio device&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;driver&amp;#039;&amp;#039;&amp;#039; &amp;quot;null&amp;quot;                                                    &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039; name&amp;#039;&amp;#039;&amp;#039; &amp;quot;Dummy output&amp;quot;        &lt;br /&gt;
  &amp;#039;&amp;#039;}&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;log_level&amp;#039;&amp;#039;&amp;#039;          &amp;quot;verbose&amp;quot;                                 # log explicites&lt;br /&gt;
&lt;br /&gt;
=== Diffuseur de flux : Icecast  ===&lt;br /&gt;
==== Installation ====&lt;br /&gt;
&lt;br /&gt;
Sous Debian :&lt;br /&gt;
 # apt-get install icecast2 php5 php-pear&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
Pour configurer Icecast2, il faut éditer le fichier &amp;#039;&amp;#039;&amp;#039;/etc/icecast2/icecast.xml.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;icecast&amp;gt;&lt;br /&gt;
    &amp;lt;limits&amp;gt;&lt;br /&gt;
        &amp;lt;clients&amp;gt;&amp;#039;&amp;#039;&amp;#039;10&amp;#039;&amp;#039;&amp;#039;&amp;lt;/clients&amp;gt; &amp;lt;-- ici, le nombre d&amp;#039;auditeurs simultanés autorisés&lt;br /&gt;
&lt;br /&gt;
... plus bas, ligne 23, reportez le mot de passe de /etc/mpd.conf:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;authentication&amp;gt;&lt;br /&gt;
         &amp;lt;!-- Sources log in with username &amp;#039;source&amp;#039; --&amp;gt;&lt;br /&gt;
         &amp;lt;source-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;XXXXXXX&amp;#039;&amp;#039;&amp;#039;&amp;lt;/source-password&amp;gt;&lt;br /&gt;
Puis modifiez les paramètres par défaut d&amp;#039;authentification:&lt;br /&gt;
         &amp;lt;!-- Relays log in username &amp;#039;relay&amp;#039; --&amp;gt;&lt;br /&gt;
        &amp;lt;relay-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;YYYYYYYYYY&amp;#039;&amp;#039;&amp;#039;&amp;lt;/relay-password&amp;gt;&lt;br /&gt;
L&amp;#039;Admin se connecte avec le nom d&amp;#039;utilisateur ci-dessous:&lt;br /&gt;
        &amp;lt;admin-user&amp;gt;&amp;#039;&amp;#039;&amp;#039;admin&amp;#039;&amp;#039;&amp;#039;&amp;lt;/admin-user&amp;gt;&lt;br /&gt;
        &amp;lt;admin-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;ZZZZZZZZ&amp;#039;&amp;#039;&amp;#039;&amp;lt;/admin-password&amp;gt;&lt;br /&gt;
 &amp;lt;/authentication&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir lister les dossiers :&lt;br /&gt;
 &amp;lt;directory&amp;gt;                                                   #listage des dossiers&lt;br /&gt;
 &amp;lt;yp-url-timeout&amp;gt;15&amp;lt;/yp-url-timeout&amp;gt;&lt;br /&gt;
 &amp;lt;yp-url&amp;gt;http://dir.xiph.org/cgi-bin/yp-cgi&amp;lt;/yp-url&amp;gt;&lt;br /&gt;
 &amp;lt;/directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ligne 49, votre hôte (doit correspondre à ce que vous avez rentré au paramètre &amp;quot;host&amp;quot; du fichier de configuration de  MPD)&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;hostname&amp;gt;&amp;#039;&amp;#039;&amp;#039;localhost&amp;#039;&amp;#039;&amp;#039;&amp;lt;/hostname&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le port utilisé par Icecast, vous pouvez laisser 8000&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
    &amp;#039;&amp;#039;&amp;#039;&amp;lt;port&amp;gt; &amp;#039;&amp;#039;&amp;#039;8000&amp;#039;&amp;#039;&amp;#039; &amp;lt;/port&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
    &amp;#039;&amp;#039;&amp;#039;&amp;lt;port&amp;gt; &amp;#039;&amp;#039;&amp;#039;8001&amp;#039;&amp;#039;&amp;#039; &amp;lt;/port&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/listen-socket&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Le reste de la configuration d&amp;#039;Icecast :&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-server&amp;gt; &amp;#039;&amp;#039;&amp;#039;127.0.0.1&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-server&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-server-port&amp;gt; &amp;#039;&amp;#039;&amp;#039;8000&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-server-port&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-update-interval&amp;gt; &amp;#039;&amp;#039;&amp;#039;120&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-update-interval&amp;gt;&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;master-password&amp;gt; &amp;#039;&amp;#039;&amp;#039;XXXXX&amp;#039;&amp;#039;&amp;#039; &amp;lt;/master-password&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;fileserve&amp;gt; &amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039; &amp;lt;/fileserve&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;shoutcast-mount&amp;gt; &amp;#039;&amp;#039;&amp;#039;/mpd.ogg&amp;#039;&amp;#039;&amp;#039; &amp;lt;/shoutcast-mount&amp;gt;&amp;#039;&amp;#039;&amp;#039;       # Point de montage du flux&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;paths&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;basedir&amp;gt; &amp;#039;&amp;#039;&amp;#039;/usr/share/icecast2&amp;#039;&amp;#039;&amp;#039; &amp;lt;/basedir&amp;gt;&amp;#039;&amp;#039;&amp;#039;           # utilisé que lorsque chroot est activé&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;logdir&amp;gt; &amp;#039;&amp;#039;&amp;#039;/var/log/icecast2&amp;#039;&amp;#039;&amp;#039; &amp;lt;/logdir&amp;gt;&amp;#039;&amp;#039;&amp;#039;               #dossier des logs&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;webroot&amp;gt; &amp;#039;&amp;#039;&amp;#039;/usr/share/icecast2/web&amp;#039;&amp;#039;&amp;#039; &amp;lt;/webroot&amp;gt;&amp;#039;&amp;#039;&amp;#039;       #dossier interface&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;&amp;lt;adminroot&amp;gt; &amp;#039;&amp;#039;&amp;#039;/usr/share/icecast2/admin&amp;#039;&amp;#039;&amp;#039; &amp;lt;/adminroot&amp;gt;&amp;#039;&amp;#039;&amp;#039; #dossier interface administration&lt;br /&gt;
     &amp;lt;alias source=&amp;quot;/&amp;quot; dest=&amp;quot;/status.xsl&amp;quot;/&amp;gt;           #redirige vers la page de status&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/paths&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;&amp;lt;security&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
      &amp;#039;&amp;#039;&amp;#039;&amp;lt;chroot&amp;gt;&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;&amp;lt;/chroot&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;&amp;lt;/security&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039; &amp;lt;/icecast&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Pour que Icecast2 tourne en tâche de fond, éditer également: &amp;#039;&amp;#039;&amp;#039;/etc/default/icecast2&amp;#039;&amp;#039;&amp;#039; et modifier la fin du fichier pour obtenir: &lt;br /&gt;
&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ENABLE=true&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Relance Icecast2 et MPD pour tenir compte des modifications:&lt;br /&gt;
&lt;br /&gt;
 #/etc/init.d/mpd restart&lt;br /&gt;
&lt;br /&gt;
 #/etc/init.d/icecast2 stop&lt;br /&gt;
&lt;br /&gt;
 #/etc/init.d/icecast2 start&lt;br /&gt;
&lt;br /&gt;
Et créer la base de données de MPD:&lt;br /&gt;
&lt;br /&gt;
 #mpd --create-db&lt;br /&gt;
&lt;br /&gt;
==== Utilisation ====&lt;br /&gt;
Vous accéderez a l&amp;#039;interface d&amp;#039;Icecast à une adresse du type: &amp;#039;&amp;#039;&amp;#039;http://teteve.fr:8000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Interface Web Cliente : Pitchfork ===&lt;br /&gt;
==== Installation ====&lt;br /&gt;
&lt;br /&gt;
Pour commencer, télécharger Pitchfork à l&amp;#039;adresse suivante :&lt;br /&gt;
[http://pitchfork.remiss.org/files/pitchfork-0.5.5.tar.bz2]&lt;br /&gt;
&lt;br /&gt;
Ensuite :&lt;br /&gt;
* Décompresser l&amp;#039;archive à l&amp;#039;endroit de votre choix.&lt;br /&gt;
* Mettre l&amp;#039;utilisateur Apache (www-data) propiétaire du dossier &amp;#039;&amp;#039;&amp;#039;&amp;quot;config&amp;quot;&amp;#039;&amp;#039;&amp;#039; de Pitchfork&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
&lt;br /&gt;
Copier le fichier Pitchfork.conf dans le dossier de configuration du serveur web &amp;#039;&amp;#039;&amp;#039;/etc/httpd/conf.d/&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Dans le Pitchfork.conf :&lt;br /&gt;
&lt;br /&gt;
 Alias /teteveradio /home/teteve/www/teteveradio        # radio accessible via teteve.fr/teteveradio&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;Directory /home/teteve/www/teteveradio&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;DirectoryIndex&amp;#039;&amp;#039;&amp;#039; index.php&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;Options&amp;#039;&amp;#039;&amp;#039; -Indexes&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;AllowOverride&amp;#039;&amp;#039;&amp;#039; all&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;AddType application/x-httpd-php&amp;#039;&amp;#039;&amp;#039; .php&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag magic_quotes_gpc&amp;#039;&amp;#039;&amp;#039; off&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag magic_quotes_runtime&amp;#039;&amp;#039;&amp;#039; off&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag display_errors&amp;#039;&amp;#039;&amp;#039; on&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;php_flag log_errors&amp;#039;&amp;#039;&amp;#039; on&lt;br /&gt;
        &amp;#039;&amp;#039;# switch comment marks on the two items to disable access logging &lt;br /&gt;
        # completely for pitchfork. See INSTALL&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;SetEnvIf&amp;#039;&amp;#039;&amp;#039; Request_URI &amp;quot;player/command\.php&amp;quot; pitchforknolog &lt;br /&gt;
        &amp;#039;&amp;#039;#SetEnv pitchforknolog&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/Directory&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Lancer ensuite la page de config de Pitchfork : [http://teteve.fr/teteveradio/player/config.php]&lt;br /&gt;
&lt;br /&gt;
Réglages de connexion :&lt;br /&gt;
 Hôte : &amp;#039;&amp;#039;&amp;#039;localhost&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 Port : &amp;#039;&amp;#039;&amp;#039;6600&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 Mot de Passe : &amp;#039;&amp;#039;&amp;#039;mot de passe MPD&lt;br /&gt;
&lt;br /&gt;
Intégration du shoutcast :&lt;br /&gt;
http://&amp;#039;&amp;#039;&amp;#039;&amp;lt;nom de domaine&amp;gt;&amp;#039;&amp;#039;&amp;#039;:&amp;#039;&amp;#039;&amp;#039;&amp;lt;port icecast&amp;gt;&amp;#039;&amp;#039;&amp;#039;/&amp;lt;&amp;#039;&amp;#039;&amp;#039;point de montage du shout&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Ce qui donne pour notre exemple :&lt;br /&gt;
http://teteve.fr:8000/mpd.ogg&lt;br /&gt;
&lt;br /&gt;
Vous pouvez également entrer cette URL dans un lecteur audio comme VLC pour écouter votre flux :&lt;br /&gt;
* Fichier/Ouvrir un flux réseau&lt;br /&gt;
* Sélectionner HTTP/HTTPS/FTP/MMS&lt;br /&gt;
* Entrer l&amp;#039;URL dans le champ à droite&lt;br /&gt;
&lt;br /&gt;
==== Utilisation ====&lt;br /&gt;
Pour utiliser Pitchfork, il suffit ensuite de lancer l&amp;#039;URL configurée dans Pitchfork.conf :&lt;br /&gt;
[http://teteve.fr/teteveradio/]&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Procédures]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Wordpress</id>
		<title>Wordpress</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Wordpress"/>
				<updated>2017-03-24T09:43:12Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Blog avec WordPress==&lt;br /&gt;
&lt;br /&gt;
Grâce à l&amp;#039;interface web de phpmyadmin, créer une base de données.&amp;lt;br /&amp;gt;&lt;br /&gt;
Nous appelons cette base de données : db_blog&amp;lt;br /&amp;gt;&lt;br /&gt;
Créer un utilisateur dans Mysql pour accéder à la base de données du blog : user_blog&amp;lt;br /&amp;gt;&lt;br /&gt;
Mettre un mot de passe aléatoire complexe (nous n&amp;#039;aurons pas à nous en souvenir)&lt;br /&gt;
mettre les autorisations pour user_blog sur db_blog&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
installer Wordpress :&lt;br /&gt;
 cd /var/home/www/&lt;br /&gt;
 wget http://fr.wordpress.org/latest-fr_FR.zip&lt;br /&gt;
 unzip latest-fr_FR.zip ./&lt;br /&gt;
aller sur l&amp;#039;adresse du site, et suivre la configuration automatique, en renseignant les nom de la base/login/mot de passe/localhost&lt;br /&gt;
&lt;br /&gt;
=== Sécurité ===&lt;br /&gt;
&lt;br /&gt;
modifier dans wp-content.php les lignes :&lt;br /&gt;
&lt;br /&gt;
 define(&amp;#039;AUTH_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
 define(&amp;#039;SECURE_AUTH_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
 define(&amp;#039;LOGGED_IN_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
 define(&amp;#039;NONCE_KEY&amp;#039;, &amp;#039;put your secret key&amp;#039;);&lt;br /&gt;
&lt;br /&gt;
Générer des clés (dans le &amp;quot;moins meilleur des cas&amp;quot;, aller sur le site [https://api.wordpress.org/secret-key/1.1 Générateur de clés] )&lt;br /&gt;
&lt;br /&gt;
Installer le pluggin TAC, qui permet de tester la qualité des thèmes installés, et surtout ne pas télécharger des thèmes n&amp;#039;importe où !!! :)&lt;br /&gt;
&lt;br /&gt;
lien externe :&amp;lt;br /&amp;gt;&lt;br /&gt;
http://digwp.com/2009/06/wordpress-configuration-tricks/&lt;br /&gt;
&lt;br /&gt;
=== Mise à jour ===&lt;br /&gt;
&lt;br /&gt;
Je suis obligé de faire des mises à jour manuelles de Wordpress. Je fais donc ici un petit récapitulatif des actions à effectuer :&lt;br /&gt;
&lt;br /&gt;
 wget http://fr.wordpress.org/latest-fr_FR.zip&lt;br /&gt;
 unzip latest-fr_FR.zip&lt;br /&gt;
sauvegarder le site&lt;br /&gt;
 cp -r blog/* /home/temp/&lt;br /&gt;
 cp -r worpress/* blog/&lt;br /&gt;
Lancer le site, on arrive sur une page d&amp;#039;installation. S&amp;#039;aider de la sauvegarde /home/temp/wp-config.php pour renseigner les champs. &amp;lt;br /&amp;gt;&lt;br /&gt;
A la demande, fermer le site, et recopier les thèmes et uploads :&lt;br /&gt;
 cp -r /home/temp/wp-content/themes/* blog/wp-content/themes/&lt;br /&gt;
relancer le site et se connecter...&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Procédures]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Bash</id>
		<title>Bash</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Bash"/>
				<updated>2017-03-24T09:39:18Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : Page créée avec « = Les redirections =  Lorsque vous exécutez une commande ou un programme, ceux-ci affichent des informations sur votre console. L&amp;#039;application peut afficher des messages d... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Les redirections =&lt;br /&gt;
&lt;br /&gt;
Lorsque vous exécutez une commande ou un programme, ceux-ci affichent des informations sur votre console. L&amp;#039;application peut afficher des messages de type &amp;quot;standard&amp;quot; ou des messages de type &amp;quot;erreur&amp;quot;. Chaque type de message est associé à un canal. Le premier est appelé STDOUT, le second STDERR.&lt;br /&gt;
&lt;br /&gt;
== Le simple supérieur ==&lt;br /&gt;
&lt;br /&gt;
 ps -ax &amp;gt; /tmp/out&lt;br /&gt;
renvoie le canal STDOUT vers le fichier out.&amp;lt;br /&amp;gt;&lt;br /&gt;
 ps -ax &amp;gt; /tmp/out 2&amp;gt; /tmp/err&lt;br /&gt;
renvoie le canal STDOUT (canal 1, par défaut) vers le fichier out, et le canal 2 vers le fichier err.&amp;lt;br /&amp;gt;&lt;br /&gt;
 ps -ax &amp;gt; /tmp/out 2&amp;gt;&amp;amp;1&lt;br /&gt;
renvoie le canal STDOUT vers le fichier out, et le canal 2 vers le canal 1 (donc dans le fichier out).&amp;lt;br /&amp;gt;&lt;br /&gt;
 ps -ax &amp;gt; /dev/null&lt;br /&gt;
ignore la sortie STDOUT (pour tout ignorer : &amp;#039;&amp;#039;ps -ax &amp;gt; /dev/null 2&amp;gt;&amp;amp;1&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
== Le double supérieur ==&lt;br /&gt;
&lt;br /&gt;
Le double supérieur, contrairement au simple, n&amp;#039;efface pas le contenu du fichier avant d&amp;#039;écrire dedans (cas typique : fichiers de logs).&lt;br /&gt;
&lt;br /&gt;
== le pipe ==&lt;br /&gt;
&lt;br /&gt;
 ps -ax | grep syslog&lt;br /&gt;
affiche STDERR et grep STDOUT &amp;lt;br /&amp;gt;&lt;br /&gt;
 ps -ax 2&amp;gt;&amp;amp;1 | grep syslog&lt;br /&gt;
grep STDOUT et STDERR&lt;br /&gt;
&lt;br /&gt;
= Le code d&amp;#039;erreur =&lt;br /&gt;
&lt;br /&gt;
 echo $?&lt;br /&gt;
renvoie le résultat de la dernière commande effectuée : 0 = pas d&amp;#039;erreur, 1 = erreur&lt;br /&gt;
&lt;br /&gt;
= Le double pipe =&lt;br /&gt;
&lt;br /&gt;
Le double pipe signifie &amp;quot;s&amp;#039;il y a des erreurs, alors...&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
 ps -ax | grep syslog || echo &amp;quot;raté&amp;quot;&lt;br /&gt;
affichage de &amp;quot;raté&amp;quot; si le code de sortie de la commande précédente (grep) est différent de 0.&amp;lt;br /&amp;gt;&lt;br /&gt;
 [ -x /usr/sbin/postfix ] || exit 0&lt;br /&gt;
si le fichier /usr/sbin/postfix est exécutable, on continue, sinon on quitte avec le code de sortie 0.&lt;br /&gt;
&lt;br /&gt;
= Le double &amp;amp; =&lt;br /&gt;
&lt;br /&gt;
le double &amp;amp; est le complément du ||. Il signifie  &amp;quot;s&amp;#039;il n&amp;#039;y a pas eu d&amp;#039;erreur, alors...&amp;quot; Il peut bien évidemment s&amp;#039;utiliser simultanément avec le double pipe.&amp;lt;br /&amp;gt;&lt;br /&gt;
 [ -x /usr/sbin/postfix ] &amp;amp;&amp;amp; echo &amp;quot;fichier exécutable&amp;quot; || echo &amp;quot;fichier non-exécutable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
= Syntaxe particulière =&lt;br /&gt;
&lt;br /&gt;
 [ -f /tmp/toto ] &amp;amp;&amp;amp; echo &amp;quot;/tmp/toto existe&amp;quot; || :&amp;lt;br /&amp;gt;&lt;br /&gt;
Le &amp;quot;:&amp;quot; signifie que le code de retour doit être 0. Utile pour effectuer une action lorsqu&amp;#039;un test est vrai, mais en passant outre l&amp;#039;erreur si elle survient.&lt;br /&gt;
&lt;br /&gt;
= Le point virgule =&lt;br /&gt;
&lt;br /&gt;
Il permet de définir la fin d&amp;#039;une commande et le début d&amp;#039;une suivante. Les commandes ainsi séparées seront exécutées séquentiellement :&amp;lt;br /&amp;gt;&lt;br /&gt;
 echo &amp;quot;1&amp;quot;; sleep 5; echo &amp;quot;2&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
On affiche &amp;quot;1&amp;quot;, puis on attend 5 secondes, et on affiche &amp;quot;2&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Le simple &amp;amp; =&lt;br /&gt;
&lt;br /&gt;
Il permet de séparer les commandes, mais celles-ci seront exécutées simultanément :&amp;lt;br /&amp;gt;&lt;br /&gt;
 echo &amp;quot;a&amp;quot; &amp;amp; sleep 5 &amp;amp; echo &amp;quot;b&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
 a&amp;lt;br /&amp;gt;&lt;br /&gt;
 [1] 30553&amp;lt;br /&amp;gt;&lt;br /&gt;
 [2] 30554&amp;lt;br /&amp;gt;&lt;br /&gt;
 b&lt;br /&gt;
&lt;br /&gt;
Dans ce cas, l&amp;#039;affichage de &amp;quot;a&amp;quot; et &amp;quot;b&amp;quot; sera quasi simultané. La commande sleep reste en tache de fond. Chaque processus se voit attribuer un numéro de travail. C&amp;#039;est ce que l&amp;#039;on observe dans l&amp;#039;affichage &amp;#039;&amp;#039;[2] 30554&amp;#039;&amp;#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
La commande &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;jobs&amp;lt;/span&amp;gt; permet de connaître la liste des travaux en cours.&amp;lt;br /&amp;gt;&lt;br /&gt;
La commande &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;fg&amp;lt;/span&amp;gt; (foreground) suivie du numéro de travail permet de le repasser au premier plan.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pour repasser un processus en tâche de fond, il suffit de taper [Ctrl] + [Z] pour suspendre la tâche en cours, puis d&amp;#039;utiliser la commande &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;bg&amp;lt;/span&amp;gt; (background) pour la mettre en tâche de fond.&lt;br /&gt;
&lt;br /&gt;
= Echappement des caractères spéciaux =&lt;br /&gt;
&lt;br /&gt;
Les caractères comme &amp;lt;span style=&amp;quot;color:blue;&amp;quot;&amp;gt;&amp;amp; - ! @ / \ ; : ^ &amp;lt;/span&amp;gt; sont souvent utilisés comme paramètres ou arguments de commande. Pour les utiliser comme caractères &amp;quot;normaux&amp;quot;, il faut le spécifier grâce au caractère d&amp;#039;échappement &amp;quot;\&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
 ps -ax | grep &amp;#039; \-\-nosid &amp;#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
De même, pour échapper le caractère &amp;quot;\&amp;quot;, on utilise un double \\&amp;lt;br /&amp;gt;&lt;br /&gt;
 ps -ax | grep &amp;#039; \\ &amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Serveur dédié]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Commandes]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Apache</id>
		<title>Apache</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Apache"/>
				<updated>2017-03-24T09:37:39Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Pré requis (installation) ==&lt;br /&gt;
&lt;br /&gt;
Rien de bien compliqué pour l&amp;#039;installation :&lt;br /&gt;
&lt;br /&gt;
 # apt-get install apache2&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Les fichiers de conf ===&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;indique ici quelques lignes particulière du fichier de conf d&amp;#039;apache sur lesquelles je me suis penché...&amp;lt;br/&amp;gt;&lt;br /&gt;
Le fichier envvars :&amp;lt;br/&amp;gt;&lt;br /&gt;
 export APACHE_RUN_USER=virtual&lt;br /&gt;
 export APACHE_RUN_GROUP=www-data&lt;br /&gt;
-&amp;gt; Modifié pour que l&amp;#039;utilisateur FTP et l&amp;#039;utilisateur d&amp;#039;Apache soit le même. Permet les mises à jour automatiques de Wordpress sans utiliser de login/mdp FTP&amp;lt;br/&amp;gt;&lt;br /&gt;
-&amp;gt; Vérifier si besoin / si c&amp;#039;est mieux de remettre www-data...&lt;br /&gt;
&lt;br /&gt;
 # vim /etc/apache2/apache2.conf&lt;br /&gt;
 &lt;br /&gt;
 # Indique si Apache doit essayer de faire une résolution DNS inversée sur les IP des clients&lt;br /&gt;
 HostnameLookups Off&lt;br /&gt;
 &lt;br /&gt;
 ServerRoot &amp;quot;/etc/apache2&amp;quot;&lt;br /&gt;
 DirectoryIndex index.php index.html # Indique quel type de fichier index doit sélectionner apache par défaut&lt;br /&gt;
 &lt;br /&gt;
 # Config perso des pages d&amp;#039;erreur&lt;br /&gt;
 # Peut être défini plus précisément plus loin dans ce fichier&lt;br /&gt;
 ErrorDocument 404 /404.html&lt;br /&gt;
 &lt;br /&gt;
 # Les logs d&amp;#039;erreur sont peu configurables, à part leur emplacement et le niveau :&lt;br /&gt;
 ErrorLog ${APACHE_LOG_DIR}/error.log&lt;br /&gt;
 # Valeurs possibles pour les niveaux de log : debug, info, notice, warn, error, crit, alert, emerg.&lt;br /&gt;
 LogLevel warn&lt;br /&gt;
 &lt;br /&gt;
 # Modèle de sécurité par défaut des répertoires utilisés par Apache&lt;br /&gt;
 # À analyser plus finement...&lt;br /&gt;
 &amp;lt;Directory /&amp;gt;&lt;br /&gt;
         Options FollowSymLinks&lt;br /&gt;
         AllowOverride None&lt;br /&gt;
         Require all denied&lt;br /&gt;
 &amp;lt;/Directory&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;Directory /usr/share&amp;gt;&lt;br /&gt;
         AllowOverride None&lt;br /&gt;
         Require all granted&lt;br /&gt;
 &amp;lt;/Directory&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;Directory /home/www/&amp;gt;&lt;br /&gt;
         Options Indexes FollowSymLinks&lt;br /&gt;
         AllowOverride None&lt;br /&gt;
         Require all granted&lt;br /&gt;
 &amp;lt;/Directory&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 #&amp;lt;Directory /srv/&amp;gt;&lt;br /&gt;
 #	Options Indexes FollowSymLinks&lt;br /&gt;
 #	AllowOverride None&lt;br /&gt;
 #	Require all granted&lt;br /&gt;
 #&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # Configuration des logs :&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;# EN COURS D&amp;#039;APPROFONDISSEMENT...&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 VOIR LA PARTIE &amp;quot;LOGS&amp;quot; (faire une ancre)&lt;br /&gt;
&lt;br /&gt;
=== Les vhosts ===&lt;br /&gt;
&lt;br /&gt;
D&amp;#039;après la documentation d&amp;#039;Apache, voici la configuration préconisée :&lt;br /&gt;
Cette configuration est &amp;quot;hors vhosts&amp;quot;. Elle adresse donc le &amp;quot;serveur principal&amp;quot;, ou &amp;quot;serveur par défaut&amp;quot;.&lt;br /&gt;
Je mets ici une redirection vers la page 404 : si on n&amp;#039;est pas dans un vhost prévu, on a rien à faire là... :)&lt;br /&gt;
&lt;br /&gt;
 Il est possible d&amp;#039;utiliser des noms d&amp;#039;hôtes dans la définition d&amp;#039;un serveur virtuel, mais ils seront résolus en adresses IP au démarrage du serveur.&lt;br /&gt;
 Si une résolution de nom échoue, cette définition de serveur virtuel sera ignorée.&lt;br /&gt;
 Cette méthode est par conséquent déconseillée.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 # Serveur &amp;quot;principal&amp;quot;, qui répondra pour les vhosts non déclarés :&lt;br /&gt;
 # interrogation d&amp;#039;Apache par l&amp;#039;IP par exemple, ou nom de domaine pointant vers le VPS sans qu&amp;#039;il soit déclaré dans Apache&lt;br /&gt;
 ServerName 178.32.102.151&lt;br /&gt;
 DocumentRoot /home/www/teteve/vps2&lt;br /&gt;
 &lt;br /&gt;
 # La directive NameVirtualHost doit de préférence contenir une adresse IP et/ou un port (Joker * accepté)&lt;br /&gt;
 # C&amp;#039;est le couple IP/Port utilisé par Apache (doit être défini dans la directive &amp;quot;Listen&amp;quot;), pour lequel Apache doit filtrer les noms d&amp;#039;hôtes&lt;br /&gt;
 NameVirtualHost 178.32.102.151&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost 178.32.102.151&amp;gt;&lt;br /&gt;
 DocumentRoot /www/example.com&lt;br /&gt;
 ServerName www.example.com&lt;br /&gt;
 &lt;br /&gt;
 # D&amp;#039;autres directives ici ...&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost 178.32.102.151&amp;gt;&lt;br /&gt;
 DocumentRoot /www/example.org&lt;br /&gt;
 ServerName www.example.org&lt;br /&gt;
 &lt;br /&gt;
 # D&amp;#039;autres directives ici ...&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Voici un fichier de conf d&amp;#039;un Vhost :&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;VirtualHost www.toto.fr&amp;gt;&amp;#039;&amp;#039;&amp;#039; # Nom du virtualhost (défini normalement dans la directive &amp;quot;NameVirtualHost&amp;quot;)&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;ServerAdmin webmaster@localhost&amp;#039;&amp;#039;&amp;#039; # Mail du webmaster (pas trop compliqué à comprendre... :p)&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;ServerName www.toto.fr&amp;#039;&amp;#039;&amp;#039; # Nom du serveur&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;ServerAlias www2.toto.fr&amp;#039;&amp;#039;&amp;#039; # Un éventuel alias&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;DocumentRoot /home/www/toto&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;&amp;lt;Directory /&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                &amp;#039;&amp;#039;&amp;#039;Options FollowSymLinks&amp;#039;&amp;#039;&amp;#039; # Autorise à suivre les liens symboliques&lt;br /&gt;
                &amp;#039;&amp;#039;&amp;#039;AllowOverride None&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;&amp;lt;/Directory&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;&amp;lt;Directory /home/www/toto/&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                # Indexes : Ne liste pas les fichiers d&amp;#039;un répertoire s&amp;#039;il n&amp;#039;y a pas de fichier index.*&lt;br /&gt;
                &amp;#039;&amp;#039;&amp;#039;Options Indexes FollowSymLinks MultiViews&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                &amp;#039;&amp;#039;&amp;#039;AllowOverride None&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                &amp;#039;&amp;#039;&amp;#039;Order allow,deny&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                &amp;#039;&amp;#039;&amp;#039;allow from all&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                # This directive allows us to have apache2&amp;#039;s default start page&lt;br /&gt;
                # in /apache2-default/, but still have / go to the right place&lt;br /&gt;
                # RedirectMatch ^/$ www.toto.fr&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;&amp;lt;/Directory&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;&amp;lt;Directory /home/www/secure/&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                # Config du répertoire sécurisé (voir ci-dessous)&lt;br /&gt;
        &amp;#039;&amp;#039;&amp;#039;&amp;lt;/Directory&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ # Pour la config des scripts CGI&lt;br /&gt;
        &amp;lt;Directory &amp;quot;/usr/lib/cgi-bin&amp;quot;&amp;gt;&lt;br /&gt;
                # A approfondir&lt;br /&gt;
        &amp;lt;/Directory&amp;gt;&lt;br /&gt;
        ErrorLog /var/log/apache2/error.log&lt;br /&gt;
        # Si besoin de logs particuliers pour le vhost :&lt;br /&gt;
        # Valeurs possibles : debug, info, notice, warn, error, crit, alert, emerg.&lt;br /&gt;
        # Non utilisées actuellement&lt;br /&gt;
        #LogLevel warn&lt;br /&gt;
        #CustomLog /var/log/apache2/access.log combined&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;&amp;lt;/VirtualHost&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Ne pas oublier de rajouter le nom du vhost dans /etc/hosts&lt;br /&gt;
&lt;br /&gt;
Petite astuce pour désactiver l&amp;#039;accès à votre serveur par son IP publique : &amp;lt;br /&amp;gt;&lt;br /&gt;
Dans le fichier de conf du vhost &amp;quot;default&amp;quot;, rajouter ceci à la fin. Ça peut être utile pour éviter les scans de port et les bots. Totalement inutile si le DNS est public... &amp;lt;br /&amp;gt;&lt;br /&gt;
A éviter pour un site web souhaitant être référencé !!! :)&lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
   ServerName VOTRE.IP.PUB.LIQUE&lt;br /&gt;
   &amp;lt;Directory /&amp;gt;&lt;br /&gt;
     Deny from all&lt;br /&gt;
   &amp;lt;/Directory&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Liens pour approfondir les vhosts :&lt;br /&gt;
http://httpd.apache.org/docs/2.4/fr/vhosts/details.html&lt;br /&gt;
http://httpd.apache.org/docs/2.4/fr/vhosts/examples.html&lt;br /&gt;
 &lt;br /&gt;
== Les logs ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;# EN COURS D&amp;#039;APPROFONDISSEMENT...&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
 LogFormat &amp;quot;%v:%p %h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %O \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; vhost_combined&lt;br /&gt;
 LogFormat &amp;quot;%h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %O \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; combined&lt;br /&gt;
 LogFormat &amp;quot;%h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %O&amp;quot; common&lt;br /&gt;
 LogFormat &amp;quot;%{Referer}i -&amp;gt; %U&amp;quot; referer&lt;br /&gt;
 LogFormat &amp;quot;%{User-agent}i&amp;quot; agent&lt;br /&gt;
 &lt;br /&gt;
 Devient :&lt;br /&gt;
 &lt;br /&gt;
 LogFormat &amp;quot;%v:%p %a %h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %T \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; vhost_combined&lt;br /&gt;
 LogFormat &amp;quot;%h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; combined&lt;br /&gt;
 LogFormat &amp;quot;%h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b&amp;quot; common&lt;br /&gt;
 LogFormat &amp;quot;%{Referer}i -&amp;gt; %U&amp;quot; referer&lt;br /&gt;
 LogFormat &amp;quot;%{User-agent}i&amp;quot; agent&lt;br /&gt;
 # Define an access log for VirtualHosts that don&amp;#039;t define their own logfile&lt;br /&gt;
 CustomLog /var/log/apache2/other_vhosts_access.log vhost_combined&lt;br /&gt;
&lt;br /&gt;
=== LogFormat ===&lt;br /&gt;
Directives présentes dans le fichier /etc/apache2/apache.conf d&amp;#039;après [http://doc.ubuntu-fr.org/apache2 La documentation Ubuntu]&lt;br /&gt;
 # format des lignes contenues dans les logs&lt;br /&gt;
 # %a 	        Adresse ip distante.&lt;br /&gt;
 # %A 	        Adresse ip local.&lt;br /&gt;
 # %B 	        Taille de la réponse en octets, excluant l&amp;#039;entête HTTP.&lt;br /&gt;
 # %b 	        Taille de la réponse en octets, excluant l&amp;#039;entête HTTP au format CLF.&lt;br /&gt;
 # %{Foobar}C 	Contenu du cookie &amp;quot;Foobar&amp;quot; de la requête envoyée au serveur.&lt;br /&gt;
 # %D 	        Le temps mis à servir la requête .&lt;br /&gt;
 # %{FOOBAR}e 	Contenue de la variable d&amp;#039;environnement &amp;quot;FOOBAR&amp;quot;.&lt;br /&gt;
 # %f 	        Nom du fichier.&lt;br /&gt;
 # %h 	        Hôte distant.&lt;br /&gt;
 # %H 	        Le protocole demandé.&lt;br /&gt;
 # %{Foobar}i 	Le contenu de &amp;quot;Foobar&amp;quot;: Ligne(s) d&amp;#039;en-tête de la requête envoyée au serveur.&lt;br /&gt;
 # %l 	        nom du fichier de log distant (de identd, si il est fournit). Cela retournera un tiret tant que //mod_ident// n&amp;#039;est pas présent et //IdentityCheck// n&amp;#039;est pas mis à ON.&lt;br /&gt;
 # %m 	        Méthode de la requête.&lt;br /&gt;
 # %{Foobar}n 	Contenu de la note &amp;quot;Foobar&amp;quot; provenant d&amp;#039;un autre module.&lt;br /&gt;
 # %{Foobar}o 	Le contenu de &amp;quot;Foobar&amp;quot;: Ligne(s) d&amp;#039;entête dans la réponse.&lt;br /&gt;
 # %p 	        Port canonique du serveur qui sert la réponse.&lt;br /&gt;
 # %P 	        Id du processus fils qui a servi la requête.&lt;br /&gt;
 # %{format}P 	Id du processus ou du thread fils qui a servi la requête.&lt;br /&gt;
 # Les formats valides sont pid, tid, et hextid.&lt;br /&gt;
 # hextid nécessite APR 1.2.0 ou supérieur.&lt;br /&gt;
 # %q 	        Chaînes de la requête (Commençant avec un ? si une chaine de requête existe, sinon une chaîne vide)&lt;br /&gt;
 # %r 	        Première ligne de la requête.&lt;br /&gt;
 # %s 	        Statut. Pour les requête redirigées en interne, ceci est la requête originale --- %&amp;gt;s pour la dernière.&lt;br /&gt;
 # %t 	        Heure à laquelle la requête a été reçue (format standard anglais mois jour année )&lt;br /&gt;
 # %{format}t 	L&amp;#039;heure, au format précisé, qui doit être dans les formats de strftime(3). (potentiellement localisé).&lt;br /&gt;
 # %T 	        Le temps mis pour répondre à la requête.&lt;br /&gt;
 # %u 	        Utilisateur distant (de l&amp;#039;authentification; peut être faux si le  code de retour de statut (%s) est 401)&lt;br /&gt;
 # %U 	        Url demandée, n&amp;#039;inclue aucune chaîne de requête.&lt;br /&gt;
 # %v 	        Nom canonique de ServerName du serveur qui répond à la requête.&lt;br /&gt;
 # %V 	        Nom du serveur en fonction du paramètre UseCanonicalName.&lt;br /&gt;
 # %X 	        Statut de la connexion une fois la réponse envoyée.&lt;br /&gt;
 #               X = connexion annulée avant la réponse complète.&lt;br /&gt;
 #               + = la connexion peut être maintenue après l&amp;#039;envoi de la réponse.&lt;br /&gt;
 #               - = la connexion sera fermée après l&amp;#039;envoi de la réponse.&lt;br /&gt;
 # %I 	        Octets reçus, incluant l&amp;#039;entête et la requête, ne peut être nul. Vous devez activer //mod_logio// pour l&amp;#039;utiliser.&lt;br /&gt;
 # %O 	        Octets envoyés, incluant l&amp;#039;entête, ne peut être nul. Vous devez activer //mod_logio// pour l&amp;#039;utiliser.&lt;br /&gt;
  &lt;br /&gt;
 LogFormat &amp;quot;%h %l %h %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; combined&lt;br /&gt;
 LogFormat &amp;quot;%h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b&amp;quot; common&lt;br /&gt;
 LogFormat &amp;quot;%{Referer}i -&amp;gt; %U&amp;quot; referer&lt;br /&gt;
 LogFormat &amp;quot;%{User-agent}i&amp;quot; agent&lt;br /&gt;
&lt;br /&gt;
Celles que j&amp;#039;ai dans le mien :&lt;br /&gt;
 LogFormat &amp;quot;%v %a %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; vhost_combined&lt;br /&gt;
 #LogFormat &amp;quot;%h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; combined&lt;br /&gt;
 #LogFormat &amp;quot;%h %l %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b&amp;quot; common&lt;br /&gt;
 #LogFormat &amp;quot;%{Referer}i -&amp;gt; %U&amp;quot; referer&lt;br /&gt;
 #LogFormat &amp;quot;%{User-agent}i&amp;quot; agent&lt;br /&gt;
 #&lt;br /&gt;
 # Define an access log for VirtualHosts that don&amp;#039;t define their own logfile&lt;br /&gt;
 CustomLog /var/log/apache2/other_vhosts_access.log vhost_combined&lt;br /&gt;
 &lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;Explications :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 LogFormat &amp;quot;%v %a %u %t \&amp;quot;%r\&amp;quot; %&amp;gt;s %b \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; vhost_combined&lt;br /&gt;
 %v - Nom canonique de ServerName du serveur qui répond à la requête.&lt;br /&gt;
 %a - Adresse ip distante.&lt;br /&gt;
 %u - Utilisateur distant (de l&amp;#039;authentification; peut être faux si le  code de retour de statut (%s) est 401)&lt;br /&gt;
 %t - Heure à laquelle la requête a été reçue (format standard anglais mois jour année )&lt;br /&gt;
 &amp;quot;%r&amp;quot; - Première ligne de la requête.&lt;br /&gt;
 %&amp;gt;s - Statut. Pour les requête redirigées en interne, ceci est la requête originale --- %&amp;gt;s pour la dernière.&lt;br /&gt;
 %b - Taille de la réponse en octets, excluant l&amp;#039;entête HTTP au format CLF. (obligatoire pour [[Awstats]])&lt;br /&gt;
 %{Referer}i - Le contenu de &amp;quot;Referer&amp;quot;: Ligne(s) d&amp;#039;en-tête de la requête envoyée au serveur.&lt;br /&gt;
 %{User-Agent}i - Le contenu de &amp;quot;User-Agent&amp;quot;: Ligne(s) d&amp;#039;en-tête de la requête envoyée au serveur.&lt;br /&gt;
&lt;br /&gt;
== Quelques tips sur Apache2 ==&lt;br /&gt;
&lt;br /&gt;
=== Les commandes apache2 ===&lt;br /&gt;
 root@test ~ # apache2 -h&lt;br /&gt;
 Usage: apache2 [-D name] [-d directory] [-f file]&lt;br /&gt;
               [-C &amp;quot;directive&amp;quot;] [-c &amp;quot;directive&amp;quot;]&lt;br /&gt;
               [-k start|restart|graceful|graceful-stop|stop]&lt;br /&gt;
               [-v] [-V] [-h] [-l] [-L] [-t] [-S] [-X]&lt;br /&gt;
 Options:&lt;br /&gt;
  -D name            : define a name for use in &amp;lt;IfDefine name&amp;gt; directives&lt;br /&gt;
  -d directory       : Spécifie un répertoire racine specify an alternate initial ServerRoot&lt;br /&gt;
  -f file            : specify an alternate ServerConfigFile&lt;br /&gt;
  -C &amp;quot;directive&amp;quot;     : process directive before reading config files&lt;br /&gt;
  -c &amp;quot;directive&amp;quot;     : process directive after reading config files&lt;br /&gt;
  -e level           : show startup errors of level (see LogLevel)&lt;br /&gt;
  -E file            : log startup errors to file&lt;br /&gt;
  -v                 : show version number&lt;br /&gt;
  -V                 : show compile settings&lt;br /&gt;
  -h                 : list available command line options (this page)&lt;br /&gt;
  -l                 : list compiled in modules&lt;br /&gt;
  -L                 : list available configuration directives&lt;br /&gt;
  -t -D DUMP_VHOSTS  : show parsed settings (currently only vhost settings)&lt;br /&gt;
  -S                 : a synonym for -t -D DUMP_VHOSTS&lt;br /&gt;
  -t -D DUMP_MODULES : show all loaded modules&lt;br /&gt;
  -M                 : a synonym for -t -D DUMP_MODULES&lt;br /&gt;
  -t                 : run syntax check for config files&lt;br /&gt;
  -X                 : debug mode (only one worker, do not detach)&lt;br /&gt;
&lt;br /&gt;
=== restreindre l&amp;#039;accès à un répertoire ===&lt;br /&gt;
&lt;br /&gt;
Sous Apache, il existe 2 types d&amp;#039;authentification possible :&lt;br /&gt;
* mod_auth_basic&lt;br /&gt;
* mod_auth_digest&lt;br /&gt;
&lt;br /&gt;
pour activer le module mod_auth_digest :&lt;br /&gt;
 a2dismod mod_auth_basic&lt;br /&gt;
 a2enmod mod_auth_digest&lt;br /&gt;
 /etc/init.d/apache2 restart&lt;br /&gt;
L&amp;#039;authentification Basic envoie le couple login/password en clair sur le réseau.&lt;br /&gt;
Elle est donc déconseillée sans être couplée avec SSL.&lt;br /&gt;
L&amp;#039;authentification Digest utilise les condensés MD5. Attention : Digest est mal supporté par IE 6 et antérieur, à cause du non-respect des RFC de la part de IE (original... ^^).&lt;br /&gt;
&lt;br /&gt;
Il est possible de mettre les directives d&amp;#039;authentification soit dans le/les fichiers(s) de configuration d&amp;#039;apache (typiquement apache2.conf), soit directement dans les répertoires concernés grace aux fichiers .htaccess.&lt;br /&gt;
Il est conseillé, dans la mesure du possible, d&amp;#039;utiliser les directives &amp;lt;Directory&amp;gt; dans apache2.conf pour sécuriser les répertoires. Dans le cas contraire, Apache devra parcourir tous les répertoires à la recherche de fichiers .htaccess, ce qui risque d&amp;#039;amoindrir les performances.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;Directory /home/www/secure/&amp;gt;&lt;br /&gt;
     AuthType Digest&lt;br /&gt;
     AuthName &amp;quot;Zone securisee&amp;quot;&lt;br /&gt;
     AuthDigestDomain /secure/ http://www.teteve.fr/secure/&lt;br /&gt;
     AuthDigestProvider file&lt;br /&gt;
     AuthUserFile /etc/apache2/password&lt;br /&gt;
     Require valid-user&lt;br /&gt;
 &amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
créer le premier couple login/password :&lt;br /&gt;
 htdigest -c /ou/vous/voulez &amp;quot;Zone securisee&amp;quot; login1&lt;br /&gt;
Un prompt vous demande alors de taper le mot de passe, puis de le confirmer. Créer ensuite les couples login/password en enlevant l&amp;#039;option &amp;quot;-c&amp;quot; (pour &amp;quot;create&amp;quot;).&lt;br /&gt;
  service apache2 reload&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Serveur dédié]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Procédures]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Awstats</id>
		<title>Awstats</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Awstats"/>
				<updated>2017-03-24T09:37:07Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;En cours de mise en place et d&amp;#039;approfondissement...&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
 # apt-get install awstats&lt;br /&gt;
&lt;br /&gt;
Définir l&amp;#039;alias utilisé par les différents domaines :&lt;br /&gt;
&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039;vim /etc/apache2/sites-available/stats.conf&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 Alias /awstatsclasses &amp;quot;/usr/share/awstats/classes/&amp;quot;&lt;br /&gt;
 Alias /awstatscss &amp;quot;/usr/share/awstats/css/&amp;quot;&lt;br /&gt;
 Alias /awstats-icon &amp;quot;/usr/share/awstats/icon/&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 ScriptAlias /stats /usr/lib/cgi-bin/awstats.pl&lt;br /&gt;
 &lt;br /&gt;
 # mêmes paramètres que dans awstats.*.conf&lt;br /&gt;
 &amp;lt;Directory /usr/lib/cgi-bin/&amp;gt;&lt;br /&gt;
   DirectoryIndex awstats.pl&lt;br /&gt;
   UseCanonicalName off&lt;br /&gt;
   AuthType Digest&lt;br /&gt;
   AuthName &amp;quot;Acces restreint aux stats&amp;quot;&lt;br /&gt;
   AuthDigestDomain /awstats http://www.teteve.fr/awstats&lt;br /&gt;
   AuthDigestProvider file&lt;br /&gt;
   AuthUserFile /etc/apache2/.awstats.pwd&lt;br /&gt;
   Require valid-user&lt;br /&gt;
   Options +ExecCGI&lt;br /&gt;
   AllowOverride None&lt;br /&gt;
   Order allow,deny&lt;br /&gt;
   Allow from all&lt;br /&gt;
 &amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039; a2ensite stats.conf&lt;br /&gt;
 Enabling site stats.&lt;br /&gt;
 To activate the new configuration, you need to run:&lt;br /&gt;
  service apache2 reload&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039;service apache2 reload&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Je n&amp;#039;explique pas le fonctionnement du &amp;quot;AuthDigestDomain&amp;quot; : ça fonctionne pour tous les sites : www.mondomaine.fr/awstats avec le même et unique fichier de conf...&amp;lt;br /&amp;gt;&lt;br /&gt;
recopier le fichier de conf par défaut :&lt;br /&gt;
 # &amp;#039;&amp;#039;&amp;#039;cp /etc/awstats/awstats.local.conf /etc/awstats/awstats.www.teteve.fr.conf&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Config ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;EN COURS...&amp;lt;/span&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Extrait de mon fichier de config, à rapprocher de la [[Apache#Les_fichiers_de_conf|Conf d&amp;#039;Apache]] et des [[Apache#Les_vhosts|vhosts]]... &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 LogFile=&amp;quot;/var/log/apache2/log/teteve.log&amp;quot;&lt;br /&gt;
 LogType=W&lt;br /&gt;
 &lt;br /&gt;
 J&amp;#039;ai barré les variables ne correspondant pas à un serveur web. A reprendre dans le cas d&amp;#039;un autre type de serveur.&lt;br /&gt;
 # Enter here your log format (Must match your web server config. See setup&lt;br /&gt;
 # instructions in documentation to know how to configure your web server to&lt;br /&gt;
 # have the required log format).&lt;br /&gt;
 # Possible values: 1,2,3,4 or &amp;quot;your_own_personalized_log_format&amp;quot;&lt;br /&gt;
 # 1 - Apache or Lotus Notes/Domino native combined log format (NCSA combined/XLF/ELF log format)&lt;br /&gt;
 # 2 - IIS or ISA format (IIS W3C log format). See FAQ-COM115 For ISA.&lt;br /&gt;
 # 3 - Webstar native log format.&lt;br /&gt;
 # 4 - Apache or Squid native common log format (NCSA common/CLF log format)&lt;br /&gt;
 #     With LogFormat=4, some features (browsers, os, keywords...) can&amp;#039;t work.&lt;br /&gt;
 # &amp;quot;your_own_personalized_log_format&amp;quot; = If your log is ftp, mail or other format,&lt;br /&gt;
 #     you must use following keys to define the log format string (See FAQ for&lt;br /&gt;
 #     ftp, mail or exotic web log format examples):&lt;br /&gt;
 #   %host             Client hostname or IP address (or Sender host for mail log)&lt;br /&gt;
 &amp;lt;s&amp;gt;#   %host_r           Receiver hostname or IP address (for mail log)&amp;lt;/s&amp;gt;&lt;br /&gt;
 #   %lognamequot      Authenticated login/user with format: &amp;quot;john&amp;quot;&lt;br /&gt;
 #   %logname          Authenticated login/user with format: john&lt;br /&gt;
 #   %time1            Date and time with format: [dd/mon/yyyy:hh:mm:ss +0000] or [dd/mon/yyyy:hh:mm:ss]&lt;br /&gt;
 #   %time2            Date and time with format: yyyy-mm-dd hh:mm:ss&lt;br /&gt;
 #   %time3            Date and time with format: Mon dd hh:mm:ss or Mon dd hh:mm:ss yyyy&lt;br /&gt;
 #   %time4            Date and time with unix timestamp format: dddddddddd&lt;br /&gt;
 #   %methodurl        Method and URL with format: &amp;quot;GET /index.html HTTP/x.x&amp;quot;&lt;br /&gt;
 #   %methodurlnoprot  Method and URL with format: &amp;quot;GET /index.html&amp;quot;&lt;br /&gt;
 #   %method           Method with format: GET&lt;br /&gt;
 #   %url              URL only with format: /index.html&lt;br /&gt;
 #   %query            Query string (used by URLWithQuery option)&lt;br /&gt;
 #   %code             Return code status (with format for web log: 999)&lt;br /&gt;
 #   %bytesd           Size of document in bytes&lt;br /&gt;
 #   %refererquot      Referer page with format: &amp;quot;http://from.com/from.htm&amp;quot;&lt;br /&gt;
 #   %referer          Referer page with format: http://from.com/from.htm&lt;br /&gt;
 #   %uabracket        User agent with format: [Mozilla/4.0 (compatible, ...)]&lt;br /&gt;
 #   %uaquot           User agent with format: &amp;quot;Mozilla/4.0 (compatible, ...)&amp;quot;&lt;br /&gt;
 #   %ua               User agent with format: Mozilla/4.0_(compatible...)&lt;br /&gt;
 #   %gzipin           mod_gzip compression input bytes: In:XXX&lt;br /&gt;
 #   %gzipout          mod_gzip compression output bytes &amp;amp; ratio: Out:YYY:ZZpct.&lt;br /&gt;
 #   %gzipratio        mod_gzip compression ratio: ZZpct.&lt;br /&gt;
 #   %deflateratio     mod_deflate compression ratio with format: (ZZ)&lt;br /&gt;
 &amp;lt;s&amp;gt;#   %email            EMail sender (for mail log)&amp;lt;/s&amp;gt;&lt;br /&gt;
 &amp;lt;s&amp;gt;#   %email_r          EMail receiver (for mail log)&amp;lt;/s&amp;gt;&lt;br /&gt;
 #   %virtualname      Web sever virtual hostname. Use this tag when same log&lt;br /&gt;
 #                     contains data of several virtual web servers. AWStats&lt;br /&gt;
 #                     will discard records not in SiteDomain nor HostAliases&lt;br /&gt;
 #   %cluster          If log file is provided from several computers (merged by&lt;br /&gt;
 #                     logresolvemerge.pl), use this to define cluster id field.&lt;br /&gt;
 #   %extraX           Another field that you plan to use for building a&lt;br /&gt;
 #                     personalized report with ExtraSection feature (See later).&lt;br /&gt;
 #   If your log format has some fields not included in this list, use:&lt;br /&gt;
 #   %other            Means another not used field&lt;br /&gt;
 #   %otherquot        Means another not used double quoted field&lt;br /&gt;
 #&lt;br /&gt;
 # Examples for Apache combined logs (following two examples are equivalent):&lt;br /&gt;
 # LogFormat = 1&lt;br /&gt;
 # LogFormat = &amp;quot;%host %other %logname %time1 %methodurl %code %bytesd %refererquot %uaquot&amp;quot;&lt;br /&gt;
 #&lt;br /&gt;
 # Example for IIS:&lt;br /&gt;
 # LogFormat = 2&lt;br /&gt;
 #&lt;br /&gt;
 LogFormat = %virtualname %host %logname %time1 %methodurl %code %bytesd %refererquot %uaquot&lt;br /&gt;
 &lt;br /&gt;
 LogFile=&amp;quot;/var/log/apache2/vhosts/teteve.log&amp;quot;&lt;br /&gt;
 LogType=W&lt;br /&gt;
 LogFormat = %virtualname %host %logname %time1 %methodurl %code %bytesd %refererquot %uaquot&lt;br /&gt;
 LogSeparator=&amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai été obligé de rajouter %bytesd sinon awstats refuse d&amp;#039;analyser les logs.&lt;br /&gt;
De même, je n&amp;#039;ai pas réussi à faire passer un &amp;quot;virtualname:port&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Commande ==&lt;br /&gt;
&lt;br /&gt;
Pour lancer l&amp;#039;update manuellement (ou à rajouter dans un cron...)&lt;br /&gt;
 /usr/lib/cgi-bin/awstats.pl -config=www.teteve.fr&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Serveur dédié]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Debian]]&lt;br /&gt;
[[Catégorie:Procédures]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Divers_VB</id>
		<title>Divers VB</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Divers_VB"/>
				<updated>2017-03-24T09:36:50Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : Page créée avec « === Formule Excel =&amp;gt; Formule VBA === Pour utiliser une formule Excel dans une macro VB, il nous faut son équivalence en VB. &amp;lt;br /&amp;gt; Deux façons &amp;quot;simples&amp;quot; se présentent :... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Formule Excel =&amp;gt; Formule VBA ===&lt;br /&gt;
Pour utiliser une formule Excel dans une macro VB, il nous faut son équivalence en VB. &amp;lt;br /&amp;gt;&lt;br /&gt;
Deux façons &amp;quot;simples&amp;quot; se présentent : faire une macro enregistrée, ou mettre ce code :&lt;br /&gt;
 Sub Trad()&lt;br /&gt;
   Range(&amp;quot;B2&amp;quot;) = &amp;quot;&amp;#039;&amp;quot; &amp;amp; Range(&amp;quot;A2&amp;quot;).Formula&lt;br /&gt;
 End Sub&lt;br /&gt;
Il ne vous reste plus qu&amp;#039;à mettre votre formule dans la cellule &amp;quot;A1&amp;quot; pour voir apparaître son équivalence en &amp;quot;A2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Compteur de doublons ===&lt;br /&gt;
&lt;br /&gt;
Dans un classeur Excel, permet de vérifier dans une liste s&amp;#039;il n&amp;#039;y a pas de doublon...&lt;br /&gt;
 Sub compte()&lt;br /&gt;
 Dim lastrow, tab, compteur&lt;br /&gt;
 lastrow = Range(&amp;quot;A1&amp;quot;).End(xlDown).Row&lt;br /&gt;
 Set tab = ThisWorkbook.Sheets(1).Range(&amp;quot;A1:A&amp;quot; &amp;amp; lastrow)&lt;br /&gt;
 For i = 1 To lastrow&lt;br /&gt;
     compteur = Application.WorksheetFunction.CountIf(tab, Cells(i, 1).Value)&lt;br /&gt;
     If compteur &amp;gt; 1 Then&lt;br /&gt;
         Cells(i, 2).Value = compteur &amp;amp; &amp;quot; x &amp;quot; &amp;amp; Cells(i, 1).Value&lt;br /&gt;
     End If&lt;br /&gt;
 Next&lt;br /&gt;
 MsgBox &amp;quot;Script fini&amp;quot;&lt;br /&gt;
 End Sub&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Windows]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=Connexion_AD</id>
		<title>Connexion AD</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=Connexion_AD"/>
				<updated>2017-03-24T09:35:50Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : Page créée avec « == Connexions avec login/password en &amp;quot;GetObject&amp;quot; ==  === Connexion à AD ===   Sub main() &amp;lt;br/&amp;gt;  Dim DSO, oDSO, oUser  Dim mail, newmail  Dim DnName &amp;lt;br/&amp;gt;  Const ADS_SECUR... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Connexions avec login/password en &amp;quot;GetObject&amp;quot; ==&lt;br /&gt;
&lt;br /&gt;
=== Connexion à AD ===&lt;br /&gt;
&lt;br /&gt;
 Sub main() &amp;lt;br/&amp;gt;&lt;br /&gt;
 Dim DSO, oDSO, oUser&lt;br /&gt;
 Dim mail, newmail&lt;br /&gt;
 Dim DnName &amp;lt;br/&amp;gt;&lt;br /&gt;
 Const ADS_SECURE_AUTHENTICATION = &amp;amp;H1&lt;br /&gt;
 Const ADS_SERVER_BIND = &amp;amp;H200&amp;lt;br/&amp;gt;&lt;br /&gt;
 DnName = &amp;quot;cn=Utilisateur,ou=Users,dc=domaine,dc=fr&amp;quot;&lt;br /&gt;
 Set dso = GetObject(&amp;quot;LDAP:&amp;quot;)&lt;br /&gt;
 Set oDSO = dso.OpenDSObject(&amp;quot;LDAP://&amp;quot; &amp;amp; DnName, &amp;quot;domaine\login&amp;quot;, &amp;quot;password&amp;quot;, ADS_SECURE_AUTHENTICATION Or ADS_SERVER_BIND)&lt;br /&gt;
 mail = oUser.EmailAddress&lt;br /&gt;
 newmail = Replace(mail, &amp;quot;domaine.fr&amp;quot;, &amp;quot;vide.fr&amp;quot;)&lt;br /&gt;
 oUser.Put &amp;quot;Mail&amp;quot;, newmail&lt;br /&gt;
 oUser.SetInfo &amp;lt;br/&amp;gt;&lt;br /&gt;
 End Sub&lt;br /&gt;
&lt;br /&gt;
=== Connexion à ADAM ===&lt;br /&gt;
&lt;br /&gt;
 Sub main() &amp;lt;br/&amp;gt;&lt;br /&gt;
 Dim DSO, objGrp, element, pathperson &amp;lt;br/&amp;gt;&lt;br /&gt;
 Const ADS_SECURE_AUTHENTICATION = &amp;amp;H1 &amp;lt;br/&amp;gt;&lt;br /&gt;
 pathperson = &amp;quot;LDAP://serveur.domaine.tld:port-eventuel/CN=NomGroupe,CN=OU,O=ORGANISATION&amp;quot;&lt;br /&gt;
 Set DSO = GetObject(&amp;quot;LDAP:&amp;quot;)&lt;br /&gt;
 Set objGrp = DSO.OpenDSObject(pathperson, &amp;quot;domaine.tld\user&amp;quot;, &amp;quot;password&amp;quot;, ADS_SECURE_AUTHENTICATION)&lt;br /&gt;
 &amp;#039;MsgBox objUser.Get(&amp;quot;diag-profilApplicatif&amp;quot;)&lt;br /&gt;
 For Each element In objGrp.Members&lt;br /&gt;
     If element.Class = &amp;quot;diag-personne&amp;quot; Then&lt;br /&gt;
         MsgBox element.uid&lt;br /&gt;
     End If&lt;br /&gt;
 Next&lt;br /&gt;
 Set DSO = Nothing&lt;br /&gt;
 Set objGrp = Nothing &amp;lt;br/&amp;gt;&lt;br /&gt;
 End Sub&lt;br /&gt;
&lt;br /&gt;
== Connexions avec login/password et une requête LDAP ==&lt;br /&gt;
&lt;br /&gt;
=== Connexion à AD ===&lt;br /&gt;
&lt;br /&gt;
 Sub descri() &amp;lt;br/&amp;gt;&lt;br /&gt;
 Const ADS_SCOPE_SUBTREE = 2&lt;br /&gt;
 Dim objConnection, objCommand, objRecordSet, stru, descri &amp;lt;br/&amp;gt;&lt;br /&gt;
 usr = &amp;quot;Teteve Vinc&amp;quot;&lt;br /&gt;
 Set objConnection = CreateObject(&amp;quot;ADODB.Connection&amp;quot;)&lt;br /&gt;
 Set objCommand = CreateObject(&amp;quot;ADODB.Command&amp;quot;)&lt;br /&gt;
 objConnection.Provider = &amp;quot;ADsDSOObject&amp;quot;&lt;br /&gt;
 objConnection.Properties(&amp;quot;User ID&amp;quot;) = &amp;quot;CN=Teteve,OU=USERS,OU=INFRA,DC=DOMAINE,DC=tld&amp;quot;&lt;br /&gt;
 objConnection.Properties(&amp;quot;Password&amp;quot;) = &amp;quot;MOTDEPASSETOPSECRETDEFENSE&amp;quot;&lt;br /&gt;
 objConnection.Open &amp;quot;Active Directory Provider&amp;quot;&lt;br /&gt;
 Set objCommand.ActiveConnection = objConnection&lt;br /&gt;
 objCommand.Properties(&amp;quot;Page Size&amp;quot;) = 1000&lt;br /&gt;
 objCommand.Properties(&amp;quot;Searchscope&amp;quot;) = ADS_SCOPE_SUBTREE&lt;br /&gt;
 objCommand.CommandText = &amp;quot;SELECT * FROM &amp;#039;LDAP://domaine.tld/DC=domaine,DC=tld&amp;#039; WHERE Name = &amp;#039;&amp;quot; &amp;amp; usr &amp;amp; &amp;quot;&amp;#039;&amp;quot;&lt;br /&gt;
 Set objRecordSet = objCommand.Execute&lt;br /&gt;
 If objRecordSet.RecordCount = 0 Then&lt;br /&gt;
   MsgBox &amp;quot;Any result&amp;quot;&lt;br /&gt;
   Else&lt;br /&gt;
   descri = objRecordSet(0)&lt;br /&gt;
 End If&lt;br /&gt;
 MsgBox descri &amp;lt;br/&amp;gt;&lt;br /&gt;
 End Sub&lt;br /&gt;
&lt;br /&gt;
=== Connexion à ADAM ===&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Informatique]]&lt;br /&gt;
[[Catégorie:Système]]&lt;br /&gt;
[[Catégorie:Windows]]&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	<entry>
		<id>http://www.teteve.fr/wiki/index.php?title=VPS</id>
		<title>VPS</title>
		<link rel="alternate" type="text/html" href="http://www.teteve.fr/wiki/index.php?title=VPS"/>
				<updated>2017-03-24T09:34:36Z</updated>
		
		<summary type="html">&lt;p&gt;Teteve : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suite à l&amp;#039;abandon du serveur dédié sous Proxmox, nous sommes passés à une configuration à 3 VPS.&lt;br /&gt;
Le premier s&amp;#039;occupe du DNS, les deux autres sont les serveurs web (prod/homol).&lt;br /&gt;
&lt;br /&gt;
Après l&amp;#039;installation d&amp;#039;une distribution Debian 8 amd64, configuration commune &amp;quot;de base&amp;quot; :&lt;br /&gt;
&lt;br /&gt;
 # passwd&lt;br /&gt;
 	Enter new UNIX password:&lt;br /&gt;
 	Retype new UNIX password:&lt;br /&gt;
 	passwd: password updated successfully&lt;br /&gt;
 # vim /etc/apt/sources.list&lt;br /&gt;
 	# Pour les installations, à désactiver pour la mise en place des mises à jour automatiques&lt;br /&gt;
 	deb http://ftp.debian.org/debian/ jessie main contrib non-free&lt;br /&gt;
 	# Mises à jour de sécurité (à exécuter en automatique)&lt;br /&gt;
 	deb http://security.debian.org/ jessie/updates main contrib non-free&lt;br /&gt;
 # apt-get update &amp;amp;&amp;amp; apt-get dist-upgrade&lt;br /&gt;
 	The following packages will be upgraded:&lt;br /&gt;
 	[...]&lt;br /&gt;
 # apt-get install zsh&lt;br /&gt;
 # chsh&lt;br /&gt;
 	/bin/zsh&lt;br /&gt;
 # wget http://formation-debian.via.ecp.fr/fichiers-config.tar.gz &amp;amp;&amp;amp; tar xzf fichiers-config.tar.gz &amp;amp;&amp;amp; cd fichiers-config &amp;amp;&amp;amp; cp z* /etc/zsh/ &amp;amp;&amp;amp; cp dir_colors /etc/ &amp;amp;&amp;amp; cp vimrc /etc/vim/&lt;br /&gt;
 # cd .. &amp;amp;&amp;amp; rm -rf fichiers-config*&lt;br /&gt;
Récupérer grâce à un traceroute la passerelle du VPS&lt;br /&gt;
 # vim /etc/network/interfaces&lt;br /&gt;
 	auto eth0&lt;br /&gt;
 	iface eth0 inet static&lt;br /&gt;
 		address 137.74.XX.YY&lt;br /&gt;
 		netmask 255.255.255.255&lt;br /&gt;
 		post-up /sbin/ip route add 137.74.VV.1 dev eth0&lt;br /&gt;
 		post-up /sbin/ip route add default via 137.74.VV.1&lt;br /&gt;
 		pre-down /sbin/ip route del default via 137.74.VV.1&lt;br /&gt;
 		pre-down /sbin/ip route del 137.74.VV.1 dev eth0&lt;br /&gt;
 		dns-nameserver 213.186.33.99&lt;br /&gt;
 		dns-nameserver 188.165.37.32&lt;br /&gt;
 		dns-search teteve.fr&lt;br /&gt;
 	iface eth0 inet6 static&lt;br /&gt;
 		address 2001:41d0:302:ZZZ::WWW&lt;br /&gt;
 		netmask 64&lt;br /&gt;
 		gateway 2001:41d0:302:ZZZ::1&lt;br /&gt;
 # service networking restart&lt;br /&gt;
 # vim /etc/sysctl.conf:&lt;br /&gt;
 	net.ipv6.conf.eth0.autoconf=0&lt;br /&gt;
 	net.ipv6.conf.eth0.accept_ra=0&lt;br /&gt;
 # sysctl -p&lt;br /&gt;
 # vim /etc/ssh/sshd_config&lt;br /&gt;
 	Changement du port si nécessaire&lt;br /&gt;
 # service ssh restart&lt;br /&gt;
 # vim /etc/hosts&lt;br /&gt;
 # vim /etc/hostname&lt;br /&gt;
 # vim /etc/resolv.conf&lt;br /&gt;
&lt;br /&gt;
 ***********************************************************************&lt;br /&gt;
 suggestions de http://docs.ovh.ca/fr/guides-network-ipv6.html :&lt;br /&gt;
 Ajout de :&lt;br /&gt;
     post-up /sbin/ip -f inet6 route add 2607:5300:60:47ff:ff:ff:ff:ff dev eth0&lt;br /&gt;
     post-up /sbin/ip -f inet6 route add default gw 2607:5300:60:47ff:ff:ff:ff:ff&lt;br /&gt;
     pre-down /sbin/ip -f inet6 route del 2607:5300:60:47ff:ff:ff:ff:ff dev eth0&lt;br /&gt;
     pre-down /sbin/ip -f inet6 route del default gw 2607:5300:60:47ff:ff:ff:ff:ff&lt;br /&gt;
 ***********************************************************************&lt;/div&gt;</summary>
		<author><name>Teteve</name></author>	</entry>

	</feed>