Applications

De OpenWikiBSD
Aller à : navigation, rechercher

pkg_add est votre meilleur ami ici.


RSync

rsync est un excellent outil de synchronisation de fichiers. Il gère les ajouts, les mises à jours et les suppressions si on le désire.

Rsync possède plusieurs modes de fonctionnement:

Client rsync avec serveur-rsyncd ou alors client Rsync seul. Dans tous les cas, vous devez installer rsync.

Coté client : pkg_add

Reste à créer le répertoire qui doit servir de répertoire de téléchargement en donnant les droits à nobody en lecture.
Si vous voulez crypter le flux rsync, cela est permis d'origine en tapant :
rsync -e ssh -var Source Destination var pour Verbose/archive/récursif.
Ceci fonctionne sans démon serveur!!! Mais, en revanche ,l'utilisateur doit avoir un shell valide sur le serveur!! Ce qui peut poser problème. La solution est de faire passer le flux rsync en clair dans un tunnel SSH.Vous devez activer la partie serveur dans ce cas.
Utilisation pratique : Je ne travaille que sur le portable dans différents lieux. Je désire synchroniser mon répertoire de travail local sur le serveur de fichier; et ce sans aucune intervention manuelle.Facile avec rsync!</font>

J'ai créé sur le serveur un répertoire /home/sauve qui contiendra le miroir de mes fichiers.
J'ai exporté, après l'avoir créé, ma clé publique sur ce serveur. Comme ça la connexion se fait sans mot de passe. [OpenSSH.htm Authentification par clé publique].
J'utilise un [Fichiers/synchro petit script] qui teste à intervalle de temps régulier, dans la crontab que je suis dans le bon plan d'adressage. Si c'est la cas, la synchro s'effectue automatiquement, je vois juste la LED du disque jouer la samba. Si je supprime ou modifie un fichier en local, il sera mis à jour ou supprimé sur le serveur. Si un fichier est modifié ou supprimé sur le serveur, il sera écrasé par celui présent sur ma machine locale à la prochaine synchro. C'est mon portable le maitre et le serveur la copie. man rsync pour modifier ce comportement.
Le coté volubile de rsync se manifestera par la mention deleting pour ce qui sera supprimé sur le répertoire distant et rien pour ce qui sera ajouté.

Coté Serveur:
Installer puis ajouter dans le fichier /etc/inetd.conf la ligne suivante :
rsync stream tcp nowait root /usr/local/bin/rsync rsyncd --daemon
Forcez la relecture du fichier de configuration. Rsync utilise le port 873 tcp.
Pour autoriser suivant l'ip, l'accès à ce serveur vous devez ajouter des règles dans /etc/host.allow ,/etc/host.deny. Vous pouvez faire la même chose avec pf.
Reste à créer le fichier de configuration de rsync /etc/rsyncd.conf

uid = nobody
gid = nobody
use chroot = yes
syslog facility = local5
pid file = /var/run/rsyncd.pid

[ Espace ]
path = /telechargement
comment = Espace de téléchargement

Pour faire passer le flux rsync en clair dans un tunnel SSH. Pour la création du tunnel :Doc [OpenSSH.htm OpenSSH].
ssh compte_sur_la_machine distante@IP_serveur -N -L 4321: IP_serveur :873 &
rsync rsync://127.0.0.1:4321/répertoire/module.


Debug

bash: rsync: command not found

IL vous faut installer rsync sur le serveur distant en cas de copie par ssh :

/usr/local/bin/rsync --dry-run -avzhe ssh /zroot/share/ root@machine:/snapshot

Unison

Unison</u></font>
Bon, rsync c'est formidable si je travaille sur une machine et que je recopie toujours vers une ou plusieurs autres machines. Mais si jamais je veux travailler sur plusieurs et garder un parc de machines synchronisées entre elles, rsync va toujours écraser les fichiers dans le meme sens......

Voila Unison, qui s'appuie sur l'efficace algorithme rsync (donc sur SSH, aussi!) ou CVS et d'autres encore et qui va synchroniser les fichiers et répertoires en s'appuyant sur l'horodatage des fichiers.
Cerise sur le gateau, Unison fonctionne sur plusieurs plateformes (Unix, bien sur, mais aussi Windows...).

On ne parlera ici que de ce que l'on connait : Unison /RSync/OpenSSH et Unison \Windows.../Cygwin, désolé, mais j'en ai eu besoin; madame travaille encore avec des logiciels sous Windows ;---(

Install sous OpenBSD :

Quelques soucis pour une fois. Le port /usr/ports/net/unison est un portage de la version FreeBSD avec ajout de la fonction GUI (en interface graphique quoi, mais sans X11 d'installé sur le serveur, ça marche moins bien....), mais malgré tous mes efforts, impossible de faire fonctionner la version texte; pas de [Install_appli.html#parfum FLAVOR,] rien.... alors j'ai bricolé :
- Installation classique pour qu'il lance l'installation du langage Ocaml, puis, lors du plantage :
- Téléchargement du packages.. (j'ai bien dit que j'avais bricolé) :
ftp ftp://ftp.openbsd.org/pub/OpenBSD/3.3/packages/i386/unison-2.91.tgz

Puis /usr/local/bin/unison -batch -times /home/repertoire_local ssh:user@mon_serveur_distant//le_chemin_de_sauvegarde
-batch pour scripter le tout
-times pour synchroniser les heures de modification
Attention, c'est bien ssh:user@mon_serveur_distant//le_chemin_de_sauvegarde et non ' ssh:user@mon_serveur_distant//le_chemin_de_sauvegarde

Install sous Windows :
- Attention, c'est long : clic gauche / démarrer / clic gauche / lancer Firebird / Aller ici. /télécharger la version Windows avec ou sans GUI.
- Puis vous devez installer les outils cygnus (un portage sous Windows des outils Unix de base, comme SSH, par exemple) qui sont indispensables pour avoir un client SSH en ligne de commande, ce que ne sait pas faire l'excellent [OpenSSH.htm#Client_Win Putty].

Mirror

Mirror est un outil permettant de faire un miroir ftp. J'ai mis cela en place afin de récupérer les bases des sites interdits pour SquidGuard sur le serveur de l'université de Toulouse.
Aller dans /usr/ports/net/mirror, faire un make && make install.
Pour lancer l'application faire un /usr/local/bin/mirror -d /etc/mirror.conf
Avec dans /etc/mirror.conf les informations suivantes :
package=squidguard
comment= mise à jour de SquidGuard
site=ftp.univ-tlse1.fr
remote_dir=/pub/reseau/cache/squidguard_contrib
local_dir=/update_slis

Mettre cela dans une crontab.</font>

Pour des raisons de performances, préférez rsync.

ntp

Une [../../Linux/Doc/outils-tcp-ip/Linux-temps.html documentation] plus complète sur ntp.Très proche de ce qui se fait sous Linux, on utilise aussi le ports ntp. Le démon est /usr/local/sbin/ntpd, le fichier de configuration est /etc/ntp.conf. Attention, il n'y a pas de sous répertoire /etc/ntp comme sous Linux. Le lancement du démon ntpd se fait en modifiant le fichier /etc/rc.conf :
ntpd=NO devient ntpd=YES #run ntpd if exists
ntpdate_flags= IP_ou_nom_de_votre_serveur_de_temps

/etc/ntp.conf

server ntp1.jussieu.fr prefer #Serveur préféré de strate supérieure
server 193.54.82.20 # Autre serveur
server 127.127.1.0 # local clock (?)
driftfile /etc/ntp.drift # Déviation moyenne
multicastclient #Ecoute par défaut sur l'adresse multicast ( 224.0.1.1)
broadcastdelay 0.008
authenticate no #On peut se mettre à l'heure sans s'authentifier.

statsdir /var/log/ntpstat # Tous les fichiers de log dans /var/log commenceront par ntpstat...
statistics clockstats # Enregistre les statistiques du pilote d'horloge
statistics loopstats # Enregistre les statistique de mise à jour de l'horloge
statistics peerstats # Enregistre les statistiques sur les serveurs de strate supérieure (Ses serveurs)

Plus d'info
# Fichier d historique
logfile /var/log/xntpd #Historique du démon

L'interrogation du démon se fait avec la commande interactive /usr/local/sbin/ntpq:

ntpq > pe (Equivalent à /usr/local/sbin/ntpq -p, sans interactivité)
remote refid st t when poll reach delay offset jitter
==============================================================================
joliot.net.espc 0.0.0.0 16 u - 64 0 0.000 0.000 4000.00
*horlogegps.rese .GPS. 1 u 6 64 37 6.195 1.227 1.824

ntpq> rv
status=0644 leap_none, sync_ntp, 4 events, event_peer/strat_chg,
version="ntpd 4.1.71-a Tue Apr 9 16:54:07 CEST 2002 (1)",
processor="i386", system="OpenBSD/3.0", leap=00, stratum=2,
precision=-18, rootdelay=5.440, rootdispersion=194.627, peer=15389,
refid=horlogegps.reseau.jussieu.fr,
reftime=c07826aa.e644523f Mon, Apr 29 2002 22:08:10.899, poll=6,
clock=c07826ec.d8e6c093 Mon, Apr 29 2002 22:09:16.847, state=4,
offset=0.062, frequency=45.325, jitter=0.842, stability=1.621

Un ? dans ntpq vous proposera une liste d'option.

Si le nombre de vos clients est très important, vous pouvez utiliser les modes broadcast et multicast, pour cela il faut ajouter dans ntp.conf du serveur broadcast adresse_de_broadcast_du_reseau.
N'oubliez pas que votre serveur de temps sera forcément client de temps d'un serveur de strate supérieure..

Les clients
Automatiquement installé; Vous n'avez qu'à régler le serveur ntp dans /etc/rc.local.


CVSup

Maintenant que vous savez utiliser le [OpenBSD-maj.html#1.2 client CVSup], imaginez ce qui se passe quand vous mettez à jour, simultanément, vos nombreuses machines sur un seul serveur CVSup... Sachez que CVSupd est fort gourmand en ressources CPU <u>et disques, vous risquez de mettre à genoux votre serveur. Par conséquent, si vous avez plus de deux ou trois machines à maintenir, pensez à installer votre propre serveur CVSup, c'est facile et servira la communauté si vous décidez de l'ouvrir au monde. Pour notre dizaine de serveurs OpenBSD, nous avions installé cvsup.ac-creteil.fr.

Le serveur cvsupd n'existe pas en port, uniquement en packages :
pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/3.1 et 3.2/packages/i386/cvsupd-16.1f-no_x11.tgz.
pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/3.0/packages/i386/cvsupd-16.1e-no_x11-static.tgz
Cette version du démon serveur fonctionne hors mode graphique (no_x11), hors librairie dynamique (-static) pour la version 3.0, pas pour la 3.1,2. Le démon serveur tourne sur le port 5999/TCP.Un ensemble de fichiers avec son arborescence constitue une collection. Les collections sont des sous-répertoires du dépôt.

Coté serveur :
mkdir -p /base/cvsup/test # Crée le répertoire test sous /base/cvsup avec création des répertoires intermédiaires (-p)
cd /base/cvsup/test

vi releases #
cvs list=list.cvs prefix=/base/ /chemin_du_dépôt'
vi list.cvs
# upgrade

lancement du démon dans [Fichiers_Conf.htm /etc/rc.local ]:
/usr/local/sbin/cvsupd -b /usr/local/etc/cvsup -C 5 -l @daemon

Options de la ligne de commande :
-b
base utilise ce répertoire pour les fichiers de config (défaut : /usr/local/etc/cvsup)
-c Chemin_de_la_collection defaut : sup
-C Maxclient Nombre maximum de clients servis simultanément

root@Hendrix:/base/sup/test:#> /usr/local/sbin/cvsupd -b /base Le serveur
2002.07.13 22:28:55 CEST [20542]: CVSup server started
2002.07.13 22:28:55 CEST [20542]: Software version: SNAP_16_1e
2002.07.13 22:28:55 CEST [20542]: Protocol version: 17.0
2002.07.13 22:28:55 CEST [20542]: Ready to service requests
2002.07.13 22:36:51 CEST [20542]: +0 hphil@localhost (Hendrix) [SNAP_16_1e/17.0]
2002.07.13 22:36:51 CEST [20542]: =0 [0Kin+24Kout] test/cvs
2002.07.13 22:36:51 CEST [20542]: -0 [0Kin+24Kout] Finished successfully
2002.07.13 22:36:51 CEST [20542]: Going down

root@Hendrix:/dest:#> cvsup -g -L 2 ./supfile Le client
Parsing supfile "./supfile"
Connecting to localhost
Connected to localhost
Server software version: SNAP_16_1e
Negotiating file attribute support
Exchanging collection information
Establishing multiplexed-mode data connection
Running
Updating collection test/cvs
Mkdir les_repertoires
Create les_fichiers
..
..
SetAttrs Les_fichiers&répertoires
..
..
Shutting down connection to server
Finished successfully

La documentation de base (orientée FreeBSD) du créateur de CVSup :
http://www.polstra.com/projects/freeware/CVSup/faq.html#testserver

apcupsd

Gestion de l'onduleur

Un classique make && make install && make clean, puis une édition du fichier de configuration : /etc/upsd.conf.

A finir.... quand meme....dès que je trouve comment on fait causer sur le port USB......

Vim

9 Vi iMproved : Vim

Vim a un énorme avantage sur vi : La colorisation syntaxique :

# IPv4 and IPv6 addresses are recognized.
fw_internet = "192.168.201.2"
fw_testlan = "192.168.101.1"
fw_testlan_real = "60.60.60.1"

fw_testlan6 = "3FFA:B80:840::/48"
blackbox6 = "3FFA:B80:83B:2::1"

testlan_mgmt = "192.168.101.86, 192.168.101.87, 192.168.101.88/28
192.168.101.96/29, 192.168.101.100"

# Error: forgot opening curly bracket, also works outside quotes.
curly_err = "192.168.1.1, 192.168.1.2 }"


### Set ###

set limit states 10000, frags 2000
set loginterface $ext_if (pris sur http://www.sentia.org)

Sympathique,non ??
En revanche, vim est un port, il faut donc l'installer.
Sur le routeur filtrant, évidemment x11 n'est pas installé. Donc, lors de la compilation, vous allez avoir un souci jusqu'à ce que vous lisiez [Install_appli.html#parfum ceci.]
cd /usr/ports/editors/vim/ && env FLAVOR="no_x11" make && '''''env FLAVOR="no_x11" make install && '''''make clean
Puis, vous copiez [Fichiers/pf.vim pf.vim] dans le bon répertoire:
cp pf.vim''''' /usr/local/share/vim/vim61/syntax

Vous avez la possibilité d'ajouter la détection de pf.conf, à deux endroits :
/usr/local/share/vim/vim61/filetype.vim Pour tous les utilisateurs
~/.vim/filetype.vim '
Pour ce seul utilisateur
N'oubliez pas d'ajouter les deux lignes suivantes :
" pf.conf
au BufNewFile,BufRead pf.conf* setf pf

Puis, lors de la prochaine édition d'un pf.conf, vous n'aurez qu'à taper :
:syntax on ''et, sous vos yeux ébahis, la couleur apparait!!

Attention, ceci, pour d'obscures raisons, ne fonctionne pas sous un shell distant (SSH)....Dommage, c'est un peu la seule chose qui tourne sur un FW...

Quelques trucs , en vrac, sous vim:
- Avoir un mode enregistré :
En mode commande tapez q0 puis effectuez la suite d'opération que vous voulez enregistrer. puis q (en mode commande)de nouveau à la fin.
Désormais un @0 rétiterera l'opération . Ca marche de q0 à q9.
- Aller en début de ligne : '
- Aller en fin de ligne :
$

rdesktop

Terminal Server Client sous OpenBSD !

Pour une fois, je vais vous parler d'un test sur une Linux Debian... je n'ai pas de machine OPenBSD avec X11 installé... Mais rdesktop est desormais dans les ports.

-Un tour sur rdesktop.org pour rapatrier les sources de la 1.2.0:
bunzip2 rdesktop...
tar zxvf rdesktop...
cd rdesktop-1.2.0
vi configure
ajouter à la ligne contenant les emplacements de openssl ():147 le lieu suivant :
/usr/bin/openssl, c'est comme ca sur la debian!
puis ./configure --with-openssl
make
make install


puis on copie le binaire dans /usr/bin/X11R6:rdesktop

puis
rdesktop -u mapomme monserveur
tada!!!!!
snif.
C'est beau



Stunnel : Chiffrer des protocoles en clair à moindre frais

Neuf

pkg_add stunnel-4.15p1.tgz

parsing stunnel-4.15p1
adding group _stunnel
adding user _stunnel
useradd: Warning: home directory `/var/stunnel' doesn't exist, and -m was not specified
installed /etc/stunnel/stunnel.conf from /usr/local/share/examples/stunnel/stunnel.conf-sample**************************************************  | 99%
stunnel-4.15p1: complete                                                                                                                               
--- stunnel-4.15p1 -------------------
After stunnel is installed, you have to create a server certificate and
put the result in /etc/ssl/private/stunnel.pem. For more information on
how to create certificates, read ssl(8). For more information on stunnel,
read stunnel(8).

You can edit /etc/rc.local so that stunnel is started automatically:
    if [ -x /usr/local/sbin/stunnel ]; then
        echo -n ' stunnel';       /usr/local/sbin/stunnel
    fi


Privoxy, un peu de vie privée dans ce web de publicitaires

Neuf

pkg_add -v ftp://ftp.openbsd.org/pub/OpenBSD/$(uname -r)/packages/$(uname -m)/privoxy-3.0.3p0.tgz    
parsing privoxy-3.0.3p0
Dependencies for privoxy-3.0.3p0 resolve to: pcre-6.4p1
adding group _privoxy
adding user _privoxy
installed /etc/privoxy/config from /usr/local/share/examples/privoxy/config                                                                     | 27%
installed /etc/privoxy/default.action from /usr/local/share/examples/privoxy/default.action                                                     | 32%
installed /etc/privoxy/default.filter from /usr/local/share/examples/privoxy/default.filter                                                     | 35%
installed /etc/privoxy/standard.action from /usr/local/share/examples/privoxy/standard.action                                                   | 36%
installed /etc/privoxy/templates/blocked from /usr/local/share/examples/privoxy/templates/blocked                                               | 37%
installed /etc/privoxy/templates/cgi-error-404 from /usr/local/share/examples/privoxy/templates/cgi-error-404                                   | 38%
installed /etc/privoxy/templates/cgi-error-bad-param from /usr/local/share/examples/privoxy/templates/cgi-error-bad-param                       | 38%
installed /etc/privoxy/templates/cgi-error-disabled from /usr/local/share/examples/privoxy/templates/cgi-error-disabled                         | 39%
installed /etc/privoxy/templates/cgi-error-file from /usr/local/share/examples/privoxy/templates/cgi-error-file                                 | 39%
installed /etc/privoxy/templates/cgi-error-file-read-only from /usr/local/share/examples/privoxy/templates/cgi-error-file-read-only             | 40%
installed /etc/privoxy/templates/cgi-error-modified from /usr/local/share/examples/privoxy/templates/cgi-error-modified                         | 41%
installed /etc/privoxy/templates/cgi-error-parse from /usr/local/share/examples/privoxy/templates/cgi-error-parse                               | 41%
installed /etc/privoxy/templates/cgi-style.css from /usr/local/share/examples/privoxy/templates/cgi-style.css                                   | 42%
installed /etc/privoxy/templates/connect-failed from /usr/local/share/examples/privoxy/templates/connect-failed                                 | 43%
installed /etc/privoxy/templates/default from /usr/local/share/examples/privoxy/templates/default                                               | 43%
installed /etc/privoxy/templates/edit-actions-add-url-form from /usr/local/share/examples/privoxy/templates/edit-actions-add-url-form           | 44%
installed /etc/privoxy/templates/edit-actions-for-url from /usr/local/share/examples/privoxy/templates/edit-actions-for-url                     | 49%
installed /etc/privoxy/templates/edit-actions-for-url-filter from /usr/local/share/examples/privoxy/templates/edit-actions-for-url-filter
installed /etc/privoxy/templates/edit-actions-list from /usr/local/share/examples/privoxy/templates/edit-actions-list                           | 50%
installed /etc/privoxy/templates/edit-actions-list-button from /usr/local/share/examples/privoxy/templates/edit-actions-list-button             | 51%
installed /etc/privoxy/templates/edit-actions-list-section from /usr/local/share/examples/privoxy/templates/edit-actions-list-section           | 51%
installed /etc/privoxy/templates/edit-actions-list-url from /usr/local/share/examples/privoxy/templates/edit-actions-list-url                   | 52%
installed /etc/privoxy/templates/edit-actions-remove-url-form from /usr/local/share/examples/privoxy/templates/edit-actions-remove-url-form     | 53%
installed /etc/privoxy/templates/edit-actions-url-form from /usr/local/share/examples/privoxy/templates/edit-actions-url-form                   | 53%
installed /etc/privoxy/templates/mod-local-help from /usr/local/share/examples/privoxy/templates/mod-local-help                                 | 54%
installed /etc/privoxy/templates/mod-support-and-service from /usr/local/share/examples/privoxy/templates/mod-support-and-service               | 54%
installed /etc/privoxy/templates/mod-title from /usr/local/share/examples/privoxy/templates/mod-title
installed /etc/privoxy/templates/mod-unstable-warning from /usr/local/share/examples/privoxy/templates/mod-unstable-warning
installed /etc/privoxy/templates/no-such-domain from /usr/local/share/examples/privoxy/templates/no-such-domain                                 | 54%
installed /etc/privoxy/templates/show-request from /usr/local/share/examples/privoxy/templates/show-request                                     | 55%
installed /etc/privoxy/templates/show-status from /usr/local/share/examples/privoxy/templates/show-status                                       | 57%
installed /etc/privoxy/templates/show-status-file from /usr/local/share/examples/privoxy/templates/show-status-file                             | 57%
installed /etc/privoxy/templates/show-url-info from /usr/local/share/examples/privoxy/templates/show-url-info                                   | 58%
installed /etc/privoxy/templates/show-version from /usr/local/share/examples/privoxy/templates/show-version                                     | 58%
installed /etc/privoxy/templates/toggle from /usr/local/share/examples/privoxy/templates/toggle                                                 | 59%
installed /etc/privoxy/templates/toggle-mini from /usr/local/share/examples/privoxy/templates/toggle-mini                                       | 60%
installed /etc/privoxy/templates/untrusted from /usr/local/share/examples/privoxy/templates/untrusted                                           | 61%
installed /etc/privoxy/user.action from /usr/local/share/examples/privoxy/user.action*********                                                  | 61%
privoxy-3.0.3p0: complete                                                                                                                            
--- privoxy-3.0.3p0 -------------------
You will need to edit /etc/rc.local as appropriate and add a
section similar to the following so that privoxy is started
automatically:

    if [ -x /usr/local/sbin/privoxy ]; then
            echo -n ' privoxy';
            /usr/local/sbin/privoxy --user _privoxy._privoxy \
                    /etc/privoxy/config
    fi
  • Ajout des lignes demandées à rc.local
  • Modif du fichier de config :