Posts tagged ‘debian’

Playing with the shell history on Unix-ish systems

When using the shell on a server, you could type command revealing secrets on your root password or on your server organisation. For instance: just imagine your return keypress has not been working while becoming root, and your « su » password would be written without security asterisk and save in the history…)…

Moreover, it’s sometimes useful to scan your entire history when playing around with your shell.

So you juste have to learn the some shell history tricks command.

How to list the entire shell history ?

Just type « history  »

How to clear the shell history ?

Just type « history -c »

How to avoid having twice the same command in the shell history ?

Just insert this in » ~/.bash_profile: »
export HISTCONTROL=ignoredups

Hope these few tricks could have been useful for you !

27 février 2009 at 20 h 01 min Laisser un commentaire

Debian: installer php et mysql5 avec apache2

Prérequis:

On suppose qu’Apache2 a deja été installé.

Le super-paquet mysql est installé avec apt-get install mysql-server

Php5 est installé de la meme manière avec apt-get install php5

On teste ensuite le bon fonctionnement de PHP, en plaçant un fichier nommé index.php dans /var/www/apache-default/. Dans ce fichier, on écrira un appel vers la fonction <? phpinfo();?> qui affiche les options de configurations de l’interpréteur.

Dans /etc/php5/apache2/php.ini, on va effectuer quelques règlages comme par eemple l’adresse du serveur smtp pour la fonction mail(), ou la redirection des erreurs vers syslog plutot que dans la page web de l’utilisateur.

; For Unix only. You may supply arguments as well (default: « sendmail -t -i »).
DECOMMENTER LA LIGNE QUI SUIT POUR ACTIVER LA FONCTION MAIL (nécessite un serveur smtp)

sendmail_path =/usr/sbin/sendmail -t -f votreadresse@votredomain.net -i

DECOMMENTER LA LIGNE QUI SUIT POUR ACTIVER LES TRACES VIA SYSLOG

error_log = syslog

SUIVRE CE CONSEIL POUR EVITER d’AFFICHER LES ERREURS SUR LES PAGES WEB

; Print out errors (as a part of the output). For production web sites,
; you’re strongly encouraged to turn this feature off, and use error logging
; instead (see below). Keeping display_errors enabled on a production web site
; may reveal security information to end users, such as file paths on your Web
; server, your database schema or other information.
display_errors = Off
Passons au test de mysql: Normalement, l’installation a activé le serveur et placé les scripts de démarrage dans /etc.init.d.. pour s’en convaincre, on demandra à pstree d’afficher les process en cours.

Il faut ensuite atteribuer un password a l’utilisateur root muysql.

Pour cela, taper: mysqladmin -u root VOTREPASSWORD.

On pourra tester l’utilisation effective avec le client en cli avec mysql u root -ppassword

Il faut maintenant connecter mysql à php. Pour cela on va installer le connecteur: apt-get install php5-mysql

Le test de fait avec un petit script basique à placer dans /var/www/apache-default/

<?php
$dbhost = ‘localhost’;
$dbuser = ‘root’;
$dbpass = ‘password’;

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die (‘Error connecting to mysql’);
$dbname = ‘mysql’;
mysql_select_db($dbname);
?>

Et voila, il ne reste plus qu’à installer vos logiciels favoris écrits en php… Prochaine étape pour moi: fluxbb (le nouveau nom de punbb…) A bientôt !

15 septembre 2008 at 17 h 16 min 1 commentaire

Debian: savoir a quel package appartient un programme

Le cas qui m’a été présenté était le suivant: pas envie de garder inetd qui etait relancé à chaque démarrage malgré l’absence de script dans /etc/rc.d/

Si inetd se relance après un reboot malgré un update-rc.d -f inetd remove.. alors une solution possible est de désinstaller inetd.

Seulement, voila: comment désinstaller un programme alors que apt-get ne désinstalle que des package ? Comment savoir dans quel package se trouve inetd ?

On peut faire un petite recherche sur le web… J’ai ainsi cru que inetd provenait du package netkit-inetd. Perdu, car c’est valable uniquement pour debian  » woody »…

Ensuite, j’ai tenté d’utiliser apt-file search inetd… Décourageant et inutile pour trouver comment désinstaller un paquet fournissant tel ou tel programme.

La solution est ici:

http://packages.debian.org/search?keywords=search

Debian package search permet de savoir qui fournit quoi.

Ainsi inetd est proposé par 2 paquets différents… chez moi c’est openbsd-inetd qui l’amène.

Et voila, plus qu’a donner un petit apt-get –purge remove openbsd-inetd pour aérer un peu la mémoire de notre serveur 🙂

NDA : – -purge est l’option qui permet d’effacer les fichiers de conf associés lors de la désinstallation

14 septembre 2008 at 23 h 14 min Laisser un commentaire

Faire le ménage parmi les daemons de Debian

Suite du post précédent… ou l’on parlait des services par défaut activés sur une Debian.

Voici de quoi faire un peu d’air pour un serveur LAMP…

Premièrement,

atd

Programmateur des taches définies par at… onlui préferera cron et sa crontab…

inetd

Inetd sert a superviser des services… Pour apache / mysql / bind, c’est inutile de l’utiliser. On peut donc sans souci tuer ce démon. De plus, meme si je ne l’utilise pas personnellement, de nombreuses personnes lui préfererons xinetd.

Portmap , rpc.statd

Pas de systeme NFS chez nous, poubelle…

named

Si on utilise pas de serveur de nom (la résolution DNS ne nécessite pas d’etre un serveur de nom) alors pas besoin de Bind… Au suivant !

acpid

les économies d’nénergies… sur un serveur sans écran, sans usb, et qui n’a pas intéret a se mettre en mode sommeil… je pense que c’est inutile. Allez: un de moins.

update-rc.d -f atd remove

update-rc.d -f inetd remove

update-rc.d -f rpc.statd remove

update-rc.d -f portmap remove

update-rc.d -f named remove

Les survivants sont donc pour le moment:

init-+-cron
|-6*
|-klogd
|-ntpd—ntpd
|-sensord
|-snmpd
|-sshd—sshd—sshd—bash
|-syslogd
`-udevd

ntpd

permet de récupérer l’heure sur un serveur NTP

klogd/syslod

Vital pour avoir des logs du kernel / trier les logs proprement dans /var/log

sensord

Un thermotre qui sera bien utile pour savoir si votre dédié a de la fièvre…

sshd

« Essaie de me tuer si tu lose et je ne te parlerai plus! »

snmpd

Pour que le serveur réponde au ping. Pour sécuriser le systeme on préferera d’enlever le démon SNMPD. Libre à vous de l’enlever, toutefois, le serveur ne répondra plus au ping.

cron

pour lancer des taches périodiques

udevd

pas trop d’infos dessus… permet d’avoir une liste de device dynamique, je ne pense pas que ce soit super utile sur un serveur, mais on ne sait jamais…

14 septembre 2008 at 18 h 17 min Laisser un commentaire

Debian : austérité = fiabilité ? pstree et demons à l’installation…

Je viens de passer un serveur dédié sur un systeme debian, après avoir essuyé un probleme de bootloader en tentant d’installer une ubuntu avec une partition etendue… (bug de l’installateur ou probleme de l’hébergeur ?).

Installation sans souci.Premier réflexe: quels sont les processus qui tournent. Je tape pstree, qui me repond un beau « comand not found »…

Pour avoir pstree en ligne de commande sous debian, il faut installer le paquet psmisc:

En root, il faut donc taper apt-get install psmisc, et roule ma poule.

Résultat des courses:

init-+-acpid
|-atd
|-cron
|-6*
|-inetd
|-klogd
|-named—3*[{named}]
|-ntpd—ntpd
|-portmap
|-rpc.statd
|-sensord
|-snmpd
|-sshd—sshd—sshd—bash—su—bash—pstree
|-syslogd
`-udevd

Va falloir faire du ménage…

12 septembre 2008 at 12 h 20 min Laisser un commentaire