Il y a quelques jours, j'ai commencé à me soucier beaucoup de la sécurité de mes données, je me suis retrouvé avec nmap
avec: nmap 127.0.0.1
Surprise, surprise, j'ai beaucoup de services actifs à écouter localhost:
$ nmap 127.0.0.1
Starting Nmap 5.21 ( http://nmap.org ) at 2013-05-05 00:19 WEST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00025s latency).
Not shown: 993 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
53/tcp open domain
111/tcp open rpcbind
139/tcp open netbios-ssn
445/tcp open Microsoft-ds
631/tcp open ipp
Nmap done: 1 IP address (1 Host up) scanned in 0.05 seconds
Le seul que je pourrais utiliser est ssh
(bien qu'il ne soit probablement pas bien configuré, je vais garder cette question à une autre question) .
Autant que je sache, le protocole ipp
est utilisé par CUPS pour partager mes imprimantes, je n'ai pas besoin de les partager, il suffit d'accéder aux imprimantes depuis un serveur.
Il s'agit de la sortie de netstat -lntup
Par l'utilisateur root, en supprimant les adresses des hôtes locaux:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 497/sshd
tcp 0 0 0.0.0.0:17500 0.0.0.0:* LISTEN 2217/dropbox
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 892/smbd
tcp 0 0 0.0.0.0:50022 0.0.0.0:* LISTEN 1021/rpc.statd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 892/smbd
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 906/rpcbind
tcp6 0 0 :::22 :::* LISTEN 497/sshd
tcp6 0 0 :::42712 :::* LISTEN 1021/rpc.statd
tcp6 0 0 :::445 :::* LISTEN 892/smbd
tcp6 0 0 :::139 :::* LISTEN 892/smbd
tcp6 0 0 :::111 :::* LISTEN 906/rpcbind
udp 0 0 0.0.0.0:51566 0.0.0.0:* 615/avahi-daemon: r
udp 0 0 0.0.0.0:68 0.0.0.0:* 7362/dhclient
udp 0 0 0.0.0.0:111 0.0.0.0:* 906/rpcbind
udp 0 0 192.168.1.255:137 0.0.0.0:* 1782/nmbd
udp 0 0 192.168.1.67:137 0.0.0.0:* 1782/nmbd
udp 0 0 0.0.0.0:137 0.0.0.0:* 1782/nmbd
udp 0 0 192.168.1.255:138 0.0.0.0:* 1782/nmbd
udp 0 0 192.168.1.67:138 0.0.0.0:* 1782/nmbd
udp 0 0 0.0.0.0:138 0.0.0.0:* 1782/nmbd
udp 0 0 0.0.0.0:655 0.0.0.0:* 906/rpcbind
udp 0 0 0.0.0.0:17500 0.0.0.0:* 2217/dropbox
udp 0 0 0.0.0.0:5353 0.0.0.0:* 615/avahi-daemon: r
udp 0 0 0.0.0.0:34805 0.0.0.0:* 1021/rpc.statd
udp6 0 0 :::40192 :::* 1021/rpc.statd
udp6 0 0 :::111 :::* 906/rpcbind
udp6 0 0 :::655 :::* 906/rpcbind
udp6 0 0 :::5353 :::* 615/avahi-daemon: r
udp6 0 0 :::42629 :::* 615/avahi-daemon: r
Comment configurer ces services pour qu'ils n'écoutent le monde extérieur que lorsque je les utilise?
127.0.0.1 n'est pas le "monde extérieur", il regarde à l'intérieur de la maison.
Vérifiez la configuration de votre pare-feu (iptables dans Linux aujourd'hui), la plupart d'entre eux ne devraient pas être accessibles depuis l'extérieur.
N'exécutez pas les services dont vous n'avez pas besoin. Désinstallez tous les logiciels non requis.
Changez mots de passe pour être plus fort. Vérifiez votre utilisation du système, ne cherchez pas au hasard un site Web intéressant. Vérifiez la configuration anti-phishing, anti-scripts, etc. du navigateur. Révisez votre utilisation de SSH et su/Sudo.
Mais surtout, une paranoïa excessive est contre-productive. Ne vous laissez pas piéger par les paillettes de technologie .
Bien que vous puissiez "fermer" des services individuels, il peut être plus simple de configurer un pare-feu. Presque toutes les distributions courantes (Ubuntu, Debian, Centos, etc.) prennent en charge les iptables intégrés.
Un jeu de règles simple pour commencer: (vous pouvez simplement les saisir à l'invite de commande; pour les rendre permanents, ajoutez-les à vos scripts de démarrage ou dites-nous quelle distribution vous utilisez. Sur Centos par exemple: system-config -firewall est une bonne interface utilisateur pour configurer les règles iptables)
iptables -A INPUT -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -j DROP
Fondamentalement - autoriser ssh entrant; laissez tomber tout le reste.
Votre chaîne INPUT ressemble maintenant à ceci:
Puis à une date ultérieure, dites que vous voulez autoriser 'samba' (partage de fichiers Windows): vous pouvez exécuter
iptables -I INPUT-p tcp --dport 465 -j ACCEPT
Le -I
ajoute et règle la liste; -A
ajoute une règle. Votre chaîne ressemble maintenant à ceci:
La chaîne INPUT
fait référence aux paquets destinés à votre système. Les autres chaînes sont OUTPUT
pour les paquets de votre ordinateur, aller sur Internet et FORWARD
pour les paquets qui sont acheminés via votre ordinateur (c'est-à-dire les paquets qui "transitent" votre ordinateur, comme la zone de transit d'un aéroport - des choses qui ne sont pas INPUT
car elles n'entrent pas dans votre ordinateur).
Comme note de départ: nmap'ing 127.0.0.1 n'est pas très utile; de nombreux services ne sont accessibles qu'à partir de 127.0.0.1 et aucune autre adresse. Si vous n'avez pas d'autre machine, vous pouvez exécuter nmap à partir de - essayez d'utiliser Shields UP de Gibson Research! ( https://www.grc.com/shieldsup ) - qui est un nmap-lite en ligne gratuit. Ou ajoutez un commentaire avec votre adresse IP/e-mail et je vais vous nmap :)