This file is indexed.

/usr/share/doc/HOWTO/fr-html/call-back.html is in doc-linux-fr-html 2013.01-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 25 March 2009), see www.w3.org">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.69">
<title>Le service de rappel, mini-HOWTO</title>
</head>
<body>
<h1>Le service de rappel, mini-HOWTO</h1>
<h2>Pawel Skonecki, <code><a href=
"mailto:stona@fizyka.umcs.lublin.pl">stona@fizyka.umcs.lublin.pl</a></code><br>

Traduction fran&ccedil;aise : Sylvain Amrani <code><a href=
"mailto:traduc@amrani.com.fr">traduc@amrani.com.fr</a></code></h2>
v1.1a, Juin 2000
<hr>
<em>Ce document d&eacute;crit la mani&egrave;re de mettre en place
un service de rappel en utilisant un syst&egrave;me Linux et un
modem. Je voudrais remercier Anna pour sa patience.</em>
<hr>
<h2><a name="s1">1. Introduction</a></h2>
<h2><a name="ss1.1">1.1 R&eacute;actions</a></h2>
<p>Je serai attentif &agrave; toutes les r&eacute;actions
concernant ce document. J'ai essay&eacute; de rassembler les
informations d'une fa&ccedil;on aussi compl&egrave;te que possible.
Dites-moi si vous trouvez des erreurs. Je serai reconnaissant
envers les personnes qui m'enverront des suggestions ou des
corrections. Leurs contributions am&eacute;lioreront ce document.
Je ne serai pas ennuy&eacute; de r&eacute;pondre &agrave; vos
questions, mais j'aimerais que vous lisiez ce document dans son
int&eacute;gralit&eacute; auparavant.</p>
<h2><a name="ss1.2">1.2 Publication</a></h2>
<p>Ce document peut &ecirc;tre publi&eacute; sous les conditions du
Linux Documentation Project (Projet de Documentation Linux). Prenez
contact avec l'auteur si vous ne parvenez pas &agrave; vous
procurer cette licence. Il s'agit d'un "document libre".</p>
<h2><a name="s2">2. Proc&eacute;dure</a></h2>
<h2><a name="ss2.1">2.1 Le r&eacute;seau &agrave; la maison
?</a></h2>
<p>La plupart d'entre nous utilisent l'Internet au travail. En
revanche, nous avons souvent besoin du r&eacute;seau &agrave; la
maison, ou &agrave; l'ext&eacute;rieur du bureau. Il est possible
que le travail effectu&eacute; &agrave; la maison revienne moins
cher que celui fait au bureau. Je pense que la meilleure solution
est d'installer un logiciel de rappel sur le serveur Linux. Un
service de rappel permet de faire rappeler le serveur pour que la
connexion soit &agrave; la charge de la soci&eacute;t&eacute;. Je
vais essayer de pr&eacute;senter la mani&egrave;re dont cela
fonctionne. Une personne, &agrave; qui l'on a donn&eacute; le
droit, appelle. L'&eacute;tat du modem du serveur Linux est
modifi&eacute; une premi&egrave;re fois. Ensuite, du
c&ocirc;t&eacute; de l'utilisateur, le modem ayant raccroch&eacute;
est r&eacute;-activ&eacute;. Dans le m&ecirc;me temps, le serveur
Linux appelle l'utilisateur. L'utilisateur s'identifie &agrave;
nouveau. Nous obtenons alors une connexion &agrave; la charge du
serveur. L'utilisateur ne paie que l'initialisation de la
connexion. La double v&eacute;rification et des options
suppl&eacute;mentaires dans la configuration du logiciel de rappel
emp&ecirc;chent que des ind&eacute;sirables ne chargent nos
factures. Nous pouvons restreindre l'acc&egrave;s de la connexion
au r&eacute;seau d'entreprise seulement ou &agrave; l'Internet. Le
service de rappel est tr&egrave;s souple. Dans la suite, je vais
essayer de vous pr&eacute;senter la configuration d'un service de
rappel sur un serveur Linux et de vous montrer comment configurer
votre ordinateur pour reprendre la connexion.</p>
<h2><a name="ss2.2">2.2 Premiers pas avec les modems.</a></h2>
<p>Les administrateurs proc&egrave;dent &agrave; des choix
diff&eacute;rents concernant les modems. Mais avant d'en acheter
un, vous devrez vous rappeler certaines r&egrave;gles&nbsp;:</p>
<ul>
<li>N'achetez pas un Win-Modem (modem sp&eacute;cifique pour
Windows). Ils ne fonctionnent pas sous Linux.</li>
<li>Les modems externes travaillent plus vite que les modems
internes.</li>
<li>Un modem interne sur carte ISA est pr&eacute;f&eacute;rable
&agrave; un modem sur carte PCI (vous pourrez utiliser votre port
PCI pour autre chose).</li>
<li>N'utilisez pas un modem Plug&amp;Play. Si vous en avez un,
d&eacute;sactivez l'option Plug&amp;Play et configurez le modem
pour un port s&eacute;rie libre (Cf. le Plug&amp;Play-HOWTO).</li>
</ul>
<p>Maintenant que nous avons le modem ad&eacute;quat, nous devons
le configurer pour notre syst&egrave;me. Nous devons
v&eacute;rifier &agrave; quel port s&eacute;rie il est
raccord&eacute;. Ensuite, nous devons cr&eacute;er un lien
symbolique entre ce port mat&eacute;riel et /dev/modem. Par
exemple, si notre modem est connect&eacute; au deuxi&egrave;me port
s&eacute;rie, nous &eacute;crivons&nbsp;:</p>
<pre>
ln -s /dev/cua1 /dev/modem 
</pre>
<p>V&eacute;rifions :</p>
<pre>
lrwxrwxrwx 1 root uucp 9 Sep 19 19:10 /dev/modem -&gt; /dev/cua1
</pre>
<p>Si notre modem est connect&eacute; &agrave; un port s&eacute;rie
diff&eacute;rent, nous devons nous rappeler que&nbsp;:</p>
<pre>
/dev/cua0 correspond &agrave; com1 

/dev/cua1 correspond &agrave; com2 

/dev/cua2 correspond &agrave; com3 

/dev/cua3 correspond &agrave; com4 
</pre>
<p>Et pour les nouveaux noyaux&nbsp;:</p>
<pre>
/dev/ttyS0 correspond &agrave; com1 

/dev/ttyS1 correspond &agrave; com2 

/dev/ttyS2 correspond &agrave; com3 

/dev/ttyS3 correspond &agrave; com4
</pre>
<p>Maintenant nous pouvons v&eacute;rifier notre configuration avec
le programme minicom.</p>
<h2><a name="ss2.3">2.3 Appeler le serveur Linux</a></h2>
<p>La premi&egrave;re chose &agrave; faire pour rendre accessible
notre service de rappel sous Linux est de configurer les
param&egrave;tres appropri&eacute;s dans le noyau. V&eacute;rifions
que notre noyau inclut le protocole PPP. Si vous n'avez pas le
protocole PPP dans votre noyau ou dans un module, vous devrez
recompiler votre noyau et y ajouter PPP. Vous trouverez plus
d'informations dans le Kernel-HOWTO. Bien. Nous avons maintenant un
noyau correct. Nous devons &agrave; pr&eacute;sent configurer le
logiciel pour notre syst&egrave;me. Le programme de rappel fait
partie de mgetty-sendfax et de PPP. Vous le trouverez tous dans
votre distribution. En raison du syst&egrave;me de rappel et de la
double v&eacute;rification, nous devons cr&eacute;er un utilisateur
qui ex&eacute;cutera PPP c&ocirc;t&eacute; serveur&nbsp;:</p>
<pre>
pppuser:klkIOM89mn65H:230:PPP Dialin:/home/pppuser:/etc/ppp/ppplogin
</pre>
<p>Changez son mot de passe. Puis nous devons ajouter son mot de
passe dans le fichier <code>/etc/ppp/pap-secrets</code> (consultez
la page de manuel de pppd)&nbsp;:</p>
<pre>
pppuser * mot_de_passe_pour_pppuser *
</pre>
<p>Cet utilisateur ne dispose pas d'un shell classique, mais d'un
fichier <code>/etc/ppp/ppplogin</code>. Nous devons le faire
nous-m&ecirc;me. Par exemple, tapez <code>vi
/etc/ppp/ppplogin</code> et entrez&nbsp;:</p>
<pre>
#!/bin/sh 

exec /usr/sbin/pppd -detach 192.168.1.1:192.168.1.2
</pre>
<p>o&ugrave; 192.168.1.1 est l'adresse de notre serveur et
192.168.1.2 est l'adresse que nous donnons &agrave; notre modem.
Nous donnons les droits d'ex&eacute;cution &agrave; ce fichier.
Parce que nous utiliserons le d&eacute;mon PPP, nous devons
configurer ses options en &eacute;ditant le fichier
<code>/etc/ppp/options</code>&nbsp;:</p>
<pre>
netmask 255.255.255.0 

proxyarp 

lock 

crtscts 

modem 
</pre>
<p>Proxyarp est l'option la plus importante parce qu'elle permet
d'aller sur l'Internet par le modem du serveur. Les autres options
sont utilis&eacute;es pour contr&ocirc;ler votre modem. Votre
utilisateur ne pourra travailler que dans le r&eacute;seau local si
vous retirez l'option proxyarp. R&eacute;f&eacute;rez-vous au
PPP-HOWTO et &agrave; la page de manuel de pppd pour plus
d'informations. Nous allons maintenant configurer notre modem.
Notre serveur doit &ecirc;tre pr&ecirc;t &agrave; recevoir une
connexion apr&egrave;s son d&eacute;marrage. Nous &eacute;ditons le
fichier <code>/etc/inittab</code> et ajoutons, pour un modem sur le
deuxi&egrave;me port s&eacute;rie&nbsp;:</p>
<pre>
s1:2345:respawn:/sbin/mgetty ttyS1 -D /dev/ttyS1 vt100
</pre>
<p>Avec un modem sur le premier port s&eacute;rie, ce
serait&nbsp;:</p>
<pre>
s0:2345:respawn:/sbin/mgetty ttyS0 -D /dev/ttyS0 vt100
</pre>
<p>Entrons maintenant <code>init q</code>. Si nous n'avons pas
trace d'erreur dans les logs, nous pouvons poursuivre. Revenons
dans le r&eacute;pertoire <code>/etc/ppp</code> et cr&eacute;ons
<code>options.ttyS1</code> (pour un modem sur com1
<code>options.ttyS0</code>)</p>
<pre>
IP_locale: IP_distante
</pre>
<p>pour notre r&eacute;seau, ce sera&nbsp;:</p>
<pre>
192.168.1.1:192.168.1.2
</pre>
<p>Nous avons fait d&eacute;j&agrave; beaucoup de travail.
Maintenant, v&eacute;rifions le fichier
<code>/etc/mgetty+sendfax/login.config</code>. La ligne la plus
importante est&nbsp;:</p>
<pre>
/AutoPPP/ - a_ppp /usr/sbin/pppd auth -chap +pap login detach kdebug 7 debug
</pre>
<p>Les autres lignes peuvent &ecirc;tre comment&eacute;es avec des
<code>#</code>.</p>
<p>Nous devons donner les droits de super-utilisateur &agrave;
l'ex&eacute;cution (suid) au d&eacute;mon ppp, parce que
l'utilisateur pppuser doit lancer pppd et rendre l'interface
active.</p>
<pre>
chmod u+s /usr/sbin/pppd 
</pre>
<p>ce qui donne&nbsp;:</p>
<pre>
-rwsr-xr-x 1 root root 106892 Jan 11 1999 /usr/sbin/pppd
</pre>
<p>Je pense que c'est une bonne id&eacute;e d'ajouter &ccedil;a aux
t&acirc;ches programm&eacute;es de cron, parce que j'ai des
probl&egrave;mes de changement des pr&eacute;f&eacute;rences de
pppd apr&egrave;s un red&eacute;marrage de mon serveur. Notre
serveur fonctionne comme un routeur. Nous devons activer l'IP
forwarding en ajoutant cette ligne au fichier
<code>/etc/rc.d/rc.local</code>&nbsp;:</p>
<pre>
echo "1" &gt; /proc/sys/net/ipv4/ip_forward
</pre>
<p>Si vous avez une distribution RedHat, vous pouvez faire cela
avec <code>/etc/sysconfig/network</code> en changeant
<code>FORWARD_IPV4=false</code> en
<code>FORWARD_IPV4=true</code>.</p>
<p>Pour la v&eacute;rification quand nous appelons le serveur
Linux, nous utilisons un script. Si nous utilisons MS Windows, nous
devons choisir l'option <code>"Appeler terminal apr&egrave;s la
connexion"</code>. Nous nous connectons en tant qu'utilisateur
pppuser, avec son mot de passe. J'esp&egrave;re que tout est
OK.</p>
<h2><a name="ss2.4">2.4 Linux nous appelle.</a></h2>
<p>Nous pouvons d'ores et d&eacute;j&agrave; appeler notre serveur
Linux. Maintenant, c'est &agrave; Linux de nous appeler. Ce n'est
pas tr&egrave;s compliqu&eacute;. Nous devons seulement
&eacute;diter deux fichiers. Nous cr&eacute;ons le fichier
<code>/etc/mgetty+sendfax/callback.conf</code> que nous laissons
vide.</p>
<p>Ensuite, nous devons conna&icirc;tre le num&eacute;ro de
t&eacute;l&eacute;phone de nos utilisateurs. Nous devons inscrire
les num&eacute;ros qui pourront nous contacter. Nous devons pour
cela &eacute;diter le fichier
<code>/etc/mgetty+sendfax/login.conf</code> et ajouter la
ligne&nbsp;:</p>
<pre>
call - - /usr/sbin/callback - S 123456 
</pre>
<p>o&ugrave; call est un pseudo-utilisateur n&eacute;cessaire pour
lancer la connexion. La ligne dans le fichier
<code>/etc/mgetty+sendfax/login.conf</code> d&eacute;clenche le
programme devant appeler le num&eacute;ro fourni (dans cet exemple
c'est 123456). La m&ecirc;me proc&eacute;dure est &agrave; suivre
pour les autres utilisateurs. Expliquons comment cela fonctionne.
Nous appelons le serveur. Il nous demande de nous authentifier. Si
nous nous identifions comme le pseudo-utilisateur, le serveur
rappelle. Le script de notre ordinateur fait raccrocher le modem.
Nous attendons et la connexion est coup&eacute;e. Le programme de
rappel est alors lanc&eacute; et nous rappelle. Nous nous
authentifions comme l'utilisateur pppuser avec son mot de passe. La
connexion est associ&eacute;e &agrave; l'interface ppp, et c'est
tout. La configuration des stations de travail est tr&egrave;s
simple. Si vous avez MS Windows, vous devez installer une connexion
&agrave; distance pour votre num&eacute;ro. Dans les
propri&eacute;t&eacute;s du modem, on trouve
"Propri&eacute;t&eacute;s---&gt;Connexion---&gt;Avanc&eacute;...---&gt;Param&egrave;tres
suppl&eacute;mentaires", o&ugrave; nous mettons&nbsp;:</p>
<pre>
&amp;c0s0=1 
</pre>
<p>Fermons la fen&ecirc;tre et appelons. Nous nous authentifions
conform&eacute;ment &agrave; ce qui a &eacute;t&eacute; dit
pr&eacute;c&eacute;demment. Si nous utilisons Linux, nous devons
avoir recours aux scripts. Il est difficile de donner un seul bon
script pour Linux. Une bonne configuration de PPP est de
premi&egrave;re importance pour le syst&egrave;me. (Vous pouvez
tout d'abord appeler sous un profil pppuser avec un script). Les
scripts ci-dessous ont &eacute;t&eacute; &eacute;crits par A.
Gozdz. Je sugg&egrave;re de tout cataloguer. C'est juste une
suggestion, vous n'&ecirc;tes pas oblig&eacute; de d&eacute;marrer
par des scripts &agrave; cet endroit. Des informations
d&eacute;taill&eacute;es concernant les scripts avec Linux peuvent
&ecirc;tre trouv&eacute;es dans le PPP-HOWTO.</p>
<p><b>CES SCRIPTS FONCTIONNENT CORRECTEMENT AVEC UNE
SLACKWARE</b></p>
<p>Fichier de configuration pour le d&eacute;mon PPP (exemple pour
un modem reli&eacute; au deuxi&egrave;me port s&eacute;rie)
<code>/etc/options</code></p>
<pre>

lock

defaultroute 

noipdefault 

modem 

/dev/cua1 

33600 

crtscts 

debug 

passive 

asyncmap 0 
</pre>
<p>et les scripts sp&eacute;cifiques&nbsp;:</p>
<ul>
<li>le premier appel&eacute; /etc/ppp/ppp-call
<pre>
#!/bin/bash 

teksta="La connexion a &eacute;chou&eacute;"

tekstb="Vous allez probablement &ecirc;tre connect&eacute;" 

# /sbin/setserial /dev/cua1 spd_vhi 

killall -INT pppd 2&gt;/dev/null 

rm -f /var/lock/LCK* /var/run/ppp*.pid 

(/usr/sbin/pppd -detach /dev/ttyS1 115200 \ 

connect "/usr/sbin/chat -v -f /etc/ppp/pppcallback" &amp;) || \ 

(echo $teksta; ls marsss &gt;/dev/null; exit 1) 

echo $tekstb 

exit 0 
</pre></li>
<li>le second fichier appel&eacute; /etc/ppp/pppcallback
<pre>
TIMEOUT 60 

ABORT 'ERROR' 

ABORT 'BUSY' 

ABORT 'NO ANSWER' 

ABORT 'NO DIALTONE' 

ABORT '\nVOICE\r' 

ABORT '\nRINGING\r\n\r\nRINGING\r' 

'' AT&amp;FH0 &lt;p&gt;'OK-+++\c-OK' 'AT&amp;C0S0=1' 

TIMEOUT 75 

OK ATDT123456 

CONNECT '' 

ogin:-ogin: ppp_pseudouser 

'\nNO CARRIER\r' '' 

TIMEOUT 180 

'\nRING\r' AT&amp;C1A 

CONNECT '' 

TIMEOUT 20 

ogin:-ogin: pppuser 

sword:-sword mot_de_passe_de_pppuser 
</pre></li>
<li>Vous pouvez maintenant appeler par PPP :)</li>
</ul>
<p><b>CES SCRIPTS FONCTIONNENT CORRECTEMENT AVEC UNE RED HAT
6.x</b></p>
<ul>
<li>/etc/ppp/options
<pre>
lock 

defaultroute 

noipdefault 

modem 

33600 

crtscts 

debug 

passive 

asyncmap 0 
</pre></li>
<li>/etc/ppp/pppcallback
<pre>
TIMEOUT 5 

ABORT 'ERROR' 

ABORT 'BUSY' 

ABORT 'NO ANSWER' 

ABORT 'NO DIALTONE' 

ABORT '\nVOICE\r' 

ABORT '\nRINGING\r\n\r\nRINGING\r' 

'' AT&amp;FH0 'OK-+++\c-OK' 'AT&amp;C0S0=1' 

TIMEOUT 40 

OK ATDT5376443 CONNECT '' 

ogin:-ogin: ppp-pseudo-user 

'\nNO CARRIER\r' '' 

TIMEOUT 180 

'\nRING\r' AT&amp;C1A 

CONNECT '' 

TIMEOUT 20 

ogin:-ogin: pppuser 

sword:-sword mot_de_passe_de_pppuser 
</pre></li>
<li>/usr/bin/ppp-call
<pre>
#!/bin/bash 

teksta="La connexion a &eacute;chou&eacute;" 

tekstb="Vous allez probablement &ecirc;tre connect&eacute;"

# /sbin/setserial /dev/cua1 spd_vhi

killall -INT pppd 2&gt;/dev/null 

rm -f /var/lock/LCK* /var/run/ppp*.pid 

(/usr/sbin/pppd -detach call ppp_call &amp;) || \ 

(echo $teksta; ls marsss &gt;/dev/null; exit 1) 

echo $tekstb 

exit 0 
</pre></li>
<li>Vous pouvez maintenant appeler par PPP :)</li>
</ul>
<p>Si vous avez M$ Windows, vous pouvez utiliser ce script pour
vous connecter. Je ne l'ai pas test&eacute; (j'utilise un
terminal). Vous pouvez en savoir plus aupr&egrave;s d'Adrian
Debkowski ( <a href=
"mailto:adrian@cr-media.pl">adrian@cr-media.pl</a>).</p>
<pre>
proc main

delay 1

waitfor "ogin:"

transmit "call^M"

waitfor "RING"

transmit "ATA^M"

waitfor "CONNECT"

waitfor "ogin:"

transmit "pppuser^M"

waitfor "word:"

transmit "ppp^M"

endproc
</pre>
<h2><a name="ss2.5">2.5 R&eacute;sum&eacute;</a></h2>
<p>La configuration d'un service de rappel n'est pas
compliqu&eacute;e. La chose la plus importante est une
configuration correcte du serveur PPP sur Linux. Je ne connais pas
de meilleur moyen pour configurer un serveur d'acc&egrave;s. La
configuration pr&eacute;sent&eacute;e ci-dessus est le
r&eacute;sultat de nombreux essais, mais cela peut &ecirc;tre fait
d'une autre fa&ccedil;on. C'est pourquoi je sugg&egrave;re de lire
tous les documents concernant ce sujet, la page de manuel de pppd,
les NET4-HOWTO et PPP-HOWTO.</p>
</body>
</html>