Identifiants déconseillés de janvier

Avec 3 jours de retard, mais voici la liste des identifiants déconseillés pour janvier. Comme ce sont les identifiants utilisés pour tenter d’entrer sur mes serveurs, il est déconseillé de les utiliser sur les votre, sinon vous allez faciliter la tâche aux pirates.

******************************************************************
Classement des logins utilisés (119):
******************************************************************
root			        205
oracle			        17
postgres			15
sales			        15
nagios			        15
test			 	15
ts			 	13
info			 	13
Administrator		        13
service	        	        12
NULL			 	12
staff			 	9
admin			        8
teamspeak			5
webmaster			5
gustavo			        5
gamefiles			4
db2inst1			4
guest			 	4
samba			        3
upload			        3
alexis			 	3
recruit			        3
user3			 	3
alias			 	3
hlds			 	3
globus			        3
office			 	2
mysql			        2
djeli			 	2
monica			        2
anonymous			2
ts1			 	2
postmaster			2
rpdv			 	2
stud			 	2
db2fenc1			2
ts3			 	2
bingo			 	2
mlmb			 	2
redmine			        2
webadmin			2
shoutcast			2
adempiere			2
administrator		        2
kelvin			        2
test1			 	1
cvsroot			        1
santiago			1
web			 	1
claude		          	1
condor			        1
tt			 	1
grace			 	1
alberto			        1
xtn			 	1
comicup			        1
administratiu		        1
patrick			        1
cstrike			        1
sato			 	1
ts2			 	1
alexandre			1
claudia			        1
www			 	1
library			        1
yoshida			        1
joan			 	1
mvrabel			        1
rp			 	1
anne			 	1
ken			 	1
virtuoso			1
marine			        1
extreme			        1
eggdrop			        1
firebird			1
amanda			        1
joomla			        1
raimundo			1
groundworks		        1
enzo			 	1
apple			 	1
unix			 	1
linux			 	1
Crouse			        1
brc			 	1
ecommerce			1
cyrus			 	1
zoro			 	1
keltika			        1
suzuki			        1
shell			 	1
nobody			        1
oracle1			        1
netdump			        1
andrea			        1
cacti			 	1
bea			 	1
matteo			        1
cvs			 	1
rfmngr			        1
privoxy			        1
user4			 	1
ana			 	1
user1			 	1
prueba			        1
servidor			1
ipbx			 	1
trash			 	1
ftp			 	1
stacy			 	1
a1			 	1
a3			 	1
a2			 	1
lucas			 	1
tomcat			        1
admosfer			1
sg			 	1

Apparition de logins hispaniques. Ça y est, l’Espagne a trouvé mes serveurs!
Un top 10 est classique avec l’apparition de teamspeak en 14e position. Vous constaterez que le mois dernier, les prénoms ont plus été testés que les mois précédents (25 différents quand même). Utiliser son prénom comme login n’est donc pas une bonne idée.

Test (et test1, test2, tests, …) a presque disparu des stats depuis un an. Ça ne doit plus être rentable de tenter de rentrer avec ce login. Par contre, la version espagnoles (prueba) est elle apparue.

Dans le fichier scanresult_janvier fichier complet, vous trouverez aussi le classement par heure des attaques, ainsi que la liste des adresses et ports utilisés.

119 tentatives en janvier, c’est une légère augmentation par rapport à la moyenne (96) mais pas significatif. Les pirates rattrapent t-ils le retard prit pendant les fêtes?

******************************************************************
Nombre de tentatives par plage horaire:
******************************************************************
0-1
1-2
2-3
3-4
4-5
5-6
6-7
7-8
8-9
9-10
10-11	######### (9)
11-12	#### (4)
12-13	################ (16)
13-14	##################### (21)
14-15	############################################# (45)
15-16	############# (13)
16-17	############################### (31)
17-18	###### (6)
18-19	##################################### (37)
19-20	########################### (27)
20-21	########### (11)
21-22	############################### (31)
22-23	######################################## (40)
23-24	################################## (34)

Le matin, c’est assez calme, ça attaque surtout le soir, avec un creux à 17 heures. Ordinateur vérolés du travail éteints avant l’allumage des ordinateurs vérolés des particuliers?
Lorsque j’aurais trouvé le moyen de géolocaliser les adresses, on verra peut être que l’effet est dû à un autre fuseau horaire.
A suivre, donc.

Superviser vos serveurs avec FTPupinfo

Il est toujours pratique d’avoir un oeuil sur les ordinateurs dont on a la charge. Ne serait-ce que pour prévenir avant de guérir. Quand je dis serveurs, c’est tout type de machine linux.

Or, s’il faut se connecter à chacun pour avoir des infos, cela devient vite pénible.

Il existe une pléthore de logiciels dédiés à cet usage. Des simples, comme phpsysinfo, et des poids lourds comme Nagios, zabbix, …

Les logiciels simples peuvent correspondre à un besoin ponctuel, mais manquent souvent des éléments dont on aurait besoin spécifiquement. Les poids lourds du genre sont cauchemardesques à configurer, et c’est souvent sortir le bazooka pour tuer une mouche… Sans compter les failles de sécurités régulières.

J’ai développé un logiciel nommé FTPupinfo destiné, à la base, à mon usage personnel, pour superviser mes serveurs. Puis il a évolué avec le temps pour devenir une application à part entière, située entre les deux catégories dont on a parlé.

Voici un rapide aperçu:

Capture 1

Avantages:

  • Facile à installer (paquet dans les dépôts absolacom)
  • C’est le client qui uploade vers le serveur, pas le serveur qui interroge le client (pas d’ouverture de ports, pas de faille). Pas besoin de se connecter à la machine à surveiller (pas d’ouverture de ports, pas de faille).
  • Paramétrable avec un simple fichier de configuration texte
  • Upload sur le serveur en mode FTP ou rsync (si upload activé, non obligatoire)
  • Copie en local possible des rapports générés
  • Rapide et léger
  • Possibilité d’activer/désactiver chacune des fonctions
  • Personnalisable par skins (que vous pouvez créer/ajouter)
  • Ajout de modules possibles (par exemple pour prendre en charge SNMP)
  • Pensé pour être sécuritaire
  • Possibilité d’exécuter des programmes avant, pendant, après le fonctionnement du logiciel (alertes par mail, nettoyages, …)
  • Possibilité de garder le dernier rapport, un par jour, tous…
  • Le dernier rapport est accessible même si le serveur ne l’est pas
  • Fonctionne sur Debian (et dérivées), Mandriva, Suse (depuis les sources)

Inconvénients:

  • Ne fonctionne pas encore pour Windows (et ce n’est pas une priorité). Fonctionne au strict minimum avec Cygwin avec une version modifiée du programme (contactez moi si vous êtes intéressé).
  • Visualisation en mode décalé. Pas de consultation en direct (le programme est lancé avec une granularité d’une minute).
  • Sans doute Certainement améliorable au niveau du code
  • Disponible uniquement en deb ou en source (si vous voulez packager pour votre distrib, soit vous vous en chargez, soit vous me dites comment faire)
  • Les skins sont moches (si,si. Je sais. Je ne suis pas graphiste, je le reconnais), mais c’est du full CSS (sauf scories) facilement modifiable.¹
  • En anglais pour l’instant (même si c’est peu gênant, le vocabulaire informatique utilisé étant souvent anglais). L’adaptation pour permettre la localisation est en projet.
  • …heu…
Page de statistiques

Page de statistiques

Toutes les infos se trouvent sur le site du projet et vous pouvez voir des exemples sur le site de démo.

Dernière précision, c’est entièrement du GPL gratuit pour la partie cliente (le programme qui tourne sur les ordinateurs). Seule la partie serveur de supervision (optionnelle) est payante.

Il est actuellement utilisé professionnellement par ma société pour superviser les clients, quelques sociétés partenaires et les écoles du département des Pyrénées Orientales équipées de serveurs Eclair (dont j’ai été le développeur initial pour le pôle de compétences de Perpignan) ou Zeli.

Les suggestions, remarques, rapports de bugs sont les bienvenus.

1. message subliminal très subtil 😉 : si vous savez fairedes skins potables, envoyez les moi et je les intègrerais au programme avec vos crédits.

Remettre à zéro le mot de passe admin d’un site Guppy

Principalement pour mémoire:

Quand on a perdu son mot de passe d’administration sur un site Guppy, la FAQ indique de transférer à nouveau le fichier admin/mdp.php sur le site pour revenir au mot de passe par défaut, à savoir pass.

Il est dommage de devoir re-télécharger guppy pour retrouver ce fichier. Sans compter le lancement du logiciel de FTP…

Il est plus facile d’aller modifier le fichier directement par ssh et de remettre le contenu suivant:

<?php
$mdp = « 1a1dc91c907325c69271ddf0c944bc72 »;
?>

Ne pas oublier ensuite de se presser de changer ce mot de passe si on veut éviter les problèmes sur son site!

Identifiants déconseillés de Décembre

Voici la liste des identifiants déconseillés pour décembre. Comme ce sont les identifiants utilisés pour tenter d’entrer sur mes serveurs, il est déconseillé de les utiliser sur les votre, sinon vous allez faciliter la tâche aux pirates.

Vous les avez désormais classés par nombre de tentatives.

    Le contenu suivant est généré à partir des fichiers de logs des ordinateurs
    surveillés et permet de consulter les statistiques d'attaques par force
    brute sur ces ordinateurs.
    La liste des identifiants utilisés permet à l'administrateur intelligent
    de ne pas autoriser ces identifiants sur ses serveurs afin de diminuer
    les risques d'attaque.
    Les protocoles surveillés sont ssh et ftp, si ces services sont activés.

    Si votre adresse IP FIXE apparait dans cette liste, vous devriez vérifier
    que votre ordinateur est sain! Si c'est une IP dynamique, elle risque
    d'être déjà blacklistée sur tous mes serveurs et vous devriez en changer...
    Les valeurs représentent la limite basse, les adresses incriminées étant
    blacklistées pour plusieurs mois après un certain nombre d'essais
    infructueux celles ci n'apparaissent plus dans les statistiques.

******************************************************************
       Classement des logins et des adresses utilisés
                 pour le mois de Dec 2009
            pour des tentatives de connexion
         sur les serveurs de la société Absolacom
******************************************************************
******************************************************************
Classement des logins utilisés (77):
******************************************************************
root			126
admin			27
Administrator	        12
staff			11
sales			10
nagios			7
administrator	        7
guest			6
plcmspip		5
postgres		5
ace		        4
recruit			4
office			3
PlcmSpIp		3
mlmb			3
test			3
delta			3
alias			3
test1			2
fluffy			2
administrador	        2
abcs			2
t1na			2
samba			2
daemon			2
account			2
anonymous		2
a		    	2
db2inst1		2
alexis			2
virtuoso		1
demo			1
slim			1
accounts		1
abel			1
ghost			1
agnieszka		1
agarcia			1
dasusr1			1
www-data		1
administration	        1
mysql			1
kent			1
access			1
codec			1
upload			1
agi		    	1
rob		    	1
eff		    	1
slasher			1
hdexperience	        1
advantage		1
ftp			1
nobody			1
vmail			1
eminem			1
administracion	        1
user			1
adnan			1
c		    	1
b		    	1
acd05			1
d		        1
tomcat			1
sifak			1
patrick			1
adriano			1
accounts1		1
ibiza			1
publica			1
admon			1
r00t			1
adrian			1
lpd			1
adminftp		1
lpa			1
agnes			1

Le top 10 est classique avec cependant un net recul de PlcmSpIp et www-data au profit de guest et ace. A noter, de plus en plus de prénoms francophones. Linux se démocratiserait il en France?

Dans le fichier complet, vous trouverez aussi le classement par heure des attaques, ainsi que la liste des adresses et ports utilisés. Il serait intéressant de dresser une carte de l’origine des attaques, par exemple avec geotool, mais je ne sais pas encore comment faire ça automatiquement ou sans saturer le serveur. Si vous avez des idées, je suis preneur (surtout si c’est du python).

Une précision sur le fait qu’il peut sembler y avoir relativement peu de tentatives (77 ce mois ci): une adresse IP blacklistée sur l’un de mes serveurs se retrouve blacklistée sur l’ensemble de mes serveurs au maximum dans l’heure qui suit. Ça m’a permis de passer en un an d’environ 800 tentatives illégales de login à moins de 100 tentées par mois. De quoi simplifier la vie des firewalls.

******************************************************************
Nombre de tentatives par plage horaire:
******************************************************************
0-1
1-2
2-3
3-4
4-5
5-6
6-7
7-8
8-9
9-10
10-11	################### (19)
11-12	########### (11)
12-13	####### (7)
13-14	### (3)
14-15	######### (9)
15-16	######### (9)
16-17	###################### (22)
17-18	############## (14)
18-19	#################### (20)
19-20	##################### (21)
20-21	################################ (32)
21-22	########### (11)
22-23	############# (13)
23-24	##### (5)

Il est intéressant de remarquer que les attaques se font surtout en fin de journée mais, nouveauté de décembre, alors qu’habituellement le pic se situe entre 18 et 20 heures, ce mois ci il est entre 20 et 21 heures. Effet vacances? Nous verrons en janvier si la tendance se confirme.

C’est vrai qu’il reste encore quelques heures pour finir décembre, mais une bonne partie des serveurs va s’arrêter ce soir pour n’être réactivés qu’à la rentrée. Donc, ces statistiques ne sont pas véritablement complètes mais le peu qu’il manque ne serait de toute façon pas représentatif.

Sur ce, je vous souhaite une bonne année 2010 et m’en vais préparer mon réveillon!

Recevoir les logs par mail

Il peut être intéressant de recevoir les logs de vos ordinateurs par mail pour plusieurs raisons:

  • pour penser à les regarder,
  • pour recevoir les logs de vos serveurs,
  • pour garder un historique des logs et pouvoir remonter dans le temps,
  • générer des statistiques à partir des logs sans se connecter aux serveurs (ce qui est utilisé par exemple pour générer la liste des identifiants déconseillés)

Pour cela, je vous propose d’installer un utilitaire en python développé par mes soins.

ATTENTION: ce programme fonctionne pour Hardy et Jaunty. Il n’a pas été développé ou testé sur Karmic mais sera disponible pour toutes les version X.04 d’Ubuntu.

ATTENTION2: ce programme ne peut fonctionner simplement avec Orange. Pour ce FAI, il faut installer postfix et le paramétrer avec l’authentification sasl. Cela fera l’objet d’un prochain article. Pas de problème chez Free, Alice et SFR.

Zeli-sendlog

zeli-sendlog est un programme python qui va créer une archive des logs de l’ordinateur sur lequel il est installé et va automatiquement l’envoyer par mail aux adresses paramétrées.

Une fois installé, ce programme ne nécessite aucun réglage.

Installation

Il vous faut tout d’abord ajouter les miroirs Absolacom à votre fichier de sources tel qu’indiqué sur cette page. Rechargez la liste des paquets et installez le paquet zeli-sendlog et ses dépendances.

Paramétrage

Pour envoyer un mail, il vous faut trois choses:

  1. un serveur SMTP,
  2. une ou plusieurs adresses de destination,
  3. un nom pleinement qualifié afin que vos mails soient acceptés sans être considérés comme du spam.

Serveur SMTP

Il se règle dans le fichier /etc/smtp_server. Vous indiquez simplement le nom ou l’adresse de votre serveur SMTP. Par exemple, pour free, indiquez simplement smtp.free.fr.

Adresses de destination

Les adresses où seront envoyés les mails s’indiquent dans le fichier /etc/mail_secu.txt. Indiquez sur une ligne les adresses séparées par des virgules.

Si vous n’indiquez qu’une seule adresse, inutile d’ajouter une virgule.

Nom FQDN

Votre machine ne peut envoyer des mails que vers un serveur qui l’autorise. Pour cela, il faut qu’elle soit identifiée, et c’est son nom d’expéditeur qui est utilisé.

Si vous possédez un nom de domaine, éditez le fichier /etc/mailname et indiquez le nom de votre ordinateur ainsi: machine.mondomaine.org.

Identifiez correctement votre ordinateur, ce nom apparaît dans les courriers qui vous sont envoyés et vous permettront de vous y retrouver si vous recevez les logs de plusieurs serveurs.

Lancement en console

Vous pouvez lancer manuellement le programme pour envoyer les logs immédiatement ou pour vérifier son fonctionnement. En cas de problème, celui ci vous est affiché (en anglais) et vous permettra de rechercher une solution.

Dans un terminal, entrez: sudo sendlog

(le programme doit être lancé en root pour pouvoir accéder aux fichiers de log)

Programmation

A l’installation, le programme a paramétré le cron de root afin de lancer l’envoi de mail tous les jours à minuit. Pas avant, sinon il vous manquerait du contenu dans les logs du jour, pas après, sinon ce serait les logs du lendemain.

Faites quelques essais, mais n’envoyez pas beaucoup de mails en peu de temps, cela risquerait de vous faire mettre en quarantaine par votre FAI.

Une fois le logiciel paramétré, il n’y a plus à y toucher.

Servez vous, c’est GPL!

Créer un miroir local Ubuntu

Cet article va vous apprendre à créer un miroir local d’un dépôt Ubuntu sur un ordinateur équipé d’Ubuntu Hardy Heron 8.04.

Les raisons du miroir

Dans mon cas, il s’agit de pouvoir installer des logiciels sur l’ordinateur même lorsque l’accès au net est impossible (train, correspondances…) et de pouvoir mettre sur un réseau le miroir générer pour les mises à jour. Sans compter que le miroir local permet une rapidité d’accès sans commune mesure avec un miroir sur le net.

Synoptique

J’ai la chance d’avoir un portable avec de la place sur le disque dur. Sachez qu’il faut compter environs 37 Go de libre pour le miroir de Hardy aujourd’hui. 40 est un minimum, dans mon cas ce sera 52 Go.

Le portable étant connecté au réseau toutes les nuits, il se mettra à jour vers 6 heures du matin, une heure où je suis sensé dormir.

L’installation d’un serveur apache permettra un accès facile pour les autres ordinateurs du réseau.

Préparation du miroir

Dans mon cas, il s’agit d’une partition dédiée (sda9) . Comme je possède déjà un autre miroir local sur mon réseau, et afin de sauvegarder de la bande passante et du temps, j’effectue une synchronisation entre le miroir local existant et la partition sda9.

Cette étape n’est absolument pas obligatoire mais mon réseau local Gigabit étant bien plus rapide que le net à 10 Mb, j’aurais tort de m’en priver.

Installation du logiciel

sudo apt-get install apt-mirror

Il faut maintenant éditer le fichier /etc/apt/mirror.list afin d’adapter le fonctionnement à la machine.

Le fichier est simple et parlant :

  • set base_path : emplacement où seront copiés les fichiers. Par défaut, ce sera /var/spool/apt-mirror (1). Dans mon cas, ce sera /ubuntu, emplacement où est monté sda9.

Puisque nous avons modifié la chemin par défaut, et que les répertoires nécessaires sont créés lors de l’installation du programme, il faut créer dans /ubuntu les répertoires mirror, skel, var, puis donner les droits sur ces répertoires à l’utilisateur apt-mirror (ce que nous ferons en dernier).

mkdir -p /ubuntu/mirror /ubuntu/skel /ubuntu/var

Comme nous avons modifié les chemins, copions le fichier de nettoyage au nouvel endroit:

cp /var/spool/apt-mirror/var/clean.sh /ubuntu/var/clean.sh

Ne touchez pas aux chemins suivants du fichier de configuration à moins que vous ne sachiez ce que vous faites.

  • set defaultarch: Prend l’architecture du serveur par défaut. Cela correspond à l’architecture voulue du miroir . Dans mon cas: i386
  • set nthreads: 20 par défaut. Définit le nombre de threads qui téléchargeront en parallèle lors de la mise à jour du miroir. Inutile de trop monter ce chiffre: si vous saturez votre bande passante, chaque thread sera limité et vous téléchargerez moins vite tout en consommant plus de processeur.
  • set _tilde (ou set tilde sur les versions avant la 8.04): par défaut 0. Si vous le mettez à 1, permet de remplacer http://addr/~/xxx/yyy par http://addr/%7E/xxx/yyy (sans doute plus portable).

Viennent ensuite les lignes définissant les miroirs que vous voulez cloner en local. Dans mon cas, voici les lignes existantes:

deb http://be.archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb http://be.archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb http://be.archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb http://be.archive.ubuntu.com/ubuntu hardy-backports main restricted universe multiverse

#deb-src http://be.archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-backports main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
#deb-src http://be.archive.ubuntu.com/ubuntu hardy-proposed main restricted universe multiverse


clean http://be.archive.ubuntu.com/ubuntu

La (ou les ) dernière(s) ligne(s) doivent commencer par clean et concerner les miroirs clonés. Elle permettra (pas toujours) de nettoyer le miroir local des paquets n’ayant plus lieu d’être. J’ai pu constater que le lancement manuel de la commande de nettoyage du miroir était plus efficace (au moins sur les versions précédentes de apt-mirror).

Note: pourquoi utiliser les miroirs belges plutôt que les français, puisque je suis en france ? J’ai pu constater que les miroirs français étaient souvent plus longs à répondre et saturés. Je n’ai jamais eu de problèmes avec les miroirs belges. Sans compter qu’il est probable que les linuxiens belges soient moins nombreux que les linuxiens français, d’où une réponse plus rapide. Ou aient des réseau plus adaptés.

Donner les droits sur le répertoire: sudo chown -R apt-mirror:apt-mirror /ubuntu

Mise à jour

Très simple!

  • Soit manuellement en lançant la commande apt-mirror
  • Soit automatiquement par le cron:0 6 * * * /usr/bin/apt-mirror
(1) Au passage, comment saturer une partition var, bloquer les impressions cups, ce qui va saturer /var/log d’erreurs et finir par bloquer le système….

Installer un serveur LAMP avec Ubuntu

Un serveur LAMP signifie Linux Apache Mysql Php. Il est possible d’installer et configurer chacun des services manuellement, mais il existe une autre façon plus simple et moins connue de faire tout ceci en une seule fois.

Dans un terminal, entrez ceci:

sudo tasksel install lamp-server

Et c’est tout!

Ou alors:

sudo tasksel

tasksel

Et sélectionnez LAMP server, ou tout autre service que vous désirez installer.

Identifiants déconseillés de Novembre

Mise à jour pour novembre de la liste des identifiants déconseillés sur un serveur accessible depuis internet (ssh et ftp). La liste est complète et intègre l’ensemble des identifiants depuis un an, avec les nouveaux apparus le mois dernier.

Vous trouverez la liste à télécharger  ici.

Voici la liste (incomplète, puisqu’expurgée des identifiants ne passant pas en HTML sur le site) des identifiants utilisés:

!@#$%^
0002593w
00089
0racle
1
1234
12345
1qaz
24_touchy
\357\273\277root
3nt3rw3b
a
aa
aaa
aabakken
Aadolf
aaguilar
aalish
aaliyah
Aaliyah
Aamu
aandrei
Aapeli
aapo
Aapo
Aappo
Aarne
Aarni
Aarno
Aaro
aaron
Aaron
Aarre
Aarto
Aatami
Aatos
Aatto
Aatu
ab
Aba
abakus
abas
abba
abbott
abby
abc
abc123
abcd
abcde
abcs
abdollah
abel
abelard
abelium
abra
abraham
abrahams
absolon
abuse
ac
acc
acer
achille
achramowicz
acosta
acs
act
actis
ad
adachi
adam
adan
adeline
adil
aditya
adm
adm2
admin
Admin
admin1
admin2
admin4
adminftp
administracion
administrador
administrateur
Administrateur
administration
administrator
Administrator
admon
adnan
adoblas
adolphe
adrian
adriano
advantage
agarcia
agata
agueda
aigtransfer
aldo
alex
alexandre
alexis
alfredo
alias
alin
alina
alondra
altagracia
amal
amanda
amendoza
amstelecom
ana
andi
andie
andik
andre
andrea
andrew
angel
angelica
anna
anonymous
anton
antonia
anyone
apc
apple
Arho
Ari
arodriguez
arvin
as
auditor
auditoria
augusto
axel
b
backup
baltasar
basilio
bautista
beatriz
ben
benedicta
benedicto
benita
benito
bernie
berta
bin
blas
boot
bot
brian
brigida
bruno
bus
c
cadi
cady
cafe
cai
cailin
cailine
calista
cameron
candie
candy
carlabs
carta
cartas
casandra
casino
cat
cayetano
cayo
cgarcia
cgdsommieres
cgi
christian
ciceron
cindy
cirilo
cjohnson
clientes
cocolino
colon
comerciais
comercial
comms
condor
consultoria
coocon
correo
csuarez
curcio
d
dasusr1
data
db2inst1
dcmoralde
deane
dedlogistica
deepesh
delta
demetrio
demo
denom
deo
design
deutch
diablo
display
dk
dke
dl
dle
dm
dmaac
dme
dmin
domingo
drivers
dsantiago
dsigned
dumbo
e
eaguilar
edilson
.edu
efrain
ejerez
eloy
eminem
engracia
enio
enzo
eroot
es
estudiante
eva
export
ezequiel
fabio
fakeuser
falcon
fax
fedora
fermin
fernando
fire
fluffy
fly
francisco
franck
fred
freebox
ftp
ftpuser
gail
games
gast
german
gerry
ghost
gilberto
gilmar
global
globus
gnats
good
.gov
gpadilla
grace
granta
gregorio
grupo2
gt05
guest
guest1
haruki
heidi
hilaria
hilario
hipolito
hiram
hiroshi
hitler
home
http
httpd
image
info
information
install
internet
invite
iris
isidro
ismael
itschool
jack
jagdish
jair
jasonbc
jboss
jeamar
jeanpaul
jfparra
jian
jloor
jmaldonado
joan
joaquin
jobert
johan
joomla
jorgef
joseluis
jsolis
jsuarez
jtello
juliano
karon
katharina
knoppix
kristablack.net
left
leon
leonardo
lgonzalez
liaw
library
lieu
lilly
linda
linux
logic
lorenzo
lpa
lpd
ls
lschmidt
lscsymbiosis
lsnoxell
luca
lucas
lucius
ludovic
lugog
luigi
luis
luisa
luke
lunar
lus
luther
luxmundi
lward
lyle
lyn
lynux
lynx
lz
m0n0wall
mac
machine
mack
macosx
macthom
mad
madalena
madmad23
madmin
madonna
magazine
magenta
magic
mai
mail
mailman
maintain
maintenance
mambo
manager
manu
manu2
manu-desktop
marcar
marcia
marian
./marie-françoise
marine
mario
marion
master
mat
mat3
mat4
mateo
matilde
matt
matt4
mcc
medina
mercedes
michael
miguel
Miika
Miikka
mike
miranda
mireya
mlmb
monica
montrelle
moralez
movieup
mromero
murmar
murray
mvega
mysql
mythtv
nada
nadia
nagios
nana
nancy
narciso
natalia
nestor
netdump
news
newsroom
nicoara
nieves
nina
nlopez
no
nobody
noe
noemi
norberto
norris
null
NULL
office
olivia
or
oracle
oracle1
oratest
order
ot
oubiwann
pabla
paco
pam
paradise
pass
password
patricia
patricio
patrick
paula
payala
paz
pelayo
penelope
perla
petr
pgsl
photo
pia
piedad
pio
placido
player
player2
plcmspip
PlcmSpIp
pontoBXS
porfirio
postgres
postmaster
ppazmino
presidencia
primaveras
prueba
prueba1
public
r00t
raimundo
ramiro
raul
recruit
research
reynaldo
rfmngr
right
roberto
rocio
rogelio
root
['root
rosario
rot
rsync
sales
salvatore
samba
sancho
sarah
saturnino
scanner
scanspublics
scorpion
seb
sebastian
sec
security
sergio
sergior
server
service
severino
sherry
shortcut
shoutcast
simon
simoni
sims
sistemas
sjuarez
skin
slim
smtp
sol
soporte
spam
sql
ssh
staff
stephanie
stephen
steven
sthippolyte
stud
student
su
sua
support
supporte
svn
sybille
sync
sys
sysadmin
system
t
t1na
tadeo
tax
taylor
td
teacher
teamspeak
temp
teofilo
test
test1
teste
teste2
tester
testi
testing
testuser
thao
thy
ti
tiffany
tomas
tomcat
tomsu
toor
toto
trash
tricia
ts
tzuss
unknown
upload
user
user1
userftp
username
usuario
utente
utilidad
utilidades
valentin
vh
vicente
web
webadmin
webalizer
webmaster
wilf
wilford
william
wilson
wr
www
www1
www-data
xten
yosef
yvonne

Identifiants déconseillés

Quand on surveille ses logs (ce que tout bon administrateur réseau devrait faire), on finit par voir que des tentatives d’accès non autorisés utilisent souvent les mêmes identifiants.

Par conséquent, l’administrateur intelligent se gardera bien d’utiliser ceux ci et choisira des logins moins faciles à deviner par les « pirates ».

Comme j’administre une quantité de serveurs grandissante et importante, je centralise tous les identifiants utilisés qui ont entrainé un échec d’identification. Vous trouverez le fichier ici: Identifiants refusés

Faites en bon usage. Sur mes machines, aucun des ces identifiants n’est autorisé ( et tant pis pour les utilisateurs qui veulent quelque chose de simple ET que leurs données soient en sécurité…)

Apache2: résoudre « Could not reliably determine the server’s fully qualified domain name … »

Lorsque le serveur apache2 va démarrer, il va chercher à s’auto identifier pour savoir à quoi il doit répondre. Or, par défaut, rien n’est paramétré.

Il suffit, dans un premier temps, d’ajouter la directive suivante au fichier /etc/apache2/httpd.conf ou au fichier /etc/apache2/apache2.conf:

ServerName     nomduserveur.domaine.com

Mais ça n’est pas suffisant. En effet, si apache doit interroger nomduserveur.domaine.com comme nous venons de lui indiquer, il doit connaître son IP, et c’est dans le fichier /etc/hosts que ça doit être fait. Modifiez le fichier /etc/hosts pour avoir quelque chose ressemblant à ceci (en utilisant vos noms et IP de machines!):

127.0.0.1    localhost nomduserveur nomduserveur.domaine.com
192.168.10.23    nomduserveur nomduserveur.domaine.com
...

Maintenant, si vous relancez apache, vous ne devriez plus obtenir l’erreur indiquée dans le titre.

Lire les mails de cron avec son lecteur de messagerie

Vous pouvez simplement lire vos mails système avec votre lecteur de messagerie, après quelques manipulations.

Explications sur le fonctionnement:

Si les opérations effectuées avec le crontab de root renvoient des informations, cron les envoie par mail à l’utilisateur root.

Root n’étant pas sensé se connecter, ces mails sont transférés à un des utilisateurs du système. Par défaut, il s’agit de l’utilisateur que vous avrez créé lors de l’installation système, mais vous pouvez le changer en modifiant le contenu du fichier /etc/aliases:

# Added by installer for initial user
root:	manu

Dans ce cas, c’est l’utilisateur manu qui va hériter des mails système à destination de root.

Attention: sur certaines versions, et en particulier la Jaunty 9.04, le fichier ne contient pas le nom d’utilisateur. Tout est renvoyé à root, mais root ne renvoie vers personne:

# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
clamav: root
root: manu

Il suffira d’ajouter « root: manu » tel que ci dessus pour que l’utilisateur manu accède aux mails système.

Ces mails sont lisibles en console par l’intermédiaire, par exemple, de la commande mail (disponible dans le paquet mailutils). Mais il faut reconnaître qu’il serait plus pratique de les avoir dans le lecteur de messagerie même, puisque celui ci est ouvert régulièrement.
La méthode ci dessous n’est utile et exacte que si vous n’installez pas de serveur imap ou pop sur cette machine même pour y lire les mails (par défaut, dans 99,9% des cas).

Paramétrage du client de messagerie

La méthode est donnée ici pour Mozilla-Thunderbird, mais il est simple de l’adapter pour un autre lecteur de messagerie installée sur le système capable de lire le format Movemail¹ (testé avec Evolution et mutt).

  • Ouvrez votre lecteur de messagerie.
  • Si c’est la première ouverture, il vous est proposé de créer un nouveau compte. Dans le cas contraire, rendez vous dans le menu Edition / Paramètres des comptes … puis cliquez sur Ajouter un compte.
  • Dans le paramétrage d’un nouveau compte, sélectionnez Unix Mailspool (Movemail), puis cliquez sur suivant.
  • Sélection du type de compte

    Sélection du type de compte

  • Dans la fenêtre Identité, indiquez votre nom d’utilisateur (normalement déjà rempli). L’adresse de courrier n’a que peu d’importance (vous n’enverrez pas de courrier depuis ce compte), elle servira principalement à identifier ce compte dans la liste des comptes paramétrés.
  • S’il vous est demandé un serveur smtp, vous pouvez indiquer celui de votre FAI (souvent de la forme smtp.fai.fr). Si vous aviez déjà des comptes, le serveur smtp que vous aviez précédemment indiqué sera utilisé. Si votre ordinateur n’est pas connecté à internet ou n’envoie pas de mails par l’intermédiaire du lecteur de messagerie, vous pouvez mettre seulement « smtp » pour que la configuration puisse être finalisée.
  • Indiquez le nom du compte tel que vous désirez qu’il apparaisse dans la liste si la proposition ne vous convient pas.
  • Cliquez sur Terminer à l’affichage du résumé.

Il suffit désormais de relever le courrier pour pouvoir lire normalement les mails système et surveiller le fonctionnement de l’ordinateur.

Limitations

  • Les mails ne peuvent être lus QUE depuis la machine sur laquelle ils se trouvent. Pour les récupérer d’une autre machine, il faudra installer un serveur POP ou IMAP afin que le lecteur de messagerie de l’ordinateur client puisse accéder à ces mails. Cela fera l’objet d’un prochain article.
  • Il est possible d’envoyer les mails sur une autre adresse en indiquant l’adresse de destination pour l’alias du root dans le fichier /etc/aliases ainsi: root: manu@fai.fr. Cela oblige, par contre, l’ordinateur à posséder un système d’envoi de mails externes, tel que postfix ou exim4, paramétré correctement. Lorsque ce n’est pas nécessaire (si l’ordinateur est sur un réseau que je contrôle), je préfère éviter d’avoir un système d’envoi de mails que je serais obligé de maintenir et contrôler. En particulier si un logiciel s’affole et envoie plusieurs centaines de messages au système en quelques minutes (vécu), le risque de passer pour spammeur est grand!

Messages d’erreur

Impossible de localiser le fichier de spool du courrier

Impossible de localiser le fichier de spool du courrier

Ce message vous indique que le fichier /var/spool/mail/user n’existe pas. Il peut ne pas exister pour 2 raisons principales:²

  • L’utilisateur n’est pas déclaré comme devant recevoir les messages de root dans le fichier /etc/aliases
  • Aucun mail n’a été envoyé par le système, donc il n’y a pas de fichier contenant les mails…
Impossible de créer les verrours

Impossible de créer les verrours

Ce message vous informe que les droits ne sont pas corrects. Dans une console, la commande sudo chroot 01777 /var/spool/mail résoudra le problème.

¹ Opera mail ne semble pas pouvoir être utilisé pour accéder à ce type de compte mail.

² Assurez vous que la partition /var est montée, accessible à l’utilisateur, droits corrects, etc…

Htop toujours disponible

htop-05Données du problème

J’ai un serveur avec écran, dans une armoire fermée à clef avec un porte transparente qui démarre sans interface graphique. Je souhaitais faire apparaître un htop systématiquement à chaque démarrage.

Méthode testée sur Ubuntu, mais pouvant certainement être adaptée à d’autres distributions.

Il suffit de mettre le code suivant dans le fichier /etc/event.d/tty1

# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.
 
start on stopped rc2
start on stopped rc3
start on stopped rc4
start on stopped rc5
 
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
 
respawn
exec /sbin/getty 38400 tty1 -nl /usr/bin/htop

Attention

  • Dans cette configuration, le clavier est actif. Il est donc utilisable par n’importe quel utilisateur accédant au clavier.
  • Le logiciel est lancé en root! Donc, si le clavier est accessible, n’importe quel utilisateur peut killer un processus appartenant à un autre (même init!)
  • htop consomme de la mémoire et de la puissance processeur. Même si c’est relativement peu, c’est à prendre en compte.

Du fait que le clavier est inacessible, dans mon cas, cela n’est pas un problème, mais c’est à garder en tête avant d’activer cette fonctionalité.

Update du 24/01/2011

Depuis que la version de Upstart a changé sur Ubuntu, cela ne fonctionne plus exactement de la même manière:

  • Il faut modifier le fichier /etc/init/tty1.conf
  • Il faut remplacer la ligne exec /sbin/getty -8 38400 tty1 par exec /usr/bin/htop </dev/tty6 >/dev/tty6
  • Le clavier est toujours actif! Attention: si vous avez installé GPM, la souris l’est aussi et permet d’utiliser les menus de htop! Pensez à la mettre sous clef.

Filtrer les connexions ssh

Portier SSH

Si vous possédez un serveur avec SSH opérationnel, vous ne serez pas long à avoir des messages tels que ceux ci dans le fichier /var/log/auth.log:

...
Mar 11 12:48:21 serv sshd[12956]: Failed password for invalid user root from 64.71.148.162 port 47270 ssh2
Mar 11 15:45:04 serv sshd[6954]: Did not receive identification string from 210.21.30.72
Mar 11 15:46:48 serv sshd[7041]: Did not receive identification string from 81.93.188.5
Mar 11 15:47:50 serv sshd[7106]: User root from 210.21.30.72 not allowed because none of user s groups are listed in AllowGroups
Mar 11 15:47:50 serv sshd[7106]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=210.21.30.72  user=root
Mar 11 15:47:52 serv sshd[7106]: Failed password for invalid user root from 210.21.30.72 port 54346 ssh2
Mar 11 15:49:33 serv sshd[7241]: User root from 81.93.188.5 not allowed because none of user s groups are listed in AllowGroups
Mar 11 15:49:33 serv sshd[7241]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=81.93.188.5  user=root
Mar 11 15:49:35 serv sshd[7241]: Failed password for invalid user root from 81.93.188.5 port 44663 ssh2
Mar 12 00:51:18 serv sshd[22229]: User root from host.ongamemarketing.com not allowed because none of user s groups are listed in AllowGroups
Mar 12 00:51:18 serv sshd[22229]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=host.ongamemarketing.com  user=root
Mar 12 00:51:20 serv sshd[22229]: Failed password for invalid user root from 174.133.12.130 port 48089 ssh2
Mar 12 00:51:22 serv sshd[22236]: User root from host.ongamemarketing.com not allowed because none of user s groups are listed in AllowGroups
Mar 12 00:51:22 serv sshd[22236]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=host.ongamemarketing.com  user=root
Mar 12 00:51:24 serv sshd[22236]: Failed password for invalid user root from 174.133.12.130 port 48521 ssh2
Mar 12 01:47:10 serv sshd[30827]: Did not receive identification string from 114.200.199.144
Mar 12 01:53:17 serv sshd[31227]: Invalid user staff from 114.200.199.144
Mar 12 01:53:17 serv sshd[31227]: pam_unix(sshd:auth): check pass; user unknown
Mar 12 01:53:17 serv sshd[31227]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=114.200.199.144
Mar 12 01:53:19 serv sshd[31227]: Failed password for invalid user staff from 114.200.199.144 port 35343 ssh2
Mar 12 01:53:27 serv sshd[31234]: Invalid user sales from 114.200.199.144
...

Vous avez besoin de pouvoir vous connecter en ssh depuis le réseau local, depuis l’extérieur, mais vous voulez limiter les risques. Il existe plusieurs solutions, qui peuvent être cumulées:

Sécuriser par la configuration de SSH

N’autoriser QUE certains utilisateurs à accéder au service

Si vous avez peu d’utilisateurs nécessitant un accès ssh, vous pouvez les déclarer ainsi en ajoutant cette ligne dans le fichier de configuration /etc/ssh/sshd_config (et en redémarrant le service après chaque modification)

AllowUsers titi toto

Après relance du service ssh, les utilisateurs titi et toto pourront se connecter en ssh, les autres utilisateurs se verront refuser leur mot de passe.

Vous pouvez aussi créer un groupe (par exemple: sshusers) et autoriser tous les utilisateurs de ce groupe à se connecter en ssh. Ceux n’appartenant pas à ce groupe se verront refuser leur mot de passe.

addgroup sshusers
adduser toto sshusers
adduser titi sshusers

Puis ajoutez la ligne suivante dans /etc/ssh/sshd_config:

AllowGroups sshusers

IN and OUT

Oui, mais voilà un nouveau problème:

  1. Le serveur fait passerelle avec internet, et possède une carte sur le réseau interne, et une carte vers le réseau internet.
  2. Tous mes utilisateurs internes doivent pouvoir accéder par ssh (ce qui est le cas avec la configuration par défaut), mais ne doivent pas pouvoir accéder depuis l’extérieur (parce qu’ils n’en ont pas besoin, ou parce que les mots de passe des utilisateurs sont trop simples)
  3. Si je laisse la configuration ainsi, le serveur sera piraté très rapidement.

Il est possible d’ajouter une directive à la liste des autorisations, permettant de faire ceci:

AllowUsers *@192.168.0.*

Ainsi, tous les utilisateurs du réseau local (et possédant un compte sur le serveur) pourront accéder par ssh, mais ne pourront pas le faire s’ils ne proviennent pas du réseau local (par internet).
Si je veux pouvoir ensuite me connecter depuis l’internet pour faire de la télémaintenance, il me suffit d’ajouter mon compte et de transformer la ligne en ceci:

AllowUsers manu *@192.168.0.*

(1)

Il est possible aussi de cumuler les directives Users et Groups pour obtenir des possibilités supplémentaires. Exemple:

  1. Seuls certains de mes utilisateurs locaux doivent pouvoir se connecter au serveur, depuis le net ou en local.
  2. Je veux pouvoir m’y connecter de partout (local et internet)

La configuration est la suivante:

AllowGroups sshusers
AllowUsers manu

Ainsi, seuls les utilisateurs appartenant au groupe sshusers pourront se connecter au serveur, en plus de l’utilisateur manu qui pourra se connecter depuis n’importe où.

Si je possède un adresse IP fixe, et que je suis assez bête pour crée un compte manu avec le mot de passe manu, je peux tout de même limiter l’accès par mon adresse IP (80.80.80.80)

AllowUsers @80.80.80.80

Je suis désolé, ça va pas être possible…

Vous pouvez même ajouter des directives inverses, pour interdire les connexions:

DenyUsers invite
DenyGroups stagiaires

Autres configurations conseillées de ssh

Vous pouvez modifier d’autres éléments du fichier de configuration, qui permettront de sécuriser un peu plus votre serveur ssh:

  • Changer le port d’écoute par défaut: vous pouvez changer ce port par autre chose que 22. Sachez cependant que la protection apportée par ce changement est TRÈS FAIBLE. Un scan de vos port repérera le port que vous avez choisi, et des logiciels de scans sont capable de déterminer le service qui tourne derrière ce port. Cela vous permettra seulement d’échapper à certains robots qui ne tentent des connexions que sur le port 22.
  • N’autoriser une identification que par clef: il vous faudra générer des clefs d’identification (avec seahorse pour gnome ou ssk-keygen) pour tous vos utilisateurs et empêcher l’autentification par mot de passe dans la configuration de SSH. Cette protection est très efficace, par contre, il faut que les clefs soient sécurisées (pas sur une clef usb qui peut se perdre ou se faire voler, pas sur un partage accessible, pas échangées par courriel, …). L’autre inconvénient, c’est que vos clefs doivent voyager avec vous et être installées sur les ordinateurs que vous utilisez; d’où une incompatibilité avec le point précédent, si vous n’avez pas une politique stricte de stockage des clefs.
  • Ne JAMAIS autoriser la connexion de l’utilisateur root: (PermitRootLogin no).  Il y a toujours un utilisateur root sur tous les Linux (même sur Ubuntu) et vous facilitez le travail d’un éventuel pirate, puisqu’il n’a qu’un mot de passe à trouver. Autrement, il doit d’abord trouver un login valide, puis son mot de passe, puis celui du root. Si vos mots de passe et vos logins sont adaptés, cela lui prendra des années avant d’y arriver par ce moyen.

Ajouter des logiciels de sécurisation

fail2ban

fail2ban est un logiciel qui va surveiller les tentatives de connexion échouées dans le fichier /var/log/auth.log , et bloquer, en modifiant les règles iptables à la volée, un nombre trop élevé de connexions échouées. Ce logiciel permet aussi, de la même manière, de protéger votre serveur apache, postfix, vsftpd, proftpd, wuftpd, sasl, dns, …
Une fois installé, il vous suffit d’éditer le fichier /etc/fail2ban/jail.conf pour configurer son comportement. Exemple pour ssh:

...
[DEFAULT]
# "ignoreip" can be an IP address, a CIDR mask or a DNS host
ignoreip = <a class="linkification-ext" title="Linkification: http://10.0.0.0/24" href="http://10.0.0.0/24">10.0.0.0/24</a>
bantime  = 600
maxretry = 3
...
[SECTION_NAME]
enabled = true # vérifier que cette valeur est à True, sinon le logiciel n'est pas activé!
...
[ssh]
enabled = true
port	= ssh
filter	= sshd
logpath  = /var/log/auth.log
maxretry = 6

Dans cette configuration:

  • Tout ce qui vient du réseau local (10.0.0.0/24) est ignoré. Donc je pourrais me tromper autant de fois que voulu, je ne me ferais pas bannir.
  • En dehors de mon réseau local, par ssh, j’ai droit à 6 tentatives (par session) de connexions échouées. Ensuite, je me ferais bannir. Si je m’identifie, la fois suivante, j’ai encore droit à 6 tentative (ça repart à zéro avec l’identification réussie)
  • Si je suis banni, toutes mes tentatives de connexions pendant les 600 prochaines secondes (10 minutes) seront refusées, sans possibilité d’identification.

La configuration de fail2ban vous offre plein d’autres possibilité, comme de recevoir des mails en cas de tentatives échouées, d’utilisateurs inconnus, etc. Consultez la documentation pour exploiter cet outils très pratique.

denyhosts

denyhosts permet de faire la même chose, un peu différemment. Il maintient une base d’IP bannies dans /etc/hosts.deny et les compare avec les tentatives de connexions.

Il a quelques avantages sur fail2ban, même si je le trouve plus lent (consommateur) à l’usage:

  1. Il permet de bloquer les tentatives d’accès ssh sur l’utilisateur root dès la première tentative.
  2. Il permet de paramétrer comme on le veut les champs from et subject des mails envoyés
  3. Il permet d’envoyer les rapports vers le syslog, qui peut être distant (et ineffaçable)

Simple à configurer, le fichier /etc/denyhosts.conf est largement commenté

Sur le même sujet:

(1) Ne pensez pas que je suis assez bête pour utiliser un login simple tel que « manu » sur mes serveurs… C’est juste pour l’exemple.

rkhunter et unhide

Unhide est un utilitaire permettant de lister les processus actifs cachés. C’est un outil qui vous permet de trouver d’éventuels rootkits installés sur votre système.

S’il n’est pas installé par défaut sur votre distribution, installez le de manière classique.

Si vous utilisez rkhunter pour scanner votre machine, sans opération particulière vous aurez deux problèmes:

  1. rkhunter n’utilisera pas par défaut unhide, et vous perdrez donc le bénéfice d’un seul scan.
  2. rkhunter va détecter un warning sur unhide et unhide-linux26, ce qui vous enverra un mail à chaque détection.

La solution est simple: il suffit d’indiquer à rkhunter que unhide est fiable, en l’ajoutant à sa base de donnée. Ensuite, rkhunter utilisera unhide automatiquement.

ATTENTION: n’utilisez la commande suivante QUE SI VOUS ÊTES SÛR de votre système ! En effet, cette commande va réinitialiser la base de données des programmes considérés comme sûrs par rkhunter. Si vous avez un rootkit ou des programmes cachés, ils ne seront plus détectés!

Il est conseillé de lancer un rkhunter -c et de vérifier le rapport avant de lancer la commande suivante.

Maintenant que vous êtes prévenus, voici la commande magique (en root ou avec sudo):

rkhunter --propupd

C’est tout. La prochaine fois que rkhunter sera lancé, manuellement ou par la programmation, unhide sera détecté et utilisé.

Changer un mot de passe Windows sans le connaitre

Il arrive qu’on doive accéder à un ordinateur Windows mais qu’on ne connaisse pas le mot de passe ou qu’on l’ait oublié… Dans mon cas, j’utilise tellement peu le serveur de test que le mot de passe m’est sorti de l’esprit.

Heureusement, il est possible de le modifier sans avoir à tout réinstaller!

De plus, l’aide nous vient de GNU/linux et des outils libres par ntpasswd (par l’intermédiaire de ntfs-3g et busybox)

Il suffit de graver l’iso et de démarrer l’ordinateur sur le CD pour obtenir un prompt de style MSDOS, de sélectionner la partition d’installation de windows.

Ensuite, il faut préciser le chemin d’accès à la base de registre (\windows\system32\config pour XP) et presser Enter. Puis choix 1 Edit user data and password.

Entrez l’utilisateur dont vous voulez modifier le mot de passe et saisissez le nouveau mot de passe.

Vous pouvez modifier tous les comptes de la machine, administrateur compris. Sortez et validez par Y pour enregistrer les modification, puis redémarrez normalement.

Un outil pratique qui nous rapelle qu’un système d’exploitation protégé par mot de passe ne l’est (protégé) QUE si l’ordinateur qui le fait tourner est sécurisé (mot de passe au BIOS, démarrage sur le disque dur en premier, boitier de ordinateur fermé à clef et ordinateur inaccessible), sinon, n’importe qui pourrait modifier votre mot de passe et vous empêcher d’avoir accès à vos données.

Dans mon cas, c’est une réinstallation complète de windows qui m’a été évitée, et ça, ça n’a pas de prix!

Note: cet outil permettant d’accéder à la base de registre, il est possible de faire bien d’autres choses que de modifier le mot de passe (ajout/modification/suppression de clefs). Pratique pour supprimer cet antivirus nommé comme une bonne marque de moto et qu’il est difficile (voire pénible) de supprimer correstement pour mettre un bon anti virus.

Utilisation de Bazaar

Bazaar est un gestionnaire de version. L’un de ses avantages est qu’il permet d’utiliser les protocoles ssh ou ftp, ce qui signifie qu’il n’est pas nécessaire de monter un « serveur » bazaar pour l’utiliser; il suffit d’un serveur où vous pouvez vous connecter en ssh.

Classement des dossiers

L’organisation des dossiers est laissée à votre goût, mais pour simplifier les explications, voici l’organisation que nous allons adopter sur le serveur:

  • Un dossier à la racine nommé bzr qui contiendra les divers projets à versionner
  • Un dossier par projet dans le dossier /bzr (projet1 et projet2 )
  • Les droits en lecture/écriture pour les membres du groupe projets sur le dossier /bzr (récursivement)
addgroup projets              # ajout d'un groupe projets
adduser manu projets        # ajout de l'utilisateur au groupe projets
mkdir -p /bzr/projet1         # création du dossier du premier projet
mkdir -p /bzr/projet2         # création du dossier du deuxième projet
chgrp -R projets /bzr         # attribution du groupe projet à tous les fichiers du répertoire /bzr
chmod -R g+rw /bzr          # attribution des droits en lecture/écriture à tous les fichiers pour les membres du groupe projets

Il n’est pas nécessaire d’installer bazaar sur le serveur, mais il est nécessaire que l’accès par ssh fonctionne, avec ou sans mot de passe.

Sur les clients

Mise en place du projet sur le serveur

Ce sont les clients (qui vont modifier le code des projets) qui doivent installer le logiciel bazaar

apt-get install bzr python-paramiko

Les préférences de bazaar (limitées) se trouvent dans Système/Préférences/Bazaar preferences

Ce sont eux, aussi, qui vont initier le versionning, à l’endroit qui leur va bien:

mkdir ~/projets
mv ~/Bureau/monprojet ~/projets # déplacement des fichiers du prototype dans les projets
cd ~/projets/monprojet
bzr init                        # initialisation du versionning du projet
bzr add *                    # ajout de tous les fichiers (récursif) au versionning
bzr commit -m "Création" # prise en compte des modifications avec le commentaire "Création"
bzr push sftp://manu@server/bzr/projet1 --use-existing-dir # envoi de la version du projet sur le serveur en utilisant les répertoires créés plus haut.

Récupération des fichiers sur un autre client

mkdir ~/beauprojet     # création du dossier qui va accueillir le projet
cd ~/beauprojet
bzr init                     # initialisation du dossier au versionning
bzr merge sftp://toto@server/bzr/projet1/  # intégration des fichiers de "monprojet" dans le dossier "beauprojet" dans lequel on se trouve

Chacun des clients possède maintenant les fichiers sur lesquels effectuer les développements

Codage!

Les clients vont effectuer les modifications sur les documents. Après chaque modification (enfin, chaque fin de bloc de modification) ou avant l’envoi des fichiers modifiés, il faudra effectuer la commande suivante (qu’ils aient décidé ou non d’envoyer les fichiers sur le serveur. Les commit peuvent être fait hors connexion.):

bzr commit -m "message"

qui permet de prendre en compte les modifications effectuées dans le versionning et, accessoirement, de revenir à une version antérieure.

Il suffit ensuite « d’assembler » les fichiers modifiés avec ceux du serveur, que ceux ci aient été modifiés ou non par une autre personne:

bzr merge sftp://toto@server/bzr/projet1/

Enfin, les fichiers « finaux » sont envoyés sur le serveur afin d’être disponibles pour tous les développeurs:

bzr push sftp://toto@server/bzr/projet1/

A retenir

  • Il ne suffit pas d’ajouter un fichier/dossier au répertoire du projet pour qu’il soit pris en compte. Il faut le faire manuellement avec bzr add lefichier
  • Pour supprimer un fichier, il faut utiliser bzr remove lefichier
  • la commande bzr status permet de savoir l’état des fichier (plus exactement, du versionning)
  • La commande bzr log permet de voir le log des changements avec les commentaires
  • la commande bzr conflicts affiche les versions de fichiers en conflits
  • La commande bzr resolve lefichier permet de résoudre les conflits dans le fichier lefichier
  • Le manuel de bzr donne plein d’informations et de commandes utilisables

Interface graphique

Il existe une interface graphique pour bazaar nommée olive (paquet bzr-gtk) que je n’ai pas réussi à utiliser: impossible de comprendre les messages d’erreur (pas parlant) et pas trouvé de configuration à effectuer (ni dans le programme, ni dans les fichiers de configuration).

Pas grave, je suis un adepte de la ligne de commande.

Autres sources:

http://bazaar-vcs.org/fr/IntroductionABzr

Identification SSH sans mot de passe

Pour utiliser SSH (et dérivés tels que sftp) sans mot de passe, il faut ajouter votre clef sur le serveur. Nous aurons donc un ordinateur (manu-desktop) qui pourra se connecter à un serveur (server) par ssh sans avoir besoin de spécifier de mot de passe.

Notez qu’il existe des outils graphiques pour réaliser ces opérations (par exemple seahorse sous Gnome), mais je n’en parlerais pas.

Sur l’ordinateur client (manu-desktop)

La première chose à faire, si vous n’avez pas de clef pour votre machine, est d’en générer une

manu@manu-desktop:~$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/manu/.ssh/id_rsa):
Created directory '/home/manu/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/manu/.ssh/id_rsa.
Your public key has been saved in /home/manu/.ssh/id_rsa.pub.
The key fingerprint is:
cd:9e:bb:0a:1e:22:29:fa:e3:dc:12:72:8a:15:13:58 manu@manu-desktop
manu@manu-desktop:~$ ls -l ~/.ssh
total 8,0K
3367418 -rw------- 1 manu manu 1,7K 2009-01-15 13:26 id_rsa
3367419 -rw-r--r-- 1 manu manu  399 2009-01-15 13:26 id_rsa.pub
manu@manu-desktop:~$

Ne mettez pas de passphrase et laisser les options par défaut pour la création de la clef. Il est aussi possible de spécifier les options via la ligne de commande:

ssh-keygen -qt rsa -b 1024 -C manu -f ~/.ssh/manu@manu-desktop.rsa -N ""

La commande précédente crée une clef rsa (-t) avec le commentaire (-C) manu d’une longueur de 1024 bits (-b) dans le fichier ~/.ssh/manu@manu-desktop.rsa (-f) avec une passphrase (-N) vide.

Sur le serveur (server)

Le compte utilisateur de connexion doit exister. Il n’est pas obligé que ce soit le même identifiant que sur le client. Par exemple, sur le serveur, mon compte est nommé zephir.

[root@server]:# adduser zephir
Ajout de l'utilisateur « zephir »...
Ajout du nouveau groupe « zephir » (1002)...
Ajout du nouvel utilisateur « zephir » (1002) avec le groupe « zephir »...
Création du répertoire personnel « /home/zephir »...
Copie des fichiers depuis « /etc/skel »...
Entrez le nouveau mot de passe UNIX :
Retapez le nouveau mot de passe UNIX :
passwd : le mot de passe a été mis à jour avec succès
Modification des informations relatives à l'utilisateur zephir
Entrez la nouvelle valeur ou « Entrée » pour conserver la valeur proposée
Nom complet []:
N° de bureau []:
Téléphone professionnel []:
Téléphone personnel []:
Autre []:
Ces informations sont-elles correctes ? [o/N] o
[root@server]:#

Sur l’ordinateur client (manu-desktop), fin des opérations

Il ne reste plus au client qu’à envoyer sa clef d’identification au serveur simplement par la commande suivante:

ssh-copy-id -i ~/.ssh/id_rsa.pub zephir@server

Acceptez l’identification du serveur, le mot de passe est demandé (puisque vous n’avez pas encore envoyé la clef) et la clef est copiée dans le fichier /home/zephir/.ssh/authorized_keys.
Tentez la commande suivante (Ctrl+D pour sortir)

ssh zephir@server

Vous ne devriez plus avoir de demande de mot de passe.

Sur le serveur, fin des opérations

Il est possible de sécuriser le serveur afin de n’accepter que les authentifications avec clef et sans demande de mot de passe (pour ssh. L’accès en local demandera toujours un mot de passe).
Ainsi, les tentatives d’attaque par force brute sont vouées à l’échec. MAIS, soyez conscient que vous ne pourrez plus vous connecter depuis une autre machine que celle pour laquelle vous avez envoyé la clef, pas plus que vous ne pourrez envoyer d’autres clefs.
Paramétrez le fichier /etc/ssh/sshd_config tel que ci dessous:

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
 
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys
 
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no

Relancez ensuite le serveur ssh pour prendre en compte les modifications.

Note sur la sécurité

L’accès au serveur est possible sans authentification par l’utilisateur manu depuis l’ordinateur client (manu-desktop). Si cet ordinateur est un portable et qu’il se fait voler, celui qui arrivera à se connecter avec l’identité de manu arrivera sans demande de mot de passe à se connecter au serveur !
Réfléchissez bien à l’utilisation de ce mode de fonctionnement avant de le mettre en place.
En cas de vol, il suffira de supprimer le fichier /home/zephir/.ssh/authorized_keys pour que la clef volée avec le portable ne soit plus opérationnelle.
Vous pouvez, de même, recréer et changer vos clefs d’identification lorsque vous le voulez en réutilisant les commandes données en début d’article.

Liens:

http://doc.ubuntu-fr.org/gnupg
http://doc.ubuntu-fr.org/ssh

Serveur de synchronisation rsync

Mettre en place un serveur de synchronisation peut être utile pour éviter les saturations par http ou la mise en place d’un FTP anonyme.
De plus, rsync a l’avantage de ne transférer que les différences entre les dossiers à synchroniser, ce qui est plus rapide et moins consommateur de ressources.

L’installation du paquet rsync, sur Ubuntu, ne suffit pas à activer un serveur rsync; il reste quelques manipulations simples à mettre en place.

Tout d’abord, si le progrmme rsync n’est pas installé, faites le:

apt-get install rsync

Le serveur rsyncd a besoin d’un fichier de configuration /etc/rsyncd.conf. Voici un exemple de fichier:

# sample rsyncd.conf configuration file

# GLOBAL OPTIONS

#motd file=/etc/motd
#log file=/var/log/rsyncd
# for pid file, do not use /var/run/rsync.pid if
# you are going to run rsync out of the init.d script.
pid file=/var/run/rsyncd.pid
#syslog facility=daemon
#socket options=
read only = yes
list = yes
uid = nobody
gid = nogroup
use chroot = yes
max connections=10
log format = %t: host %h (%a) %o %f (%l bytes). Total %b bytes.
syslog facility=local5

# MODULE OPTIONS
[astuces]
	comment = repertoire des astuces
	path = /var/www/astuces
#	use chroot = yes
#	max connections=10
	lock file = /var/lock/rsyncd
# the default for read only is yes...
	#read only = yes
	#list = yes
	#uid = nobody
	#gid = nogroup
#	exclude =
#	exclude from =
#	include =
#	include from =
#	auth users =
#	secrets file = /etc/rsyncd.secrets
	strict modes = yes
#	hosts allow =
#	hosts deny =
	ignore errors = no
	ignore nonreadable = yes
	transfer logging = no
#	log format = %t: host %h (%a) %o %f (%l bytes). Total %b bytes.
	timeout = 600
	refuse options = checksum dry-run
	dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz

Pour la définition des options, consulter le man.
Les options peuvent être placées dans une section (auquel cas elles ne s’appliquent qu’à cette section, ou en tête de fichier (hors section) et s’appliquent alors à toutes les sections, sauf configuration contraire dans l’une d’elle.

Le serveur peut désormais être lancé manuellement ainsi:

sudo rsync --daemon

Mais il est plus simple d’activer le lancement en démon au démarrage en modifiant le fichier /etc/default/rsync. Voici un fichier correctement paramétré:

# defaults file for rsync daemon mode
# start rsync in daemon mode from init.d script?
#  only allowed values are "true", "false", and "inetd"
#  Use "inetd" if you want to start the rsyncd from inetd,
#  all this does is prevent the init.d script from printing a message
#  about not starting rsyncd (you still need to modify inetd's config yourself).
RSYNC_ENABLE=true
# which file should be used as the configuration file for rsync.
# This file is used instead of the default /etc/rsyncd.conf
# Warning: This option has no effect if the daemon is accessed
#          using a remote shell. When using a different file for
#          rsync you might want to symlink /etc/rsyncd.conf to
#          that file.
# RSYNC_CONFIG_FILE=
# what extra options to give rsync --daemon?
#  that excludes the --daemon; that's always done in the init.d script
#  Possibilities are:
#   --address=123.45.67.89        (bind to a specific IP address)
#   --port=8730                (bind to specified port; default 873)
RSYNC_OPTS=''
# run rsyncd at a nice level?
#  the rsync daemon can impact performance due to much I/O and CPU usage,
#  so you may want to run it at a nicer priority than the default priority.
#  Allowed values are 0 - 19 inclusive; 10 is a reasonable value.
RSYNC_NICE='10'
# Don't forget to create an appropriate config file,
# else the daemon will not start.

Une fois ceci fait, il ne reste plus qu’à relancer rsync:

sudo killall rsync
sudo /etc/init.d/rsync restart

Désormais les utilisateurs peuvent synchroniser anonymement le répertoire que vous avez programmé par la commande:

rsync -avP www.montsite.org::astuces /mon/dossier/a/synchroniser/

Notez que dans la commande ci dessus, astuces est appelé module par rsync. Ce module correspond à la section entre crochets que vous avez défini dans le fichier de configuration ([astuces])

Autres sources d’information:

http://doc.ubuntu-fr.org/rsync
http://prendreuncafe.com/blog/?q=rsyncd
http://man.developpez.com/man5/rsyncd.conf.5.php

Créer (compiler et packager) ses programmes en paquet .deb pour ubuntu ou debian

Le programme Debdevel permet de créer facilement et rapidement des paquet deb pouvant être installés sur Ubuntu, mais aussi toutes les dérivées de debian utilisant le gestionnaire de paquets apt (knoppix, mepis, …), à partir de vos propres programmes ou à partir de sources d’autres programmes.

Vous pourrez packager vos programmes, quel que soit le language de programmation (python, bash, C, …), voire même des documentations, fiches techniques, fichiers texte, … (bien que l’intérêt en soit limité, ça reste possible).

Mais ce logiciel (cette suite de logiciels, en fait), va plus loin, puisqu’elle vous permet aussi de:

  • Générer automatiquement des squelettes de documentation qu’il ne reste plus qu’à remplir (il est possible de rajouter vos propres modèles de documentation, au format voulu),
  • Créer un dépôt personnel en local,
  • Gérer un dépôt public (local ou distant),
  • Gérer trois niveaux de développement (dev, beta et stable),
  • Publier seulement l’un ou plusieurs niveaux de développement, et garder les autres privés,
  • Gérer autant de paquets que désiré, dans chacun des niveaux de développement,
  • Gérer autant de dépôts que désiré,
  • Tout faire graphiquement, sans ligne de commande ,
  • Tout fonctionne avec le clic droit de nautilus (bientôt konqueror et dolphin pour les utilisateurs de KDE, mais les logiciels fonctionnent cependant en ligne de commande avec KDE) ,
  • Trouver facilement une dépendance dans l’ensemble de vos paquets,
  • Trouver facilement et rapidement un terme ou du code dans l’ensemble des scripts de vos paquets,
  • Et d’autres choses en cours de développement.

Menu du clic droit

Bref, il faut 3 minutes sans connaissance particulière pour créer un dépôt, 3 minutes pour créer un paquet et y installer votre programme, 1 minute pour en faire un paquet deb et une minute pour le rendre public et accessible à vos utilisateurs par leur gestionnaire de paquet (apt-get, aptitude ou synaptic) qui les avertira automatiquement lorsqu’une mise à jour sera disponible. Et la mise à jour d’un paquet (en dehors du temps de correction de votre programme) prend moins d’une minute.

De quoi développer rapidement et facilement, sans se préoccuper de gérer les versions ou craindre de mélanger les programmes de dev avec les versions publiques, et éviter de passer du temps à se demander comment créer un paquet deb pour les publier!

Précisons quand même que ce programme ne développera pas de programmes à votre place mais vous simplifiera le packaging et la distribution de ceux ci.

La documentation est accessible ici . Elle vous indique toutes les procédures, du téléchargement à l’utilisation.

Augmenter les résolutions disponibles

pour m’éviter de chercher et l’avoir une fois pour toutes noté quelque part:

Section "Monitor"
Identifier      "Configured Monitor"
HorizSync       30.0 - 83.0
VertRefresh     55.0 - 75.0

EndSection

et

Section "Screen"
Identifier      "Default Screen"
Monitor         "Configured Monitor"
Device          "Configured Video Device"
DefaultDepth    24
SubSection "Display"
Depth        24
Modes        "1024x768" "960x600" "800x600"
EndSubSection

Ceci permet d’indiquer au serveur X qu’il peut sortir du mode sécurisé des dimensions 640×480 et 800×600 pour monter en fréquence vers des dimensions supérieures.

Installer Virtualbox sur ubuntu

Ajouter au sources.list:

deb http://download.virtualbox.org/virtualbox/debian hardy non-free
deb http://download.virtualbox.org/virtualbox/debian gutsy non-free
deb http://download.virtualbox.org/virtualbox/debian dapper non-free
deb http://download.virtualbox.org/virtualbox/debian lenny non-free
deb http://download.virtualbox.org/virtualbox/debian etch non-free
deb http://download.virtualbox.org/virtualbox/debian sarge non-free

Installer la clef du dépôt :

$ wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -

Répondre une seule fois aux questions d’installation des paquets

Lorsque vous avez à installer plusieurs machines identiquement, vous allez répondre à chaque fois aux questions d’installation de tous les paquets.

Quand on a configuré une machine, il est possible de transférer toutes les réponses d’installations.

Installez debconf-utils sur tous les ordinateurs.

Sur la machine installée:

debconf-get-selections > /tmp/reponses.txt

Copiez le fichier reponses.txt sur un support ou par le réseau sur la machine à installer.

Sur la machine à installer:

debconf-set-selections -c  /media/reponses.txt # option -c pour tester le fichier

debconf-set-selections   /media/reponses.txt # installation des réponses dans la base de debconf /var/cache/debconf/config.dat

C’est utile pour les sauvegardes/restaurations rapides, pour installer rapidement plusieurs ordinateurs, pour reparamétrer en ligne de commande un logiciel, …

 Rappel:

Pour sauvegarder la liste des programmes installés: dpkg –get-selections > /tmp/listprog.txt

Pour installer l’ensemble des logiciels sur la seconde machine: dpkg –set-selections < /media/listprog.txt

Insérer un lecteur vidéo flash dans une page

Cette astuce a été testée avec succès sur dokuwiki.

Téléchargez l’archive  Télécharger flvplayer.rar, et décompressez la pour récupérer les fichiers flvplayer.swf et config_flvplayer.txt que vous copierez à la racine de votre site avec la vidéo .flv

Puis recopiez ce code sur votre page web, en adaptant à votre cas les parties en noires :

<object type="application/x-shockwave-flash" data="flvplayer.swf" width="480" height="360">
  <param name="movie" value="flvplayer.swf" />
  <param name="flashvars" value="config=config_flvplayer.txt" />
  <param name="wmode" value="transparent" />
  <param name="menu" value="false" />
</object>

Le fichier config_flvplayer.txt

flv=mavideo.flv
title=Ceci est le titre de ma video
width=240
height=180
margin=2
showstop=1
showvolume=1
autoload=1

Paramètres du Lecteur

Voici les différents paramètres optionnels pour ce lecteur, à ajouter dans votre fichier « config_flvplayer.txt » :

  • « flv= » indique l’adresse relative ou absolue du fichier flv.
  • « width= » largeur en pixel du film.
  • « height= » hauteur en pixel du film.
  • « buffer= » Le nombre de secondes pour la mémoire tampon (5 par défaut).
  • « buffermessage= » Le message de la mémoire tampon.
  • « buffercolor= » La couleur du texte du message tampon.
  • « bufferbgcolor= » La couleur de fond du message tampon.
  • « buffershowbg=0 » pour ne pas afficher le fond du message tampon.
  • « title= » Le titre affiché avant le chargement de la vidéo.
  • « titlesize= » La taille de la police du titre (20 par défaut).
  • « titlecolor= » La couleur du titre (ffffff par défaut).
  • « margin= » La marge de la vidéo par rapport au Flash (4 par défaut).
  • « autoplay=1 » pour lire automatiquement.
  • « autoload=1 » pour lancer le chargement.
  • « showstop=1 » pour afficher le bouton STOP.
  • « showvolume=1 » pour afficher le bouton VOLUME.
  • « showtime= » (1) pour afficher le temps, (2) pour afficher le temps restant.
  • « showplayer= » Affichage de la barre des boutons : autohide, always ou never.
  • « showloading= » Affichage du chargement : autohide, always ou never.
  • « loop=1 » pour boucler.
  • « startimage= » L’URL du fichier JPEG (non progressif) à afficher avant le chargement de la vidéo.
  • « playercolor= » La couleur de fond du lecteur (pas du flash).
  • « loadingcolor= » La couleur de la barre de chargement.
  • « bgcolor= » La couleur de fond.
  • « bgcolor1= » La première couleur du dégradé du fond.
  • « bgcolor2= » La seconde couleur du dégradé du fond.
  • « buttoncolor= » La couleur des boutons.
  • « buttonovercolor= » La couleur des boutons au survol.
  • « slidercolor1= » La première couleur du dégradé de la barre.
  • « slidercolor2= » La seconde couleur du dégradé de la barre.
  • « sliderovercolor= » La couleur de la barre au survol.
  • « onclick= » L’URL de la destination au click sur la vidéo. Par défaut à playpause qui signifie que la vidéo fait play ou pause au click. Pour ne rien faire, il faut mettre none.
  • « onclicktarget= » La cible de l’URL au click sur la vidéo. Par défaut à _self. Pour ouvrir une nouvelle fenêtre, mettez _blank.
  • « playertimeout= » Le délai en milliseconde avant que la barre du lecteur se cache (1500 par défaut).
  • « videobgcolor= » La couleur du fond de la vidéo quand il n’y a pas de vidéo.
  • « volume= » Le volume initial, entre 0 et 200 (100 par défaut).
  • « showfullscreen=1 » pour afficher le bouton pour le plein écran (nécessite Flash Player 9.0.16.60 ou supérieur).
  • « showswitchsubtitles=1 » pour afficher le bouton qui affiche/cache les sous-titres.
  • « loadonstop=0 » pour arrêter le chargement de la vidéo au STOP.
  • « phpstream=1 » pour utiliser un streaming PHP.
  • « ondoubleclick= » Action sur le double click : none, fullscreen, playpause, ou l’url à ouvrir.
  • « ondoubleclicktarget= » La cible de l’URL au double click sur la vidéo. Par défaut à _self. Pour ouvrir une nouvelle fenêtre, mettez _blank.
  • « showmouse= » Affichage de la souris : autohide, always ou never.

Problèmes:

Mes différents tests en mettant les fichiers vidéo ou de configuration ou du lecteur ailleurs que dans la racine ont donné que les fichier ne se lisait pas. Je subodore un  problème de cache, puisque quand je suis revenu à la configuration qui allait bien, un coup ça ne marchait pas, puis ça a remarché alors que je n’ai rien changé.