logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
utilisateurs:hypathie:tutos:brouillon-bac-a-sable-de-mes-mini-tutos [19/10/2014 18:30]
Hypathie [Example squid conf]
utilisateurs:hypathie:tutos:brouillon-bac-a-sable-de-mes-mini-tutos [10/03/2016 18:45] (Version actuelle)
Hypathie [exemples]
Ligne 1: Ligne 1:
-====== Brouillons pour mini-tutos ====== 
-**DokuWiki**\\ ​ 
- 
-//Les syntaxes que j'​oublie à chaque fois !// 
- 
- 
-===code "​nowiki"​=== 
- 
-<​code>​ 
-<​nowiki>​ 
- 
-</​nowiki>​ 
-</​code>​ 
- 
-  * sans les balises "​nowiki"​ : 
-{{bla}} ​ <<​blabla >> ((blibli )) [[oufffff]] ​ 
-  * avec les balises "​nowiki"​ : 
-<​nowiki>​{{</​nowiki>​bla<​nowiki>​}}</​nowiki> ​ <​nowiki><<</​nowiki>​blabla <​nowiki>>></​nowiki>​ <​nowiki>​((</​nowiki>​blibli <​nowiki>​))</​nowiki>​ <​nowiki>​[[</​nowiki>​oufffff<​nowiki>​]]</​nowiki> ​ 
-===code citation=== 
-<code text référence>​ 
-( contenu/​du/​fichier ) 
-{contenu du fichier } 
-< cat = chat > 
-</​code>​ 
-===code bash=== 
-<code bash> 
-( contenu/​du/​fichier ) 
-{contenu du fichier } 
-< cat = chat > 
-</​code>​ 
- 
-===code c=== 
-<code c> 
-( contenu/​du/​fichier ) 
-{ contenu du fichier } 
-< cat = chat > 
-</​code>​ 
- 
-===code html=== 
-<code html> 
-( contenu/​du/​fichier ) 
-{ contenu du fichier } 
-< cat = chat > 
-</​code>​ 
- 
----- 
- 
-<note warning> warning : Ici je patauge : âmes sensibles, s'​abstenir !  </​note>​ 
-<note important>​ important ... </​note>​ 
-<note tip> tip ...</​note>​ 
- 
----- 
-IMAGE : pour réduire 
- 
-{{/​file-Re3e3ca235e1f5eb86a6b286979b00f73.png?​150}} ​ 
  
 ====== syntaxe des commandes utilisant les regexp ====== ====== syntaxe des commandes utilisant les regexp ======
Ligne 62: Ligne 7:
   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
  
-=====exemples ===== 
  
 =====Synthèse ​ grep ===== =====Synthèse ​ grep =====
Ligne 778: Ligne 722:
  
 /​sbin/​iptables -F /​sbin/​iptables -F
- 
 /​sbin/​iptables -X /​sbin/​iptables -X
- 
-/​sbin/​iptables -t nat -F 
- 
-/​sbin/​iptables -t nat -X 
- 
-/​sbin/​iptables -P INPUT ACCEPT 
- 
-/​sbin/​iptables -P FORWARD ACCEPT 
- 
-/​sbin/​iptables -P OUTPUT ACCEPT 
- 
 /​sbin/​iptables -P INPUT DROP /​sbin/​iptables -P INPUT DROP
- 
 /​sbin/​iptables -P OUTPUT DROP /​sbin/​iptables -P OUTPUT DROP
- 
 /​sbin/​iptables -P FORWARD DROP /​sbin/​iptables -P FORWARD DROP
- 
 /​sbin/​iptables -t nat -P PREROUTING ACCEPT /​sbin/​iptables -t nat -P PREROUTING ACCEPT
- 
 /​sbin/​iptables -t nat -P POSTROUTING ACCEPT /​sbin/​iptables -t nat -P POSTROUTING ACCEPT
- 
 /​sbin/​iptables -t nat -P INPUT ACCEPT /​sbin/​iptables -t nat -P INPUT ACCEPT
- 
 /​sbin/​iptables -t nat -P OUTPUT ACCEPT /​sbin/​iptables -t nat -P OUTPUT ACCEPT
- 
 /​sbin/​iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE /​sbin/​iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
 +##commenter / décommenter et adapter les quatre lignes suivantes pour ne pas mettre en place / mettre en place  
 +##un proxy transparent (squid) 
 +/​sbin/​iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.0.1:​3129 
 +/​sbin/​iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3129 
 +/​sbin/​iptables -t mangle -A PREROUTING -p tcp --dport 3128 -j DROP 
 +/​sbin/​iptables -t mangle -A PREROUTING -p tcp --dport 3129 -j DROP 
 +#accepter l'​interface lo
 /​sbin/​iptables -A INPUT -i lo -j ACCEPT /​sbin/​iptables -A INPUT -i lo -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -o lo -j ACCEPT /​sbin/​iptables -A OUTPUT -o lo -j ACCEPT
 +#accepter le sous-réseau
 /​sbin/​iptables -A INPUT -i eth1 -j ACCEPT /​sbin/​iptables -A INPUT -i eth1 -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -o eth1 -j ACCEPT /​sbin/​iptables -A OUTPUT -o eth1 -j ACCEPT
 +#permettre le passage entre les deux interfaces eternet de la passerelle
 /​sbin/​iptables -t filter -A FORWARD -i eth1 -o eth0 -s 192.168.1.0/​24 -d 0.0.0.0/0 -p tcp -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -t filter -A FORWARD -i eth1 -o eth0 -s 192.168.1.0/​24 -d 0.0.0.0/0 -p tcp -m state --state NEW,​ESTABLISHED,​RELATED -j ACCEPT
- 
 /​sbin/​iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0 -d 192.168.1.0/​24 -p tcp -m state --state ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -t filter -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0 -d 192.168.1.0/​24 -p tcp -m state --state ESTABLISHED,​RELATED -j ACCEPT
- 
 /​sbin/​iptables -t filter -A FORWARD -p icmp -j ACCEPT /​sbin/​iptables -t filter -A FORWARD -p icmp -j ACCEPT
 +#accepter le ping entre les réseaux locaux
 /​sbin/​iptables -t filter -A INPUT -p icmp -i eth0 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -t filter -A INPUT -p icmp -i eth0 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT
- 
 /​sbin/​iptables -t filter -A OUTPUT -p icmp -o eth0 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -t filter -A OUTPUT -p icmp -o eth0 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT
- 
 /​sbin/​iptables -t filter -A INPUT -p icmp -i eth1 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -t filter -A INPUT -p icmp -i eth1 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT
- 
 /​sbin/​iptables -t filter -A OUTPUT -p icmp -o eth1 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -t filter -A OUTPUT -p icmp -o eth1 -m conntrack --ctstate ESTABLISHED,​RELATED -j ACCEPT
- 
-/​sbin/​iptables -t filter -A OUTPUT -o eth0 -p udp -m udp --dport 53 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
- 
-/​sbin/​iptables -t filter -A INPUT -i eth0 -p udp -m udp --sport 53 -m state --state RELATED,​ESTABLISHED -j ACCEPT 
- 
-/​sbin/​iptables -t filter -A OUTPUT -o eth1 -p udp -m udp --dport 53 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
- 
-/​sbin/​iptables -t filter -A INPUT -i eth1 -p udp -m udp --sport 53 -m state --state RELATED,​ESTABLISHED -j ACCEPT 
- 
-/​sbin/​iptables -t filter -A OUTPUT -o eth0 -p tcp -m multiport --dports 80,443,8000 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
- 
-/​sbin/​iptables -t filter -A INPUT -i eth0 -p tcp -m multiport --sports 80,443,8000 -m state --state RELATED,​ESTABLISHED -j ACCEPT 
- 
-/​sbin/​iptables -A OUTPUT -o eth1 -p tcp -m multiport --dports 80,443,8000 -j ACCEPT 
- 
-/​sbin/​iptables -A INPUT -i eth1  -p tcp -m multiport --sports 80,443,8000 -j ACCEPT 
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 0 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 0 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 0 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 0 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 3/4 -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 3/4 -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 3/4 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 3/4 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 3/4 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 3/4 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 3/3 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 3/3 -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 3/3 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 3/3 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 3/3 -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 3/3 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 3/1 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 3/1 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 3/1 -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 3/1 -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 3/1 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 3/1 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 4 -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 4 -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 4 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 4 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 4 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 4 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 2/s -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 2/s -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 8 -j LOG --log-prefix "​ICMP/​in/​8 Excessive: " /​sbin/​iptables -A INPUT -p icmp --icmp-type 8 -j LOG --log-prefix "​ICMP/​in/​8 Excessive: "
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 8 -j DROP /​sbin/​iptables -A INPUT -p icmp --icmp-type 8 -j DROP
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 8 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 8 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 11 -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 11 -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 11 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 11 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 11 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 11 -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -p icmp --icmp-type 12 -j ACCEPT /​sbin/​iptables -A INPUT -p icmp --icmp-type 12 -j ACCEPT
- 
 /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 12 -j ACCEPT /​sbin/​iptables -A OUTPUT -p icmp --icmp-type 12 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -p icmp --icmp-type 12 -j ACCEPT /​sbin/​iptables -A FORWARD -p icmp --icmp-type 12 -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -s 192.168.1.0/​24 -d 192.168.0.0/​24 -p icmp --icmp-type echo-request -j ACCEPT /​sbin/​iptables -A FORWARD -s 192.168.1.0/​24 -d 192.168.0.0/​24 -p icmp --icmp-type echo-request -j ACCEPT
- 
 /​sbin/​iptables -A FORWARD -s 192.168.0.0/​24 -d 192.168.1.0/​24 -p icmp --icmp-type echo-reply -j DROP /​sbin/​iptables -A FORWARD -s 192.168.0.0/​24 -d 192.168.1.0/​24 -p icmp --icmp-type echo-reply -j DROP
- 
 /​sbin/​iptables -A INPUT -p icmp -m limit -j LOG --log-prefix "​ICMP/​IN:​ " /​sbin/​iptables -A INPUT -p icmp -m limit -j LOG --log-prefix "​ICMP/​IN:​ "
- 
 /​sbin/​iptables -A OUTPUT -p icmp -m limit -j LOG --log-prefix "​ICMP/​OUT:​ " /​sbin/​iptables -A OUTPUT -p icmp -m limit -j LOG --log-prefix "​ICMP/​OUT:​ "
- 
 /​sbin/​iptables -N syn_flood /​sbin/​iptables -N syn_flood
- 
 /​sbin/​iptables -I INPUT -p tcp --syn -j syn_flood /​sbin/​iptables -I INPUT -p tcp --syn -j syn_flood
- 
 /​sbin/​iptables -A syn_flood -m limit --limit 1/s --limit-burst 3 -j RETURN /​sbin/​iptables -A syn_flood -m limit --limit 1/s --limit-burst 3 -j RETURN
- 
 /​sbin/​iptables -A syn_flood -j LOG --log-prefix '​[SYN_FLOOD] : ' /​sbin/​iptables -A syn_flood -j LOG --log-prefix '​[SYN_FLOOD] : '
- 
 /​sbin/​iptables -A syn_flood -j DROP /​sbin/​iptables -A syn_flood -j DROP
 +#autoriser la connexion avec les serveurs DNS 
 +/​sbin/​iptables -t filter -A OUTPUT -o eth0 -p udp -m udp --dport 53 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
 +/​sbin/​iptables -t filter -A INPUT -i eth0 -p udp -m udp --sport 53 -m state --state RELATED,​ESTABLISHED -j ACCEPT 
 +/​sbin/​iptables -t filter -A OUTPUT -o eth1 -p udp -m udp --dport 53 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
 +/​sbin/​iptables -t filter -A INPUT -i eth1 -p udp -m udp --sport 53 -m state --state RELATED,​ESTABLISHED -j ACCEPT 
 +#autoriser la navigation web 
 +/​sbin/​iptables -t filter -A OUTPUT -o eth0 -p tcp -m multiport --dports 80,443,8000 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
 +/​sbin/​iptables -t filter -A INPUT -i eth0 -p tcp -m multiport --sports 80,443,8000 -m state --state RELATED,​ESTABLISHED -j ACCEPT 
 +/​sbin/​iptables -A OUTPUT -o eth1 -p tcp -m multiport --dports 80,443,8000 -j ACCEPT 
 +/​sbin/​iptables -A INPUT -i eth1  -p tcp -m multiport --sports 80,443,8000 -j ACCEPT 
 +#Si le serveur cups est branché sur un ordinateur du réseau 192.168.0.0/​24,​ par exemple sur 192.168.0.22 
 +# laisser décommenter les deux lignes suivantes : 
 +/​sbin/​iptables -A INPUT -i eth0 -s 192.168.0.22 -d 192.168.0.1 -p tcp --sport 631 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
 +/​sbin/​iptables -A OUTPUT -o eth0 -s 192.168.0.1 -d 192.168.0.22 -p tcp --dport 631 -m state --state NEW,​RELATED,​ESTABLISHED -j ACCEPT 
 +#créer une chaîne utilisateur pour les connexion ssh, les loguer et les accepter
 /​sbin/​iptables -t filter -N InComingSSH /​sbin/​iptables -t filter -N InComingSSH
- 
 /​sbin/​iptables -I INPUT -i eth0 -s 192.168.0.0/​24 -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW,​ESTABLISHED -j InComingSSH /​sbin/​iptables -I INPUT -i eth0 -s 192.168.0.0/​24 -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW,​ESTABLISHED -j InComingSSH
- 
 /​sbin/​iptables -A InComingSSH -j LOG --log-prefix '​[INCOMING_SSH] : ' /​sbin/​iptables -A InComingSSH -j LOG --log-prefix '​[INCOMING_SSH] : '
- 
 /​sbin/​iptables -A InComingSSH -j ACCEPT /​sbin/​iptables -A InComingSSH -j ACCEPT
- 
 /​sbin/​iptables -t filter -A OUTPUT -o eth0 -p tcp -m tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT /​sbin/​iptables -t filter -A OUTPUT -o eth0 -p tcp -m tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
- 
 /​sbin/​iptables -t filter -A OUTPUT -o eth1 -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW,​ESTABLISHED -j ACCEPT /​sbin/​iptables -t filter -A OUTPUT -o eth1 -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW,​ESTABLISHED -j ACCEPT
- 
 /​sbin/​iptables -t filter -A INPUT -i eth1 -s 192.168.0.0/​24 -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT /​sbin/​iptables -t filter -A INPUT -i eth1 -s 192.168.0.0/​24 -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
 +#créer une chaîne utilisateur pour les connexions ftp, et les accepter
 /​sbin/​iptables -N ftp_in_accept /​sbin/​iptables -N ftp_in_accept
- 
 /​sbin/​iptables -I INPUT -i eth0 -p tcp --sport 21 -m state --state ESTABLISHED,​RELATED -j ftp_in_accept /​sbin/​iptables -I INPUT -i eth0 -p tcp --sport 21 -m state --state ESTABLISHED,​RELATED -j ftp_in_accept
- 
 /​sbin/​iptables -I INPUT -i eth0 -p tcp --sport 20 -m state --state ESTABLISHED,​RELATED -j ftp_in_accept /​sbin/​iptables -I INPUT -i eth0 -p tcp --sport 20 -m state --state ESTABLISHED,​RELATED -j ftp_in_accept
- 
 /​sbin/​iptables -I INPUT -i eth0 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ftp_in_accept /​sbin/​iptables -I INPUT -i eth0 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ftp_in_accept
- 
 /​sbin/​iptables -A ftp_in_accept -p tcp -j ACCEPT /​sbin/​iptables -A ftp_in_accept -p tcp -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -i eth1 -p tcp --sport 21 -m state --state ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -A INPUT -i eth1 -p tcp --sport 21 -m state --state ESTABLISHED,​RELATED -j ACCEPT
- 
 /​sbin/​iptables -A INPUT -i eth1 -p tcp --sport 20 -m state --state ESTABLISHED,​RELATED -j ACCEPT /​sbin/​iptables -A INPUT -i eth1 -p tcp --sport 20 -m state --state ESTABLISHED,​RELATED -j ACCEPT
- 
 /​sbin/​iptables -I INPUT -i eth1 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT /​sbin/​iptables -I INPUT -i eth1 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
  
Ligne 981: Ligne 855:
   * Et maintenant :   * Et maintenant :
 <code root>​systemctl start iptables.service</​code>​ <code root>​systemctl start iptables.service</​code>​
 +
 +
  
 =====Example squid conf ===== =====Example squid conf =====
Ligne 1059: Ligne 935:
 <​code>/​mnt/​proxy/​log/​squid3/​access.log</​code>​ <​code>/​mnt/​proxy/​log/​squid3/​access.log</​code>​
 <code root>​tail -f /​mnt/​proxy/​log/​squid3/​access.log</​code>​ <code root>​tail -f /​mnt/​proxy/​log/​squid3/​access.log</​code>​
 +ou 
 +<code root>​tail -f /​var/​log/​squid3/​access.log</​code>​
 owner : proxy not root owner : proxy not root
  
Ligne 1289: Ligne 1167:
    
 # #
 +</​code>​
 +
 +=====Inverser les mots d'une phrase=====
 +
 +<​code>​
 +PROCEDURE INVERSER L'​ORDRE DES MOTS D'UNE PHRASE TERMINEE PAR UN POINT
 +___________________________________________________________________________________________
 +
 +
 +1) Définition du problème :
 +
 +
 +une phrase | | Une phrase nouvelle phrase dont les
 +avec point   ​--------> ​ | | ---> ​ mots sont séparés d'un seul espace écrit à l'​envers
 +obigatoire | | ​      dont chacun des mots sont écrits à l'​envers.
 +
 +
 +
 +2 ) Jeu d'​essai
 +
 +
 +Phrase phrase inversée
 +------------------------------------------------------------------
 +' '​. '​ '
 + ​. '​.'​
 +"Il fait beau."​  ​     "lI tiaf uaeb."
 +"Li tiaf uaeb."​ "​iL fait beau."
 +"​il ​   fait  beau." ​                            "​li tiaf uaeb."
 +"il fait       ​beau." ​                          "​li tiaf uaeb."
 +"il fait. beau" ​                                 "li tiaf."
 +
 +
 +3)Algo de principe:
 +
 +Parcourir une phrase terminée par un point pour lui enlever les espaces inutiles.
 +Saisir chaque mot avec sa taille sur cette phrase.
 +Inverser et copier chaque mot de cette phrase dans une nouvelle chaîne.
 +
 +
 +
 +4) Définition des données
 +
 +
 +
 +5) Programme de test
 +
 +
 +6) Programme de la procédure inverser l'​ordre des lettres des mots dans une phrase
 +   ​________________________
 +   
 +   ​réflexion préalable sur l'​affichage d'un tableau
 +    ---------------------
 +    = > comment afficher un tableau dans le bon sens ?
 +
 +    Enregistrer un tableau de 1 à n (sens du début à la fin)
 +
 +
 +                               n
 +     | b | o | n | j | o | u | r |
 +       ​1 ​  ​2 ​  ​3 ​  ​4 ​  ​5 ​  ​6 ​  7
 +
 +     Pour i de 1 à n
 +
 +     cible := Mot[1], cible := '​b'​ ; pour cible := Mot[2], cible := '​o'​ ...
 +                    // donc pour afficher tous les éléments de tab dans l'​ordre'​ on fait 
 +                    //  cible := Mot[n], cible := n 
 +                    //  lire (Mot[cible]) de 1 à n 
 +                    // Pour avancer on sait que n suit l'​indice i du tableau, càd, quand n =1 ; i = 1'
 +                    // Donc ci-dessus revient à : lire (Mot[i]) de 1 à n
 +                    // Pour avancer : Pour i de 1 à n 
 +                    //                lire (Mot[i]) ; i := i + 1
 +           // Ou encore :
 +     //  TANTQUE i <= n FAIRE 
 +                    //       i := i + 1
 +                    //       ​lire(Mot[i])
 +     //  FINTANTQUE ​
 +
 +        Pour lire un tableau en sens inverse de longueur à 1  (par exemple de 7 à 1)
 +        Pour i de longueur à 1 (par exemple, longueur =  7 ; on a '​r'​ ) 
 +
 +        i commence à 7 et termine à 1 ; à chaque tour on enleve 1 à i (i=i-1)
 +
 +        cible := mot[i] ; par exemple quand i = 4 ; mot[4]='​n'​ ; cible prend la valeur '​n'​
 +
 +        mot-inverse[longueur - i ] := cible ;ainsi 7-4 =3 donc Mot-Inverse[3]='​n'​
 +                                 n
 +       | b | o | n | j | o | u | r |     => lire(MotInverse[longueur - i ])
 +         ​1 ​  ​2 ​  ​3 ​  ​4 ​  ​5 ​  ​6 ​  ​7 ​         ​
 +        ____________________________________________________________________________
 +
 +fonction inversMot(entrée chaine : Mot
 +    ​entrée long   : entier) : Mot 
 +Type
 +Mot = tableau[long] de caractères
 +
 +Variables
 +
 +long : entier // taille réelle de mot
 +i : entier // indice de parcours en sens inverse de Mot[long]
 +MotInverse : Mot // c est le mot inversé
 +
 +Début ​
 +      écrire('​saisissez un mot')
 +      lire(mot, tailleMot)
 +      ​
 +      i := tailleMot
 +      long := long(mot)
 +      Pour i de (long) à 1
 +         cible := mot[i]
 +         ​motInverse[long - i]
 +      FinPour
 +      copier(MotInverse)
 +Fin
 +________________________
 +
 +
 </​code>​ </​code>​
utilisateurs/hypathie/tutos/brouillon-bac-a-sable-de-mes-mini-tutos.1413736232.txt.gz · Dernière modification: 19/10/2014 18:30 par Hypathie

Pied de page des forums

Propulsé par FluxBB