Bonjour,
Je possède un vps chez OVH et je cherche à configurer au mieux les iptables et jusqu'à présent à part des petites frayeurs ça ne marche pas comme je voudrais. J'ai fait le script suivant en lissant différents guides pour iptables, mais de toute évidence j'ai dû rater des notions, mon but est de bloquer le port 22 pour n'autoriser que service technique d'ovh et d'utiliser le port 1038 pour se connecter en ssh et loger le tout en entrée. Je voulais aussi faire un suivi de connexion le reste je croie que les commentaires sont assez explicites.
merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 # Vidage des tables iptables -t filter -F iptables -t filter -X # Bloquage total iptables -t filter -P INPUT DROP iptables -t filter -P FORWARD DROP iptables -t filter -P OUTPUT DROP # Interface interne # In iptables -t filter -A OUTPUT -o lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT # Out iptables -t filter -A INPUT -i lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT # Ping (Paquet ICMP) # In iptables -t filter -A INPUT -p icmp -j ACCEPT # Out iptables -t filter -A OUTPUT -p icmp -j ACCEPT # NTP # Out iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT # SSH # In # Log les connexions sur le port 22 & 1038 iptables -t filter iptables -A INPUT -p tcp --dport 22 -j LOG --log-level info --log-prefix "INPUT ssh:22" iptables -t filter iptables -A INPUT -p tcp --dport 1038 -j LOG --log-level info --log-prefix "INPUT ssh:1038" # Filtrage sur le non-ovh si port 22 (+oo/heures) sinon connexion ssh sur port 1038 (10/heure) iptables -t filter -A INPUT -p tcp --dport 22 --source cache.ovh.net -j ACCEPT iptables -t filter -A INPUT -p tcp --dport 1038 -m limit --limit 10/hour -j ACCEPT # Out iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 1038 -j ACCEPT # DNS # In iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT # Out iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT # HTTP # In iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT # Out iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT # HTTPS # In iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT iptables -t filter -A INPUT -p tcp --dport 8443 -j ACCEPT # Out iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT # FTP # In iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # Out iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT # Conntrack # In iptables -A INPUT -i eth1 -s 0.0.0.0/0 -d 10.0.0.1 -p all -m state --state RELATED,ESTABLISHED -j ACCEPT # Out iptables -A OUTPUT -o eth1 -s 10.0.0.1 -d 0.0.0.0/0 -p all -m state ! --state INVALID -j ACCEPT # Webadmin (au cas où) iptables -A INPUT -i eth0 -p tcp --dport 10000 -j ACCEPT
Partager