Un site de cuisine …
Voila,je me baladais sur le net et je trouve http://trouvelarecette.com/
Reprise
Finis le laiser aller,je vous promet deux bons articles par semaines :p .
Casimir à la Gay pride
Voila tout :p .

iTouch : La livraison est lente
Maintenant une semaine que j’attend mon iPod Touch … Livraison PixMania lente . Bref,la nuit va être lente car normalement,je le reçois demain :p .
EDIT : iTouch V2 reçu .
Sécurisation de PHP et Apache2 avec le patch suhosin | Comment faire un panel (part2)
Voila, la suite comme promis
.
Le Patch suhogezaz¹”(’ quoi ! ?
Non, non le Patch Suhosin , il est normalement installé avec php et apache , mais , il faut vérifier qu’il y est .
entrez une page qui génerera une erreur 404 (par exemple) .
regardez le pied de page , vous devez trouver :
Apache/2.2.9 (Debian) PHP/5.2.6-5 with Suhosin-Patch Server at 127.0.0.1 Port 80==> Si oui, le patch suhosin est installé , il ne reste plus qu’a le configurer
.
=X> Sinon,le patch suhosin n’est pas installé .
avant de continuer , que vous vous demandez à quoi sert ce fameux patch , il va servir à renforcer la sécurité de php et apache , nottament pour l’utilisation d’un service d’hébergement ou autre site ou l’utilisateur peut uploader des fichier de scripts sur le serveur .
Il peut également servir à corriger :
- le dossier de cache de php , maintenant modifiable pour chaque utilisateur
- La création d’un dossier cgi-bin (pou y placer … des scripts CGI ^^ ) .
Installation du patch suhosin :
Page de téléchargement : http://www.hardened-php.net/suhosin/download.html
Je vous laisse l’installer seul , vous êtes grand maintenant , voici le manuel d’installation : http://www.hardened-php.net/suhosin/how_to_install_or_upgrade.html .
Application du patch suhosin :
Utilisation d’un dossier CGI-BIN :
LoadModule cgi_module modules/mod_cgi.so
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
#
<Directory "/var/www/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
Vous pouvez biensur modifier ce dossier
.
Administrer sont serveur via une interface web ; ou comment faire un panel facilement (partie 1 )
Ce matin,c’est décider , le ciel bleu me donne des idées . Je me lance sur le sujet le plus chiant …
Vous allez apprendre à installer CODER un panel pour votre serveur . Que ce soit pour ajouter une utilisateur , SQL , FTP, ou linux , il y en aura pour tous les goûts :p .
Voila ce qu’il faut pour commencer :
- Un serveur (ou un simple PC relié à internet) disposant de Debian (La version Lenny de préférence , elle n’est pas “stable” selon debian.org mais fonctionne chez la majeur des personnes sans aucun soucis (dont moi ) .
- Et c’est tous … ha , non . il faut quelqu’un pour piloter ce bolide (en l’occurence : toi ) .
Et c’est vraiment tous (c’est court nan :p ? ) .
Installation du serveur web
Bon, alors il faut apache 2 et quelques mods :
apt-get install apache2 apache2-php5 php5-gd
Installation du serveur Mysql
simple encore : apt-get install mysql mysql-server
Puisqu’on a mysql , php5 et apache2 , pourquoi ne pas tester un peu le tout ?
Téléchargez phpmyadmin : ici , via sourceforge.net
Décompréssez-le et faîtes un dossier /var/www/phpmyadmin/ puis placez y le contenu de l’archive dans ce dossier .
Normalement , vous devrez pouvoir accéder depuis http://votremachine/phpmyadmin/ à … phpmyadmin !
Utilisez comme utilisateur root et aucun mot de passe .
Attention : modifiez immédiatement le mot de passe root mysql , en effet , vous avez pu accédez à mysql ainsi, ce qui signifie que n’importe quelle personne peut accéder à vos bases de données mysql , en plus de modifier le mot de passe , je vous conseil de restraindre mysql à localhost (script : mysql secure installation ) .
Installation du serveur FTP et configuration
Ici , je considère que vous aimez mysql , on va donc stocker les utilisateurs ftp dans mysql .
Attention : une fois de plus , il faut faire trés attention à la sécurité , le moins petit détaille peut ouvrir le serveur aux hackers .
Installation : apt-get install proftpd proftpd-mod-mysql
J’usqu’a là, c’était trop simple non ? C’est maintenant que sa commence à se corser
.
On a quelques modifications à faire avant de recharger le serveur .
Fichier /etc/proftpd/proftpd.conf :
Rajoutez :
RequireValidShell off
<IfModule mod_sql.c>
SQLBackend mysql
</IfModule>
# Mod MySQL
# =========
# Les mots de passe sont cryptes dans la base avec la fonction ENCRYPT (MySQL)
SQLAuthTypes Crypt
SQLAuthenticate users* groups*
# Modifiez cette ligne selon l’utilisateur et le mot de passe definit plutot
SQLConnectInfo proftpd@localhost proftpd password
# On donne a ProFTPd le nom des colonnes de la table usertable
SQLUserInfo ftpuser userid passwd uid gid homedir shell
SQLUserWhereClause “LoginAllowed = ‘true’”
# On donne a ProFTPd le nom des colonnes de la table “grouptable”
SQLGroupInfo ftpgroup groupname gid members
# Creer le repertoire home de l’utilisateur si il n’existe pas
SQLHomedirOnDemand on
# Met a jour les compteurs a chaque connection d’un utilisateur
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE “count=count+1, accessed=now() WHERE userid=’%u’” ftpuser
#Met a jour les compteurs a chaque upload ou download d’un utilisateur
SQLLog STOR,RETR modified
SQLNamedQuery modified UPDATE “modified=now() WHERE userid=’%u’” ftpuser
# Mod quota
# =========
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on
# Definit les requetes SQL pour que ProFTPd recupere les infos sur les quotas
SQLNamedQuery get-quota-limit SELECT “name, quota_type, par_session, limit_type, bytes_up_limit, bytes_down_limit, bytes_transfer_limit, files_up_limit, files_down_limit, files_transfer_limit FROM ftpquotalimits WHERE name = ‘%{0}’ AND quota_type = ‘%{1}’”
SQLNamedQuery get-quota-tally SELECT “name, quota_type, bytes_up_total, bytes_down_total, bytes_transfer_total, files_up_total, files_down_total, files_transfer_total FROM ftpquotatotal WHERE name = ‘%{0}’ AND quota_type = ‘%{1}’”
SQLNamedQuery update-quota-tally UPDATE “bytes_up_total = bytes_up_total + %{0}, bytes_down_total = bytes_down_total + %{1}, bytes_transfer_total = bytes_transfer_total + %{2}, files_up_total = files_up_total + %{3}, files_down_total = files_down_total + %{4}, files_transfer_total = files_transfer_total + %{5} WHERE name = ‘%{6}’ AND quota_type = ‘%{7}’” ftpquotatotal
SQLNamedQuery insert-quota-tally INSERT “%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}” ftpquotatotal
QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally
# Gestion des logs
# ================
# Enregistre les requetes SQL dans /var/log/proftpd/mysql.log
SQLLogFile /var/log/proftpd/mysql.log
# Enregistre les authentifications
LogFormat auth “%v [%P] %h %t \”%r\” %s”
ExtendedLog /var/log/proftpd/auth.log AUTH auth
# Enregistre les acces aux fichiers
LogFormat write “%h %l %u %t \”%r\” %s %b”
ExtendedLog /var/log/proftpd/access.log WRITE,READ write
Pensez à ajouter l'utilisateur mysql de proftpd et lui donner accés à ces tables :–
– Table structure for table `ftpgroup`
–
CREATE TABLE `ftpgroup` (
`groupname` varchar(16) NOT NULL DEFAULT ”,
`gid` smallint(6) NOT NULL DEFAULT ‘5500′,
`members` varchar(16) NOT NULL DEFAULT ”,
KEY `groupname` (`groupname`)
) TYPE=MyISAM COMMENT=‘Table des groupes ProFTPD’;
–
– Table structure for table `ftpquotalimits`
–
CREATE TABLE `ftpquotalimits` (
`name` varchar(30) DEFAULT NULL,
`quota_type` enum(‘user’,‘group’,‘class’,‘all’) NOT NULL DEFAULT ‘user’,
`par_session` enum(‘false’,‘true’) NOT NULL DEFAULT ‘false’,
`limit_type` enum(’soft’,‘hard’) NOT NULL DEFAULT ’soft’,
`bytes_up_limit` float NOT NULL DEFAULT ‘0′,
`bytes_down_limit` float NOT NULL DEFAULT ‘0′,
`bytes_transfer_limit` float NOT NULL DEFAULT ‘0′,
`files_up_limit` int(10) UNSIGNED NOT NULL DEFAULT ‘0′,
`files_down_limit` int(10) UNSIGNED NOT NULL DEFAULT ‘0′,
`files_transfer_limit` int(10) UNSIGNED NOT NULL DEFAULT ‘0′
) TYPE=MyISAM COMMENT=‘Table des quotas ProFTPD’;
–
– Table structure for table `ftpquotatotal`
–
CREATE TABLE `ftpquotatotal` (
`name` varchar(30) NOT NULL DEFAULT ”,
`quota_type` enum(‘user’,‘group’,‘class’,‘all’) NOT NULL DEFAULT ‘user’,
`bytes_up_total` float NOT NULL DEFAULT ‘0′,
`bytes_down_total` float NOT NULL DEFAULT ‘0′,
`bytes_transfer_total` float NOT NULL DEFAULT ‘0′,
`files_up_total` int(10) UNSIGNED NOT NULL DEFAULT ‘0′,
`files_down_total` int(10) UNSIGNED NOT NULL DEFAULT ‘0′,
`files_transfer_total` int(10) UNSIGNED NOT NULL DEFAULT ‘0′
) TYPE=MyISAM COMMENT=‘Table des compteurs des quotas ProFTPD’;
–
– Table structure for table `ftpuser`
–
CREATE TABLE `ftpuser` (
`id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`userid` varchar(32) NOT NULL DEFAULT ”,
`passwd` varchar(32) NOT NULL DEFAULT ”,
`uid` smallint(6) NOT NULL DEFAULT ‘5500′,
`gid` smallint(6) NOT NULL DEFAULT ‘5500′,
`homedir` varchar(255) NOT NULL DEFAULT ”,
`shell` varchar(16) NOT NULL DEFAULT ‘/bin/false’,
`count` int(11) NOT NULL DEFAULT ‘0′,
`accessed` datetime NOT NULL DEFAULT ‘0000-00-00 00:00:00′,
`modified` datetime NOT NULL DEFAULT ‘0000-00-00 00:00:00′,
`LoginAllowed` enum(‘true’,‘false’) NOT NULL DEFAULT ‘true’,
PRIMARY KEY (`id`)
) TYPE=MyISAM COMMENT=‘Table des utlisateurs ProFTPD’;
il faut également modifier les lignes de contenant le mot de passe et l’utilisateur mysql dans la configuration de mysql .
ensuite, ajoutez ou décommentez la ligne : LoadModule mod_sql.c dans /etc/proftpd/modules.conf
on peut maintenant, et seulement maintenant faire : /etc/init.d/proftpd restart
La magie dans tous sa , c’est qu’on pourra ajouter et bidouiller des users sans recharger proftpd
.
Je n’ai pas finit
.
Il faut maintenant ajouter un utilisateur à ce joyeu bordel
.
INSERT INTO `ftpuser` ( `id`, `userid`, `passwd`, `uid`, `gid`, `homedir`, `shell`, `count`, `accessed` , `modified`, `LoginAllowed` ) VALUES (”, ‘utilisateurdetest’, ENCRYPT(‘lemotdepasseici’), ‘5500′, ‘5500′, ‘DOSSIER FTP’, ‘/bin/false’, ”, ”, ”, ‘true’ );
Biensur , modifier le dossier , le mot de passe et le nom de l’utilisateur .
Vous pouvez maintenant tester une connexion ftp avec filezilla par exemple .
bon, revenons à nos moutons
.
si proftpd peut manipuler des tables SQL pour gérer les utilisateurs FTP, pourquoi PHP ne le ferais pas ?
Ainsi, avec un script PHP , Shell , ou Python, on peutpiloter le serveur FTPà distance
.
La suite dans le prochain épisode
.
Mes jeux favoris linux (1er du nom)
Voila, j’ai penser que ça serait toujours utile de vous proposer mes favoris .les voila sans plus attendre
.
Extreme Tux Racer
Site officiel : http://www.extremetuxracer.com/ .
On vois tous de suite un screenshot plutôt attrayant
.

Le jeu parraît simple mais peu devenir casse-geule quand on en a trop l’habitude . Le but est pourtant simple : Collecter les poissons et arriver à la ligne d’arrivée avant la fin du temps . Pour ce , vous êtes la mascotte linux (le tux) et sur une banquise peu ordinaire .
Installation : sur debian / ubuntu (ou avec une distribution supportant apt) : apt-get install extremetuxracer
Xmoto
Site officiel : http://xmoto.tuxfamily.org/

Je vais pas expliquer le principe , le screen est plutôt explicite . Enfaite, ce jeu n’est pas neuf , je viens de le redécouvrir . Parmis les fonctions qui m’ont charmé , on peut noter l’apparition de sont propre ghost (fantome) .
Installation : (debian & ubuntu aussi ) apt-get install xmoto
Création du blog !
voila, c’est fait . Je crée le Bloug
.
Commentaires(1)
Leave a Comments
Leave a Comments