{"version":"1.1","schema_version":"1.1.0","plugin_version":"1.1.2","url":"https://tutos-gameserver.fr/2019/05/02/tutoriel-sur-la-securite-et-la-configuration-de-linux-internet-server-serveur-dimpression/","llm_html_url":"https://tutos-gameserver.fr/2019/05/02/tutoriel-sur-la-securite-et-la-configuration-de-linux-internet-server-serveur-dimpression/llm","llm_json_url":"https://tutos-gameserver.fr/2019/05/02/tutoriel-sur-la-securite-et-la-configuration-de-linux-internet-server-serveur-dimpression/llm.json","manifest_url":"https://tutos-gameserver.fr/llm-endpoints-manifest.json","language":"fr-FR","locale":"fr_FR","title":"Tutoriel sur la sécurité et la configuration de Linux Internet Server\n\n &#8211; Serveur d&rsquo;impression","site":{"name":"Tutos GameServer","url":"https://tutos-gameserver.fr/"},"author":{"id":1,"name":"Titanfall","url":"https://tutos-gameserver.fr/author/titanfall/"},"published_at":"2019-05-02T16:08:28+00:00","modified_at":"2019-05-02T16:08:28+00:00","word_count":11454,"reading_time_seconds":3437,"summary":"Étapes de sécurité de base / Vue d&#39;ensemble: Effectuez les étapes suivantes pour sécuriser votre site Web: Voir les erratas de distribution et les correctifs de sécurité (voir la page d&#39;accueil de Yolinux pour la liste). [e.g. Red Hat Linux Errata] Mettez à jour votre système le cas échéant. Red Hat / CentOS: yum check-update [&hellip;]","summary_points":["Étapes de sécurité de base / Vue d&#39;ensemble:\n\nEffectuez les étapes suivantes pour sécuriser votre site Web:\n      \n\nVoir les erratas de distribution et les correctifs de sécurité (voir la page d&#39;accueil de Yolinux pour la liste).","[e.g.","Red Hat Linux Errata]          Mettez à jour votre système le cas échéant.","Red Hat / CentOS:\n\nyum check-update\n                    (Imprimer la liste des paquets à mettre à jour.)\n                \nmiam mise à jour\n                \n\n                Notez que cela peut être automatisé en utilisant le /etc/init.d/yum-updatesd service (RHEL / CentOS 5) ou créer un travail cron /etc/cron.daily/yum.cron\n\n\n\n\n\n#!"],"topics":["Serveur d'impression"],"entities":[],"entities_metadata":[{"id":10,"name":"Serveur d'impression","slug":"serveur-dimpression","taxonomy":"category","count":3907,"url":"https://tutos-gameserver.fr/category/serveur-dimpression/"}],"tags":["Serveur d'impression"],"content_hash":"63ab34d7c8712c69cabff57ca8472bc7","plain_text":"Étapes de sécurité de base / Vue d&#39;ensemble:\n\nEffectuez les étapes suivantes pour sécuriser votre site Web:\n      \n\nVoir les erratas de distribution et les correctifs de sécurité (voir la page d&#39;accueil de Yolinux pour la liste). [e.g. Red Hat Linux Errata]          Mettez à jour votre système le cas échéant.\n\nRed Hat / CentOS:\n\nyum check-update\n                    (Imprimer la liste des paquets à mettre à jour.)\n                \nmiam mise à jour\n                \n\n                Notez que cela peut être automatisé en utilisant le /etc/init.d/yum-updatesd service (RHEL / CentOS 5) ou créer un travail cron /etc/cron.daily/yum.cron\n\n\n\n\n\n#! / bin / sh\n/ usr / bin / yum -R 120 -e 0 -d 0 -y mise à jour yum\n/ usr / bin / yum -R 10 -e 0 -d 0 -y mise à jour\n              \n\n\nUbuntu / Debian:\n\napt-get update\n                    (Mettez à jour la liste des packages vers la dernière version associée à cette version du système d&#39;exploitation.)\n                \napt-get upgrade\n                \n\n\n\n\nRéduisez le nombre de services réseau exposés. Ceux-ci seront lancés par\nscripts en /etc/rc.d/rc*.d/ des répertoires. (Voir la liste complète des services en: /etc/init.d/)\nIl n’est peut-être pas nécessaire d’exécuter sendmail (serveur de messagerie),\nportmap (écouteur RPC requis par NFS),\nlpd (démon du serveur d’imprimante en ligne. Les pirates cherchent constamment à obtenir ce service pour mon système.),\ninnd (serveur de news), linuxconf etc.\nPar exemple, sendmail peut être supprimé du processus de démarrage à l’aide de la commande suivante:\n          chkconfig --del sendmail ou en utilisant l&#39;outil de configuration Ntsysv.\nLe service peut être terminé à l&#39;aide de la commande /etc/rc.d/init.d/sendmail stop.\nÀ tout le moins, vous devez exécuter la commande chkconfig --list\npour voir quels processus sont configurés pour pouvoir être utilisés après le démarrage.\nVoir le tutoriel sur le processus d&#39;initialisation YoLinux\n\nVérifiez votre configuration. Répertoriez les ports ouverts et les processus qui les contiennent: netstat -punta (Essayez aussi netstat -nlp)\n        \nListe des services RPC: [root]# rpcinfo -p localhost\n    Idéalement, vous NE PAS être en cours d&#39;exécution portmapper donc pas de services RPC\n    serait disponible. Désactivez portmapper: service portmap stop (ou: /etc/init.d/portmap stop) et\n    supprimez-le de la séquence de démarrage du système: chkconfig --del portmap\n    (Portmap est requis par NFS.)\n        \nFTP anonyme (avec wu_ftpd &#8211; Dernière livraison avec RH 8.0. RH 9 et FC utilisent vsftpd):\n    Par défaut, Red Hat est configuré pour le FTP anonyme.\n    Cela permet aux utilisateurs de ftp sur votre serveur et de se connecter avec le login.\n    anonyme et utilisez une adresse email comme mot de passe. Si vous le souhaitez\n    pour désactiver cette fonctionnalité éditer le fichier / etc / ftpaccess et changer:\n    classe tout réel, invité, anonyme *\n    à\n    classe tout réel, invité *\n    Pour plus d&#39;informations sur la configuration FTP, voir: Didacticiel de configuration FTP du serveur Web YoLinux\n\nUtilisez le trouver commande pour localiser les vulnérabilités &#8211; trouver les fichiers suid et guid (pouvant s&#39;exécuter avec les privilèges root), ainsi que les fichiers et les répertoires accessibles en écriture dans le monde entier. Par exemple:\n\nfind / -xdev  (-perm -4000 -o -perm -2000 ) -type f -print\n                Supprimez les privilèges suid sur les programmes exécutables avec la commande: chmod -s nom de fichier\n            \n    find / -xdev  (-nouser -o -nogroup ) -print\n                Rechercher des fichiers n&#39;appartenant pas à un utilisateur ou à un groupe valide.\n            \n\n\nUtilisez la commande chattr\net lsattr\nrendre un fichier de sécurité sensible non modifiable en plus des autorisations habituelles.\n\n\nRendre un fichier non modifiable: chattr + i / bin / ls\n              Rendre les répertoires non modifiables: chattr -R + i / bin / sbin / boot / lib\n              Faire un fichier ajouter seulement: chattr + a / var / log / messages\n            \n\n\nUtilisez &quot;tripwire&quot;\n[sourceforge: tripwire]\npour la surveillance de la sécurité de votre système à la recherche de traces de fichiers non autorisés\nchangements. Tripwire est proposé dans le cadre des distributions de base Red Hat et Ubuntu.\nLa configuration de Tripwire est décrite ci-dessous.\n\nRegardez vos fichiers de journaux en particulier / var / log / messages et\n   / var / log / secure.\n        \nÉvitez les noms de compte génériques tels que client.\n        \nUtilisez les configurations de wrapper réseau de PAM pour interdire les mots de passe pouvant être utilisés.\ntrouvé facilement par crack ou d&#39;autres programmes de piratage.\nL&#39;authentification PAM peut également interdire l&#39;accès à la connexion au réseau racine.\n(Configuration Red Hat par défaut.\nVous devez vous connecter en tant qu&#39;utilisateur régulier et su - pour obtenir un accès root.\nCe n&#39;est PAS la valeur par défaut pour ssh et doit être modifié comme indiqué ci-dessous.)\n          Voir le tutoriel YoLinux Network Admin sur l’utilisation de PAM\n        \nL&#39;accès à distance NE DOIT PAS être effectué avec un texte telnet en texte clair, mais avec une connexion chiffrée utilisant ssh. (Plus tard dans ce tutoriel)\n        \nParamètres du fichier Proc pour la défense contre les attaques. Cela inclut des mesures de protection contre\nUsurpation d&#39;adresse IP, attaques par saturation ou attaques par syncookies.\n        \nDDoS (attaques par déni de service distribué): le seul\nce que vous pouvez faire est d&#39;avoir une bande passante et un traitement gobs\nalimentation / pare-feu. Beaucoup de puissance de traitement ou un pare-feu sont inutiles\nsans bande passante\ncar le réseau peut être surchargé par une attaque distribuée.\nRegarde aussi:\n    \nMalheureusement, les paquets sont généralement usurpés et dans mon cas, le FBI\ns&#39;en fichait. Si le serveur est un serveur distant, utilisez un modem d&#39;accès à distance ou\nune deuxième adresse IP et une route d&#39;accès, car la route attaquée est\nbloqué par le déluge de\nattaques de réseau. Vous pouvez également demander à votre FAI de supprimer le trafic ICMP.\nà\nles adresses IP de vos serveurs. (et UDP si tout ce que vous utilisez est un\nserveur Web. Les serveurs de noms DNS utilisent UDP.)\nPour une lecture très intéressante, voir &quot;The Strange Tale&quot; de l&#39;attaque DDoS de GRC.com. (Très intéressante lecture sur l’anatomie des réseaux de hacker bot.)\n    \nL&#39;accès utilisateur peut être restreint avec les fichiers de configuration suivants:\n\n/etc/security/limits.conf\n    \n/etc/security/group.conf\n    \n/etc/security/time.conf\n    \n\n    Voir le tutoriel YoLinux SysAdmin &#8211; restreindre les utilisateurs\n        \nSupprimer les utilisateurs inutiles du système. Voir / etc / passwd.\nPar défaut\nLes installations Red Hat ont de nombreux comptes utilisateur créés pour prendre en charge\ndivers processus. Si vous n’avez pas l’intention d’exécuter ces processus, supprimez\nles utilisateurs. c&#39;est-à-dire retirer\nidentifiants utilisateur jeux, uucp, rpc, rpcd, ...\n        \n\nDémon de réseau IP:\n\n\nIl est préférable, pour des raisons de sécurité, de réduire le nombre\ndes services réseau inetd exposés. Plus vous exposez de services, plus votre\nvulnérabilité. Réduire le nombre de services réseau accessibles via\nle démon xinet ou inet par:\n\ninetd: (ancien chapeau rouge)\n    Commentez les services inutiles dans le /etc/initd.conf fichier.\n    Exemple: (FTP est le seul service que je lance)\n\n    flux ftp tcp maintenant racine / usr / sbin / tcpd in.ftpd -l -a\n    \n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/inetd restart \n\nxinetd: (systèmes actuels)\n    Tous les services réseau sont désactivés par défaut lors d&#39;une mise à niveau. Exemple de fichier: /etc/xinetd.d/wu-ftpd:\n\nservice ftp\n\n     disable = yes - La valeur par défaut est désactivée. Cette ligne contrôle le service xinetd (activé ou non)\n     socket_type = stream\n     attendre = non\n     utilisateur = root\n     serveur = /usr/sbin/in.ftpd\n     server_args = -l -a\n     log_on_success + = DURÉE USERID\n     log_on_failure + = USERID\n     bien = 10\n\n    \n    Activer / désactiver un service xinetd:\n\nEditez le fichier: /etc/xinetd.d/Nom du service\n    Changer de ligne &quot;désactiver = oui&quot;désactive un service xinetd.\n    Changer de ligne &quot;désactiver = non&quot;active un service xinetd.\n    La configuration de Xinetd doit être effectuée pour chaque fichier du répertoire.\n    /etc/xinetd.d/ afin de configurer chaque service réseau.\n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/xinetd restart \n\nVous pouvez également utiliser la commande:\n        chkconfig wu-ftpd sur\n        OU\n        chkconfig wu-ftpd off \nCela modifiera le fichier approprié (/etc/xinetd.d/wu-ftpd)\n    et redémarrez le processus xinetd.\n    \n\n\n    Pointe:\n    \n\nRépertoriez les paramètres init, y compris tous les services contrôlés xinetd: chkconfig --list\n    \nÉnumérer le statut des services (systèmes Red Hat / Fedora Core): service - état général\n    \n\n\n\n\n\nConfiguration du noyau:\n\n\nUtilisation Pare-feu Linux règles de protection contre les attaques. (iptables: noyau 2.4+ ou ipchains: noyau 2.2)\n    Les règles de refus d&#39;accès peuvent également être implémentées à la volée par portsentry.\n    (Lieu à la fin de /etc/rc.d/rc.local à exécuter au démarrage du système, ou un autre script approprié)\n\nscript iptables:\n\niptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS\n\n\n\niptables -A INPUT -p udp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS\n\n\n\niptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 6000: 6009 -j DROP  - Bloquer X-Windows\n\n\n\niptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 7100 -j DROP       - Bloquer le serveur de polices X-Windows\n\n\n\niptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante\n\n\n\niptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante\n\n\n\niptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS\n\n\n\niptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS\n\n\n\niptables -A INPUT -p tout -s localhost -i eth0 -j DROP            - Refuser les paquets extérieurs d’Internet qui\n                                                                          prétendre être de votre interface de bouclage.\n        \n\nscript ipchains:\n\n# Autoriser l&#39;accès en boucle. Cette règle doit précéder les règles interdisant l&#39;accès au port !!\niptables -A INPUT -i lo -p all -j ACCEPT         - Cette règle est essentielle si vous voulez votre propre ordinateur\n\n\n\niptables -A OUTPUT -o lo -p all -j ACCEPT                pour pouvoir accéder à lui-même via l&#39;interface de bouclage\n\n\n\n\n\n\n\nipchains -A entrée -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT       - Bloc NFS\n\n\n\nipchains -A entrée -p udp -s 0/0 -d 0/0 2049 -j REJECT          - Bloc NFS\n\n\n\nipchains -A entrée -p tcp -s 0/0 -d 0/0 6000: 6009 -y -j REJECT  - Bloquer X-Windows\n\n\n\nipchains -A entrée -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT       - Bloquer le serveur de polices X-Windows\n\n\n\nipchains -A entrée -p tcp -s 0/0 -d 0/0 515 -y -j REJECT        - Bloquer le port de l&#39;imprimante\n\n\n\nipchains -A entrée -p udp -s 0/0 -d 0/0 515 -j REJECT           - Bloquer le port de l&#39;imprimante\n\n\n\nipchains -A entrée -p tcp -s 0/0 -d 0/0 111 -y -j REJECT        - Bloquer Sun rpc / NFS\n\n\n\nipchains -A entrée -p udp -s 0/0 -d 0/0 111 -j REJECT           - Bloquer Sun rpc / NFS\n\n\n\nipchains -A entrée -j REJECT -p tout -s localhost -i eth0 -l    - Refuser et consigner (&quot;-l&quot;) les paquets extérieurs à Internet\n                                                                       qui prétendent être de votre interface de bouclage.\n        \n\n\n    Remarque:\n\n    iptables utilise la règle de chaîne &quot;INPUT&quot; et ipchains utilise la minuscule\n    descripteur &quot;entrée&quot;.\n    \nVoir les règles avec iptables -L ou ipchains -L commander.\n    \nPage de manuel d&#39;iptables\n    \n    Lorsque vous utilisez un serveur Web Internet, il est préférable que votre ordinateur soit sécurisé.\n        vue, qu’on ne lance PAS l’impression, X-Window, NFS ou d’autres services pouvant\n        être exploité si une vulnérabilité est découverte ou si elle est mal configurée\n        indépendamment des règles de pare-feu.\n    \n\n    Regarde aussi:\n    \n\nUtilisation portsentry pour surveiller les attaques de pirates réseau et affecter dynamiquement des règles de pare-feu pour contrecarrer les attaquants. (Plus tard dans ce tutoriel)\n\nUn monolithique et noyau minimal pourrait également fournir un petit peu de\nprotection (éviter les modules Trojan) et exécution sur du matériel moins courant\n(MIPS, Alpha, etc &#8230; afin que les instructions de débordement de tampon ne s&#39;exécutent pas.)\n\nAméliorations de la sécurité du noyau:\n\nActiver ExecShield: Ceci est activé par défaut sur Red Hat EL 5 / CentOS 5.\n            ExecShield est une fonctionnalité du noyau Linux qui protège le système contre les exploits de débordement de mémoire tampon.\n            Cette fonctionnalité est réalisée par un placement aléatoire de la mémoire de pile, une prévention de l&#39;exécution de la mémoire utilisée pour la gestion de la mémoire tampon de données et de texte.\n            ExecShield peut être activé dans le fichier de configuration Red Hat / CentOS /etc/sysctl.conf en ajoutant les deux lignes suivantes:\n\nkernel.exec-shield = 1\nkernel.randomize_va_space = 1\n            \n            La configuration actuelle du système peut être vérifiée:\n\ncat / proc / sys / kernel / exec-shield\n            \ncat / proc / sys / kernel / randomize_va_space\n            \n\n            Les deux devraient être &quot;1&quot;. (Défaillance du système)\n\n            Remarque: processeurs Intel XD / AMD NX 32 bits uniquement x 32 (pas x86_64 pouvant traiter plus de 4 Go):\n            Activez la prise en charge d’AMD NX ou d’Intel XD à l’aide du noyau PAE (Physical Address Extension). L&#39;extension de mémoire PAE est nécessaire pour accéder au bit XD / NX.\n            Pour savoir si votre processeur prend en charge NX ou XD PAE, utilisez la commande suivante: cat / proc / cpuinfo | drapeaux grep pour afficher un champ avec &quot;pae&quot; et &quot;nx&quot;.\n            Installez un noyau Linux (2.6.8+) avec support PAE avec la commande miam installer le noyau-PAE. Le chargeur de démarrage devra également spécifier le noyau PAE pour le démarrage.\n            Le BIOS devra également être configuré pour le prendre en charge.\n            Ce noyau ne doit être installé que sur un système doté d’un processeur x86 32 bits offrant cette prise en charge. Les processeurs x86_64 64 bits pouvant interagir de manière native avec le bit XD / NX n&#39;ont pas besoin du noyau PAE.\n            \n\n\nRègles de pare-feu pour bloquer les blocs IP incorrects:\n\nIl est bien connu qu’il existe différents blocs d’adresses IP où résident des pirates informatiques et des robots anti-spam. Ces blocs de propriété intellectuelle appartenaient souvent à des sociétés et à des organisations légitimes, mais sont tombés dans un royaume non surveillé ou ont été détournés et vendus à des spammeurs criminels.\nCes blocs IP doivent être bloqués par des règles de pare-feu.\n\nIl existe divers services conviviaux qui recherchent et découvrent ces blocs IP de pare-feu et les refusent, et ils partagent cette information avec nous. Merci!\n\n\nLa liste déroulante Spamhaus: Il s&#39;agit d&#39;un script permettant de télécharger la liste déroulante totale et de générer un script de filtrage iptables pour bloquer ces adresses IP mêmes:\n\n\n\n\n\n\n#! / bin / bash\n# Liste noire des zones de hackers et des domaines défectueux de spamhaus.org\nFILE = drop.lasso\n/ bin / rm -f $ FILE\nwget http://www.spamhaus.org/drop/drop.lasso\nblocks = $ (cat $ FILE | egrep -v &#39;^;&#39; | awk &#39;print $ 1&#39;)\necho &quot;#! / bin / bash&quot;&gt; Spamhaus-drop.lasso.sh\npour ipblock dans les blocs $\nfaire\n echo &quot;iptables -I INPUT -s $ ipblock -j DROP&quot; &gt;&gt; Spamhaus-drop.lasso.sh\nterminé\nchmod ugo + x Spamhaus-drop.lasso.sh\necho &quot;... fait&quot;\n\n\nPour bloquer les adresses IP, exécutez simplement le script sur chacun de vos serveurs: ./Spamhaus-drop.lasso.sh\nAu minimum, ces blocs d&#39;adresses IP devraient être refusés par tous les serveurs.\n\n\nBloquer ou autoriser par pays: On peut refuser l&#39;accès de certains pays ou l&#39;inverse, n&#39;autoriser que certains pays à accéder à votre serveur.\n\nVoir ces sites pour générer des listes:\n\nBloquer le forum et les spammeurs de la liste de commentaires: Utilisez la liste générée à partir de pots de miel exploités par StopForumSpam.com\n\n\n\n\n\n\n#! / bin / bash\n# Grande liste d&#39;adresses IP à bloquer\nNombre d&#39;adresses IP recueillies au cours des 30 derniers jours\n# Plus de 100 000 adresses IP\n\nrm -f Listed_ip_30.zip\nwget http://www.stopforumspam.com/downloads/listed_ip_30.zip\n\nrm -f Listed_ip_30.txt\nDécompressez listing_ip_30.zip\n\necho &quot;#! / bin / bash&quot;&gt; Stopforumspam-listed_ip_30.sh\ncat ./listed_ip_30.txt | awk &#39;print &quot;/ sbin / iptables -I INPUT -s&quot; $ 1 &quot;-j DROP&quot;&#39; &gt;&gt; Stopforumspam-listed_ip_30.sh\n\nchmod ugo + x Stopforumspam-listed_ip_30.sh\n\n\nPour bloquer les adresses IP, exécutez simplement le script: ./Stopforumspam-listed_ip_30.sh\n\nSachez qu&#39;il s&#39;agit d&#39;une liste extrêmement longue et que son exécution peut prendre des heures.\nC&#39;est aussi une liste qui change rapidement et qui est constamment mise à jour.\n\n[Potential Pitfall]: Vous pouvez obtenir l&#39;erreur suivante:\n\niptables: erreur inconnue 18446744073709551615\n\nJ&#39;ai constaté qu&#39;en ralentissant l&#39;exécution du script, je pouvais éviter cette erreur.\nJ&#39;ai ajouté un écho bash pour écrire chaque ligne à l&#39;écran et elle s&#39;est bien mieux comportée bien que beaucoup plus lente.\n\n#! / bin / bash\nset -x verbose\n/ sbin / iptables -I INPUT -s XX.XX.XX.XX -j DROP\n...\n\nIdentifiez l&#39;ennemi:\nUtilisez ce qui suit pour identifier et géolocaliser une adresse IP (InfoSniper.net):\n\nServeur Web Apache:\n\n\nModules Apache: Désactivez les modules que vous n&#39;allez pas utiliser. Si votre site Web ne dessert pas https, désactivez-le.\n    Avec les exploits antérieurs de SSL, ceux qui ont utilisé cette philosophie n’ont pas été brûlés.\n    \nApache version exposition: (Version 1.3+) N&#39;autorisez pas les pirates informatiques à déterminer la version du logiciel de serveur Web que vous exécutez en induisant une erreur et donc une réponse automatique du serveur. Les attaques sont souvent spécifiques à la version. Les spammeurs déclenchent également des erreurs pour trouver des adresses électroniques.\n          \n\n\n\n\n\n...\n\nWebmaster ServerAdmin chez megacorp dot com\nServerSignature Off\n\n...\n          \n\n          De toute façon, la réponse risque d’être dénuée de sens si vous utilisez le serveur Web en tant que proxy pour un autre.\n\nBloquez les pirates et les pays qui n&#39;utiliseront jamais votre site Web.\n        Utilisez la directive Apache Refuser de bloquer l&#39;accès. \n\n\n\n    \n    \n    \n    ...\n    ...\n    ...\n    Ordre permettre, refuser\n    # Bots en forme de bloc\n    Refuser à partir de 88.191.0.0/16 193.200.193.0/24 194.8.74.0/23\n    permettre à tous\n\n        \n\n        Pour une liste exhaustive des adresses IP à bloquer, voir la\n        Liste de blocage de Wizcrafts.net\n\n\nSSH: (shell sécurisé)\n\nProtocole SSH suite d&#39;outils de connectivité réseau sont utilisés pour chiffrer\nconnexions sur Internet. SSH chiffre tout le trafic, y compris\nidentifiants et mots de passe pour éliminer efficacement le sniffing sur le réseau,\ndétournement de connexion et autres attaques au niveau du réseau.\nDans une session telnet classique, le mot de passe est transmis via Internet.\nnon chiffré.\n      \nSSH sur Linux fait référence à OpenSSH Secure Shell Terminal et aux connexions de transfert de fichiers sftp / scp. SSH est également un produit commercial mais disponible librement pour un usage non commercial\nde SSH Communications Security à\n      http://www.ssh.com/.\nDeux versions sont disponibles, SSH1 (maintenant très ancien) et SSH2 (actuel).\nLa version commerciale de SSH peut être achetée et / ou téléchargée à partir de leur\nsite Internet.\nNotez que SSH1 présente un problème de vulnérabilité majeur.\nLe groupe de craquage et de défiguration du site Web &quot;woot-project&quot; utilise cette vulnérabilité.\n      NE PAS UTILISER LE PROTOCOLE SSH1 !!!!!\n(&quot;woot-project&quot; exploit / attaque description / récupération)\n      \nOpenSSH a été développé par le\n      OpenBSD Project et est disponible gratuitement.\nOpenSSH est compatible avec SSH1 et SSH2.\nOpenSSH s&#39;appuie sur le projet OpenSSL pour la couche de communication cryptée.\nLes versions actuelles de Linux sont fournies avec OpenSSH / OpenSSL.\n      \n\n      Liens:\n      \n      \n\n\n      OpenSSH:\n      \n\nTélécharger:\n          \n    Remarque: SSH et SSL sont inclus dans Red Hat Linux 7.0+.\n\nInstallation:\n\nCommun au client et au serveur:\n              \nClient:\n\nRed Hat / Fedora / CentOS:\n\nrpm -ivh openssh-askpass-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-clients-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-askpass-gnome-2.xxx-x.x.x86.rpm    - Utilisateurs de bureau Gnome\n        \n\nUbuntu / Debian:\n\napt-get installer openssh-client ssh-askpass-gnome\n              \n\n\n\nServeur:\n              \n\n    Si vous mettez à niveau à partir de SSH1, vous devrez peut-être utiliser l&#39;option RPM --Obliger.\n\n    Le rpm installera les fichiers binaires, les fichiers de configuration et les\n    openssh-server va installer le script d&#39;initialisation /etc/rc.d/init.d/sshd\n    pour que sshd commencera au démarrage du système.\n          \n\nConfiguration:\n\nFichier de configuration du client / etc / ssh / ssh_config: (Défaut)\n\n\n\n\n\n# $ OpenBSD: ssh_config, v 1.9 2001/03/10 12:53:51 deraadt Exp $\n\n# Ceci est un fichier de configuration système client ssh. Voir ssh (1) pour plus\n# information. Ce fichier fournit des valeurs par défaut aux utilisateurs et les valeurs peuvent\n# être modifié dans les fichiers de configuration par utilisateur ou sur la ligne de commande.\n\n# Les données de configuration sont analysées comme suit:\n# 1. options de ligne de commande\n# 2. Fichier spécifique à l&#39;utilisateur\n# 3. fichier du système\n# Toute valeur de configuration n&#39;est modifiée que la première fois qu&#39;elle est définie.\n# Ainsi, les définitions spécifiques à l’hôte doivent figurer au début de la\n# fichier de configuration, et les valeurs par défaut à la fin.\n\n# Valeurs par défaut pour l&#39;ensemble du site pour diverses options\n\n# Hôte *\n# ForwardAgent no\n# ForwardX11 non\n# RhostsAuthentication no\n# RhostsRSAAuthentication oui\n# RSAAuthentication oui\n# Password Authentification oui\n# FallBackToRsh no\n# UseRsh no\n# BatchMode no\n# CheckHostIP yes\n# StrictHostKeyChecking oui\n# IdentityFile ~ / .ssh / identity\n# IdentityFile ~ / .ssh / id_rsa\n# IdentityFile ~ / .ssh / id_dsa\n# Port 22\n# Protocole 2.1 - Remplacez cette ligne par: Protocole 2\n# Cipher 3des\n# Chiffres aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour, aes192-cbc, aes256-cbc\n# EscapeChar ~\nHôte *\n        ForwardX11 oui\n        \n\n    Changer la ligne: # Protocole 2,1\n    à:     Protocole 2\n    Cela éliminera l&#39;utilisation du protocole SSH1.\n\n    Décommentez les options requises ou acceptez les valeurs par défaut codées en dur.\n    Les valeurs par défaut codées en dur pour le client OpenSSH sont compatibles avec SSH1\n    fichiers client et serveur sshd. Une mise à niveau vers le client OpenSSH\n    ne nécessite aucune modification des fichiers $ HOME / .ssh /.\n              \n\nFichier de configuration du serveur / etc / ssh / sshd_config:\n        Défaut:\n\n# $ OpenBSD: sshd_config, v 1.38 2001/04/15 21:41:29 deraadt Exp $\n\n# Ce sshd a été compilé avec PATH = / usr / bin: / bin: / usr / sbin: / sbin\n\n# Ceci est le fichier de configuration système du serveur sshd. Voir sshd (8)\n# pour plus d&#39;informations.\n\nPort 22\n#Protocole 2,1                             - Changer en: Protocole 2\n#ListenAddress 0.0.0.0\n#ListenAddress ::\nClé de l&#39;hôte / etc / ssh / ssh_host_key\nClé de l&#39;hôte / etc / ssh / ssh_host_rsa_key\nHostKey / etc / ssh / ssh_host_dsa_key\nServerKeyBits 768\nLoginGraceTime 600                        - Changer en: LoginGraceTime 120\nKeyRegenerationInterval 3600\nPermitRootLogin oui                       - Changer en: PermitRootLogin no\n#\n# Ne pas lire les fichiers ~ / .rhosts et ~ / .shosts\nIgnoreRhosts oui\n# Supprimer le commentaire si vous ne faites pas confiance à ~ / .ssh / known_hosts pour RhostsRSAAuthentication\n#IgnoreUserKnownHosts oui\nStrictModes oui\nX11Forwarding oui\nX11DisplayOffset 10\nPrintMotd oui\n#PrintLastLog no\nKeepAlive oui\n\n# Enregistrement\nSyslogFacility AUTHPRIV\nLogLevel INFO\n#obsoletes QuietMode et FascistLogging\n\nRhostsAuthentication non\n#\n# Pour que cela fonctionne, vous aurez également besoin de clés d&#39;hôte dans / etc / ssh / ssh_known_hosts\nRhostsRSAAuthentication non\n# similaire pour la version 2 du protocole\nAuthentification par l&#39;hôte non\n#\nAuthentification RSAA oui\n\n# Pour désactiver les mots de passe en texte clair tunnelés, choisissez non ici!\nAuthentification par mot de passe oui\nPermitEmptyPasswords no\n\n# Un-comment pour désactiver les mots de passe s / key\n#ChallengeResponseAuthentication no\n\n# Supprimer le commentaire pour activer l&#39;authentification interactive au clavier PAM\n# Avertissement: l&#39;activation de cette option peut contourner le paramètre &#39;PasswordAuthentication&#39;\n#PAMAuthenticationViaKbdInt yes\n\n# Pour changer les options de Kerberos\n#KerberosAuthentication no\n#KerberosOrLocalPasswd oui\n#AFSTokenPassing no\n#KerberosTicketCleanup no\n\n# Kerberos TGT Passing ne fonctionne qu&#39;avec le kaserver AFS\n#KerberosTgtPassing oui\n\n#CheckMail oui\n#UseLogin no\n\n#MaxStartups 10:30:60\n#Banner /etc/issue.net\n#ReverseMappingCheck Oui\n\nSous-système sftp / usr / libexec / openssh / sftp-server\n        \n\n\n\nGénérer des clés système: / etc / ssh /\n\nssh-keygen -q -t rsa -f / etc / ssh / ssh_host_rsa_key -C &#39;&#39; -N &#39;&#39;\nssh-keygen -q -t dsa -f / etc / ssh / ssh_host_dsa_key -C &#39;&#39; -N &#39;&#39;\nClés privées générées: chmod 600 / etc / ssh / ssh_host_dsa_key / etc / ssh / ssh_host_rsa_key\nClés publiques générées: chmod 644 /etc/ssh/ssh_host_dsa_key.pub /etc/ssh/ssh_host_rsa_key.pub\nPour SELinux:\n\n / sbin / restorecon /etc/ssh/ssh_host_rsa_key.pub\n / sbin / restorecon /etc/ssh/ssh_host_dsa_key.pub\n\n\n\n\nGénérer des clés utilisateur:\n\nClient:\n           Utilisez la commande: / usr / bin / ssh-keygen -t rsa\n\n\n\n\nGénération d&#39;une paire de clés rsa publique / privée.\nEntrez le fichier dans lequel enregistrer la clé (/ home /identifiant d&#39;utilisateur/.ssh/id_rsa):\nEntrez mot de passe (vide pour aucun mot de passe):\nEntrez à nouveau le même mot de passe:\nVotre identification a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.\nVotre clé publique a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.pub.\nL&#39;empreinte digitale clé est:\nXX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX: XX user-id@nom de noeud\n        \n        Fichiers générés: \n\n$ HOME / .ssh / id_rsa            - binaire \n$ HOME / .ssh / id_rsa.pub        - ssh-rsa ... 223564257432 adresse électronique\n                             - Plusieurs clés / lignes autorisées.\n        \n        Options de commande:\n\n-t rsa (pour la version 2 du protocole)\n        \n-t dsa (pour la version 2 du protocole)\n        \n-t rsa1 (pour la version 1 du protocole)\n        \n-b 2048 (spécifie la longueur de la clé en bits)\n        \n\n\nServeur:\n           \n\nFTP le fichier $ HOME/.ssh/id_rsa.pub au serveur\n           \ncd $ HOME / .ssh /\n           \ncat id_rsa.pub &gt;&gt; registered_keys2\n           \n\n\n\n\nUtilisation de ssh: sur le client, utilisez la commande suivante\n    et connectez-vous comme vous le feriez normalement avec une session telnet:\n          ssh nom-du serveur \n          La première fois que vous utilisez ssh, le message suivant sera envoyé:\n\nL&#39;authenticité de l&#39;hôte &#39;node.your-domain.com (XXX.XXX.XXX.XXX) &#39;ne peut être établi.\nL&#39;empreinte de la clé RSA est XX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX.\nÊtes-vous sûr de vouloir continuer à vous connecter (oui / non)? Oui\nAttention: ajouté en permanence &#39;node.your-domain.com,XXX.XXX.XXX.XXX&#39;(RSA) à la liste des hôtes connus.\nutilisateur@node.your-domainMot de passe .com:\n    \n    Répondez oui. Il ne demandera plus.\n\n    Pour utiliser un nom d&#39;utilisateur différent pour la connexion, indiquez-le sur la ligne de commande:\n    ssh -l nom d&#39;utilisateur nom du serveur \n          \n\n\nNote: Vous pouvez maintenant aussi utiliser la commande sftp pour des transferts de fichiers ftp sécurisés avec ssh.\n\nOpenSSH Man Pages:\n      \n\nssh &#8211; Client OpenSSH SSH (programme de connexion à distance)\n        \nsshd &#8211; démon OpenSSH ssh\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh_config &#8211; Fichier de configuration du client OpenSSH SSH\n        \nsshd_config &#8211; Fichier de configuration du démon OpenSSH SSH\n        \nssh-add &#8211; ajoute les identités RSA ou DSA pour l&#39;agent d&#39;authentification. Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nssh-agent &#8211; agent d&#39;authentification\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \nsftp &#8211; Programme de transfert de fichiers sécurisé\n        \nsftp-server &#8211; sous-système de serveur SFTP\n        \n\nAutres liens OpenSSH:\n      \nSSH pour les liens MS / Windows:\n      \nNotes SSH:\n      \n\nLe sshd ne doit pas être démarré avec xinetd / inetd en raison du temps nécessaire pour effectuer\n    calculs quand il est initialisé.\n        \nLe client ssh va rechercher la racine. sshd sur le serveur est exécuté en tant que root.\n    Les privilèges root sont nécessaires pour communiquer sur les ports inférieurs à 1024.\n    L&#39;option -p peut être utilisée pour exécuter SSH sur un autre port.\n        \n    RSA est utilisé pour l&#39;échange de clés et un chiffrement conventionnel (Blowfish par défaut)\n    est utilisé pour chiffrer la session.\n        \nLe cryptage est démarré avant l’authentification, et aucun mot de passe ou autre\n    l&#39;information est transmise en clair.\n        \nAuthentification:\n\nLa connexion est appelée par l&#39;utilisateur.\n              Le client indique au serveur la clé publique que l&#39;utilisateur souhaite utiliser.\n              utiliser pour l&#39;authentification.\n          \nLe serveur vérifie ensuite si cette clé publique est admissible.\n               Si oui, un nombre aléatoire est généré et crypté avec le public\n               clé et envoie la valeur au client.\n           \nLe client déchiffre ensuite le numéro avec sa clé privée et calcule une\n               somme de contrôle. La somme de contrôle est renvoyée au serveur\n           \nLe serveur calcule une somme de contrôle à partir des données et compare les sommes de contrôle.\n           \n    L&#39;authentification est acceptée si les sommes de contrôle correspondent.\n           \n\n\nSSH utilisera $ HOME / .rhosts (ou $ HOME / .shosts)\n        \nPour établir une connexion réseau sécurisée sur un autre port TCP, utilisez\n            Options &quot;tunneling&quot; avec la commande ssh: \n\nTransférer le port local TCP vers hostport sur l&#39;hôte distant:\n              ssh hôte distant -L Port: localhost:commande hostport \n          \n\n          Spécifier des ports inférieurs à 1024 nécessitera un accès root.\n          FTP ouvre plusieurs ports et n’est donc pas un bon candidat. Le port 21 est seulement\n          utilisé pour établir la connexion.\n        \n\nPages de manuel:\n      \n\nssh &#8211; client shell sécurisé (programme de connexion à distance)\n        \nsshd &#8211; démon shell sécurisé (serveur)\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh-keyscan &#8211; récupère les clés publiques ssh\n        \nssh-add &#8211; ajoute des identités pour l&#39;agent d&#39;authentification Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nslogin\n        \nsftp &#8211; client du programme de transfert de fichiers sécurisé.\n        \nsftp-server &#8211; serveur de programme de transfert de fichiers sécurisé.\n        \nssh-agent &#8211; Agent d&#39;authentification.\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \ntelnet &#8211; interface utilisateur avec le protocole TELNET\n        \n\nDocumentation:\n      \n\n/ usr / share / doc / openssh-XXX /\n        \n/ usr / share / doc / openssh-askpass-XXX /\n        \n/usr/share/doc/openssl-0.XXX/\n        \n\n\n\n      Tester:\n      \nLe renifleur de réseau Ethereal (maintenant Wireshark) était utilisé pour renifler les transmissions réseau\nentre le client et le serveur pour telnet et ssh\navec les résultats suivants:\n      \n\nTestez la connexion telnet en texte clair: (port 23)\n             Le texte envoyé par le client est un texte vert sur fond noir.\n             Le reste du texte a été transmis par le serveur.\n             Notez que l&#39;identifiant (&quot;JoeUser&quot;) et le mot de passe (&quot;super-secret-password&quot;) ont été capturés.\n\nTestez la connexion cryptée ssh: (port 22)\n            Notez que tout l’échange de login et de mot de passe était crypté.\n        \n\nFail2ban: bloquer les connexions échouées répétées\n\nTout site sur Internet public sera soumis à des attaques par mots de passe dictionnaires, essayant constamment de nouveaux mots, séquences de mots et séquences ASCII à partir de programmes d&#39;attaque automatisés provenant de serveurs compromis.\nUtilisez fail2ban pour bloquer ces tentatives.\nFail2ban examinera les fichiers journaux pour rechercher les tentatives de connexion infructueuses répétées et bloquera de manière temporaire ou permanente les adresses IP du système attaquant.\nLa configuration par défaut de fail2ban examine le fichier journal sshd. / var / log / secure pour trouver le système attaquant et autorisera 5 tentatives de connexion infructueuses avant le blocage pendant 600 secondes (10 minutes).\n\nFail2ban peut être configuré pour surveiller les processus suivants:\n\nsshd\n\nsmtp\n\nApache httpd\n\nlumière\n\nvsftpd\n\npostfix\n\nbind9 nommé\n\nmysqld\n\nastérisque\n\n&#8230;\n\n\nInstallation:\n\nChapeau rouge: yum installer fail2ban\n\nUbuntu: sudo apt-get install fail2ban\n\n\nConfiguration:\n\n/etc/fail2ban/fail2ban.conf\n\n\n[Definition]\n\n\n\n# 1 = ERREUR\n# 2 = WARN\n# 3 = INFO\n# 4 = DEBUG\nloglevel = 3\n\n# Values: fichier STDOUT STDERR SYSLOG Par défaut: /var/log/fail2ban.log\n# Une seule cible de journal peut être spécifiée.\nlogtarget = SYSLOG\n\nsocket = /var/run/fail2ban/fail2ban.sock\npidfile = /var/run/fail2ban/fail2ban.pid\n    \n\n\n/etc/fail2ban/jail.conf (souvent copié dans jail.local et édité pour les directives locales)\n\n\n[DEFAULT]\n\n\n\nignoreip = 127.0.0.1/8\nbantime = 3600\nfindtime = 600\nmaxretry = 3\nbackend = auto\nusedns = non\n\n[ssh-iptables]\nenabled = true\nfiltre = sshd\naction = iptables[name=SSH, port=ssh, protocol=tcp]\n           sendmail-whois[name=SSH, dest=root, sender=user@megacorp.com]\nlogpath = / var / log / secure\nmaxretry = 3\n    \n\n    Remarque: si votre serveur est attaqué, fail2ban peut livrer beaucoup de courrier électronique. Vous voudrez peut-être enlever le sendmail-whois déclaration.\n    [DEFAULT]    directives:\n   \n\n\n\nDirectif\nLa description\n\n\n\n\nignorer\nLes adresses IP à ne jamais interdire, comme votre système de passerelle. Plusieurs IP sont séparées par un espace. Ceci est votre liste blanche. Valeur par défaut 127.0.0.1 (localhost)\n\n\ntrouver le temps\npériode au cours de laquelle l&#39;échec se produit. Par exemple, 600 fait référence au nombre maximal d&#39;échecs survenant pendant cette période de recherche sera banni. 600 secondes par défaut\n\n\nmaxretry\nspécifier le nombre d&#39;échecs avant qu&#39;une adresse IP ne soit bannie. Par défaut 3\n\n\nbantime\nnombre de secondes qu&#39;une adresse IP est bannie\n\n\nactivée\ntrue = surveiller le processus spécifié. false pour aucune surveillance. La valeur par défaut n&#39;est vraie que pour sshd\n\n\n\n\n\nRedémarrez après avoir modifié la configuration: service sudo fail2ban redémarrer\n\nConfigurez init pour démarrer fail2ban au démarrage: sudo chkconfig --level 345 fail2ban on\n\nVoir aussi le fichier journal: / var / log / messages\n\n\nVérifiez le blocage des pirates informatiques:\nAffichez les règles de pare-feu générées par les connexions ayant échoué:\n\n\n[host]# iptables -L\nChaîne INPUT (politique ACCEPT)\ncible cible source opt opt\nfail2ban-SSH tcp - n&#39;importe où n&#39;importe où tcp dpt: ssh\n\nChaîne À SUIVRE (politique ACCEPTER)\ncible cible source opt opt\n\nChaîne OUTPUT (politique ACCEPT)\ncible cible source opt opt\n\nChain fail2ban-SSH (1 références)\ncible cible source opt opt\nREJETTEZ tous - 122.189.194.238 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJET tout - 183.94.11.208 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJETER tout - 58.218.204.132 n&#39;importe où rejetez-avec icmp-port-inaccessible\nRETOURNEZ tout - n&#39;importe où \n\n\nVérifier le statut fail2ban:\nAfficher le statut de sshd fail2ban:\n\n\n[host]# fail2ban-client status\nStatut\n| - Nombre de prison: 1\n`- Liste de prison: ssh-iptables\n\n[host]# fail2ban-client status ssh-iptables\nStatut de la prison: ssh-iptables\n| - filtre\n| | - Liste de fichiers: / var / log / secure\n| | - Échec actuel: 0\n| `- Total échoué: 102\n`- action\n   | - Actuellement banni: 3\n   | `- Liste IP: 122.189.194.238 183.94.11.208 58.218.204.132\n   `- Total interdit: 26\n\nLiens:\nrssh: shell restreint à utiliser avec OpenSSH sftp\n\nFTP utilise un accès en texte clair à votre serveur. Cela convient si tous les systèmes du centre de données sont sécurisés et que personne ne peut renifler le réseau.\nLes configurations de routeur et de commutateur rendent pratiquement impossible le reniflage de la plupart des réseaux de nos jours, mais des problèmes de sécurité au niveau du centre de données sur un autre serveur peuvent entraîner des problèmes pour vos serveurs si vous autorisez les mots de passe non chiffrés utilisés par FTP.\n\nVsFTPd permet également de limiter la vue du système de fichiers à ses propres répertoires.\nC&#39;est bon. OpenSSH &quot;sftp&quot; ne fournit pas cette fonctionnalité (jusqu&#39;à la version 4.9. RHEL / CentOS 5 utilisait OpenSSH 4.3).\nLe transfert de fichier &quot;sftp&quot; crypte les mots de passe (bien) mais nécessite également un accès shell (bash, csh, &#8230;) pour le compte permettant un accès complet au système de fichiers (mauvais).\nle rssh shell peut être utilisé avec sftp, scp, cvs, rsync, et rédiger et peuvent chrooter les utilisateurs vers leurs propres répertoires et limiter la fonction à un accès sftp uniquement (refuser l&#39;accès au shell complet).\n\nPour les systèmes plus récents (RHEL6 / CentOS6 / Fedora 11) avec OpenSSH 4.9+, voir la configuration sftp chrootée préférée pour OpenSSH 4.9+.\n\nLa solution est d&#39;utiliser rssh en tant que shell avec OpenSSH &quot;sftp&quot;:\nInstallation: rpm -ivh rssh-2.3.2-1.2.el5.rf.x86_64.rpm\nCela installe:\n\n\n/ usr / bin / rssh\n\n/etc/rssh.conf\n\naussi programme de soutien / usr / libexec / rssh_chroot_helper et pages de manuel\n\n\nVérifiez la configuration installée: rssh -v\nConfiguration:\n\nConfiguration OpenSSH: / etc / ssh / sshd_config\n\n\n\n\n...\n\nPermitUserEnvironment no\n\n...\n\nSous-système sftp / usr / libexec / openssh / sftp-server\n\n...\n    \nNote de sécurité: Soyez également conscient du réglage AllowTcpForwarding qui contrôle la redirection de port.\n\nAjouter shell à la liste des shell utilisables: / etc / shells\n\n\n\n\n/ bin / sh\n/ bin / bash\n/ sbin / nologin\n/ bin / tcsh\n/ bin / csh\n/ bin / ksh\n/ bin / zsh\n/ opt / bin / ftponly\n/ usr / bin / rssh\n    \nUbuntu: Vous pouvez utiliser la commande: add-shell / usr / bin / rssh\n\nChanger le shell de l&#39;utilisateur en rssh (choisissez une méthode)\n\nAutoriser l&#39;exécution à: chmod u / s / usr / libexec / rssh_chroot_helper\n    Cela empêche l’erreur suivante dans / var / log / messages\n\n\n\n\n20 déc. 00:23:44 nodex rssh_chroot_helper[27450]: chroot () a échoué, 2: opération non autorisée\n    \n\nDéfinir l&#39;accès pour rssh: /etc/rssh.conf\n\n\n\n\nlogfacility = LOG_USER\npermetftp\numask = 022\n#chrootpath = / users / chroot\n\nutilisateur = &quot;utilisateur1: 022: 00010: / home /utilisateur1&quot;\n    \n    Global security allowable options include: allowscp, allowcvs, allowrdist, allowrsync\n    Specify global chroot or omit for none.\n    Specific user security:\n\nUser login id\n    \nFirst set of three number represent the umask\n    \nSecond set of five number represent the bitmask to allow\n       \n\n\n\n1\n1\n1\n1\n1\n\n\nrsync\nrdist\ncvs\nsftp\nscp\n\n\n\n\nSpecify the global chrooted directory for all using rssh. If omitted, then not chrooted. Can be overwritten by user configuration.\n    \n\n    Note: User configuration overrides the shared chroot settings. Omitted user settings do not default to shared chroot settings.\n\nConfiguring the chrooted directory:\n        This is true for a global user chroot or individual chroot.\n        In this example we will show a user chrooted to their own home directory /home/user1. When chrooted, the user does not have access to the rest of the filesystem and thus is blind to all of its executables and libraries.\n        It will therefore be necessary to copy local executables and libraries for their local use.\n\n\n\nLa description\nUser directory\nSystem equivalent\n\n\n\n\nSystem devices\n/home/user1/dev\n/dev\n\n\nConfiguration files\n/home/user1/etc\n/etc/etc/ld.so.cache /etc/ld.so.cache.d/*/etc/ld.so.conf - dynamic linker configuration/etc/nsswitch.conf/etc/passwd/etc/group/etc/hosts/etc/resolv.conf\n\n\nShared libraries (32 and 64 bit)\n/home/user1/lib/home/user1/lib64\n/lib/lib64\n\n\nExecutables and libraries\n/home/user1/usr\n/usr/usr/libexec/openssh/sftp-server/usr/libexec/rssh_chroot_helper\n\n\nExecutables\n/home/user1/bin\n/bin\n\n\n\n    Use script to add chroot required files: /opt/bin/userchroot\n\n\n\n\n\n#!/bin/bash\n# First and only argument ($1) is user id\nsi [ -d /home/$1 ];\npuis\n   USERDIR=/home/$1\nautre\n   echo &quot;Error: Directory /home/$1 does not exist&quot;\n   sortie\nFi\n\nmkdir $USERDIR/etc\nmkdir $USERDIR/lib\nmkdir -p $USERDIR/usr/libexec/openssh\nmkdir -p $USERDIR/var/log\nmkdir $USERDIR/dev\nmknod -m 666 $USERDIR/dev/null c 1 3\n\ncp -p /etc/ld.so.cache $USERDIR/etc\n# If directory exists\nsi [ -d /etc/ld.so.cache.d ];\npuis\n   cp -avRp /etc/ld.so.cache.d $USERDIR/etc\nFi\ngrep $1 /etc/passwd  &gt; $USERDIR/etc/passwd\ncp -p  /etc/ld.so.conf    $USERDIR/etc\ncp -p  /etc/nsswitch.conf $USERDIR/etc\ncp -p  /etc/group         $USERDIR/etc\ncp -p  /etc/hosts         $USERDIR/etc\ncp -p  /etc/resolv.conf   $USERDIR/etc\ncp -ap /usr/libexec/openssh/sftp-server $USERDIR/usr/libexec/openssh/sftp-server\ncp -ap /usr/libexec/rssh_chroot_helper $USERDIR/usr/libexec/rssh_chroot_helper\n\n# Authentication libraries required for login (32 bit and 64 bit systems)\nsi [ -d /lib64 ];\npuis\n   mkdir $USERDIR/lib64\n   cp -ap /lib64/libnss_files.so.? $USERDIR/lib64\n   cp -ap /lib64/libnss_files-*.so $USERDIR/lib64\nautre\n   cp -p /lib/libnss_files.so.? $USERDIR/lib\n   cp -p /lib/libnss_files-*.so $USERDIR/lib\nFi\n\nFILES=`ldd /usr/libexec/openssh/sftp-server | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé\n FILES=`ldd /usr/libexec/rssh_chroot_helper | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé\n    \n\n    Remarque:\n    \n\n\nBlocking FTP: Setting up rssh does not turn off or block FTP access to your system. You must still turn off vsftp: /etc/init.d/vsftpd stop. There is little point to setting up secure chrooted sftp access with rssh and also running a FTP service.\n\nDebugging:\n\nOne can pull in the full root path by issuing an internal mount:\n\nmount --bind /dev /home/user1/dev\n    \nmount --bind /dev /home/user1/lib\n    \nmount --bind /dev /home/user1/lib64\n    \nmount --bind /dev /home/user1/usr\n    \n\n    This technique can be used to narrow down the error to find which directory has the missing files. It should not be used as a final solution.\n    Unmount when done: umount /home/user1/dev\n\nIf authenticating to ldap, nis, etc, pull in the appropriate libraries.\n    You can test with all: cp -p /lib/libnss_* /home/user1/lib\n    This can be performed for /lib64 ainsi que.\n\nChecklog files for errors: /var/log/messages\n\n\nMan pages:\n\nUsing gFTP as a Linux sftp client:\n\nStart program through menu or command line: gftp&amp;\n\nSelect &quot;FTP&quot; from toolbar\n\nSelect &quot;Options&quot;\n\nSelect &quot;SSH&quot; tab\n    \nSelect &quot;Apply&quot; amd &quot;Ok&quot;\n\nOn the upper right hand side of the gftp window, select &quot;SSH&quot; from the pull-down menu.\n\n\nUsing FileZilla as a Linux sftp client:\n\nSelect &quot;File&quot; + &quot;Site Manager&quot;\n\nSelect &quot;New Site&quot; (bottom left)\n\nEnter &quot;Host:&quot;\n\nChoose &quot;Servertype:&quot; &quot;SFTP using SSH2&quot;\n\nSelect &quot;Logontype:&quot; &quot;Normal&quot;\n\nEnter &quot;User:&quot; and click on &quot;Connect&quot;.\n\n\nLinks:\n\nMulti-platform GUI client FileZilla\n\nMS/Windows client WinSCP (supports sftp)\n\n\nSentryTools: PortSentry\n\nThis tool will monitor the network probes and attacks against your server.\nIt can be configured to log and counter these probes and attacks.\nPortSentry can modify your /etc/hosts.deny (PAM module) file and\nissue IP firewall commands automatically to block hackers.\n\nPortSentry can be loaded as an RPM but this tutorial covers compiling\nPortSentry from source to configure a more preferable system logging.\n\nNote: Version 1.2 of portsentry can issue iptables, ipchains or route commands\nto thwart attacks.  Iptables/Ipchains is a Linux firewall system built into the Linux kernel.\nLinux kernel 2.6/2.4 uses iptables, kernel 2.2 (old) uses ipchains.\nReferences to ipfwadm are for even older Linux kernels.\nRoute commands can be used by any Unix system including those non-Linux systems which do not support Iptables/Ipchains.\n\nSteps to install and configure portsentry:\n\n\nDownload and unzip source code\n  \nEdit include file and compile\n  \nStart PortSentry\n  \nRead logs\n  \n\n\n\n    Download and unzip source code:\n\n    Edit include file and compile:\n     cd portsentry_beta/\n     Read file README.install. It details the following:\n\n\n\n         Edit file: portsentry_config.h\n\nSet file paths and configure separate log file for Portsentry:\n         Set options:\n\nCONFIG_FILE &#8211; PortSentry run-time configuration file.\n         \nWRAPPER_HOSTS_DENY &#8211; The path and name of TCP wrapper hosts.deny file.\n         \n\n\n\n\n\n#define CONFIG_FILE &quot;/opt/portsentry/portsentry.conf&quot;\n#define WRAPPER_HOSTS_DENY &quot;/etc/hosts.deny&quot;\n#define SYSLOG_FACILITY LOG_DAEMON    - Default. Change to LOG_LOCAL6\n\n\n\n#define SYSLOG_LEVEL    LOG_NOTICE\n         \n         (Note: I use /opt/portsentry/ because I like to locate &quot;optional&quot;\n          files/software there.\n          It allows for an easy backup by separating it from the OS.\n          If you prefer, you can use /etc/portsentry/ pour\n          configurations files and follow the Linux/Unix file system logic)\n         \n         The above default, &quot;LOG_DAEMON&quot;, will log messages to the /var/log/messages file.\n         \n    To log to a separate file dedicated to PortSentry logging:\n(This will eliminate logging clutter in the main system logging file) \n\nAdd logging directives to syslogd configuration file: /etc/syslog.conf\n             Change the following line by adding an extra log facility for portsentry messages which are\n             not going to be logged to the regular syslog output\n             fichier /var/log/messages.\n             This lists what messages to filter out from /var/log/messages.\n            \n              *.info;mail.none;news.none;authpriv.none;cron.none;local6.none\t/var/log/messages \n             Add the following line to assign a portsentry log facility:\n             \n              local6.*                   /var/log/portsentry.log \n             Note: Use tab not spaces in the syslog configuration file.\n             \n             Restart syslogd: /etc/init.d/syslog restart\n             \n\nEnsemble portsentry_config.h entry to new log facility:\n              Change from default setting:\n\n#define SYSLOG_FACILITY LOG_DAEMON\n              \n              To:\n\n#define SYSLOG_FACILITY LOG_LOCAL6\n              \n\n\n         FYI: Options for the  SYSLOG_FACILITY are defined in /usr/include/sys/syslog.h\n         They include:\n         \n\n\n\nSYSLOG_FACILITY\nFacility Name  \n    La description   \n\n\n\n\nLOG_LOCAL0\nlocal0 \n    reserved for local use \n\n\nLOG_LOCAL1\nlocal1 \n    reserved for local use\n\n\nLOG_LOCAL2\nlocal2 \n    reserved for local use\n\n\nLOG_LOCAL3\nlocal3 \n    reserved for local use\n\n\nLOG_LOCAL4\nlocal4 \n    reserved for local use\n\n\nLOG_LOCAL5\nlocal5 \n    reserved for local use\n\n\nLOG_LOCAL6\nlocal6 \n    reserved for local use\n\n\nLOG_LOCAL7\nlocal7 \n    reserved for local use\n\n\nLOG_USER\n        utilisateur   \n    random user-level messages \n\n\nLOG_MAIL\n        courrier   \n    mail system \n\n\nLOG_DAEMON\ndémon \n    system daemons \n\n\nLOG_SYSLOG\nsyslog \n    messages generated internally by syslogd \n\n\nLOG_LPR\n            lpr    \n    line printer subsystem \n\n\nLOG_NEWS\n        nouvelles   \n    network news subsystem \n\n\nLOG_UUCP\n        uucp   \n    UUCP subsystem \n\n\nLOG_CRON\n        cron   \n    clock daemon \n\n\nLOG_AUTHPRIV\nauthpriv\n    security/authorization messages (private) \n\n\nLOG_FTP\n            ftp    \n    ftp daemon \n\n\n\n         Options for the SYSLOG_LEVEL include:\n         \n\n\n\nSYSLOG_LEVEL \nPriorité     \n    La description \n\n\n\n\nLOG_EMERG   \n                0 \nsystem is unusable \n\n\nLOG_ALERT   \n                1 \naction must be taken immediately \n\n\nLOG_CRIT    \n                2 \ncritical conditions \n\n\nLOG_ERR     \n                3 \nerror conditions \n\n\nLOG_WARNING \n                4 \nwarning conditions \n\n\nLOG_NOTICE  \n                5 \nnormal but significant condition \n\n\nLOG_INFO    \n                6 \ninformatif \n\n\nLOG_DEBUG   \n                7 \ndebug-level messages \n\n\n\n\n\n\n         Edit file: portsentry.conf    to set paths for configuration files and ports to monitor.\n\n\n\n\n\nTCP_PORTS=&quot;1,11,15,20,21,23,25,69,79, ... &quot;\nUDP_PORTS=&quot;1,7,9,69,161,162,513,635,  ... &quot;\n\n...\n...\n\nIGNORE_FILE=&quot;/opt/portsentry/portsentry.ignore&quot;\nHISTORY_FILE=&quot;/opt/portsentry/portsentry.history&quot;\nBLOCKED_FILE=&quot;/opt/portsentry/portsentry.blocked&quot;\n#KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;   - Generic Unix KILL_ROUTE\n                                                              I prefer iptables/ipchains options below\n         \nUn-comment and modify if necessary the appropriate statements. le\nTCP_PORTS=, UDP_PORTS= lists are ignored for stealth scan detection\nmodes. Add common but unused services. i.e. add port 25 if the system is not accepting email as port 25 is included in most scans.\n        I added UDP port 68 (BOOTP) and TCP 21 (ftp), 22 (ssh), 25 (smtp\nmail), 53 (dns bind), 80 (http web server), 119 (news) to the\nADVANCED_EXCLUDE_UDP and ADVANCED_EXCLUDE_TCP statements respectively.\n\nADVANCED_EXCLUDE_TCP=&quot;21,22,25,53,80,110,113,119&quot; - server\n\n\n\nADVANCED_EXCLUDE_UDP=&quot;21,22,53,110,520,138,137,68,67&quot;\nOU\nADVANCED_EXCLUDE_TCP=&quot;113,139&quot;                    - workstation\n\n\n\nADVANCED_EXCLUDE_UDP=&quot;520,138,137,68,67&quot;\n         \n         PAM options:\n         \n\n    KILL_HOSTS_DENY=&quot;ALL: $TARGET$&quot; \n         \n\nFor more on PAM see YoLinux network Admin Tutorial\n\n         Choose one option: (Options: network &quot;route&quot; or firewall command &quot;iptables/ipchains&quot;)\n         \n\nFor those using iptables (Linux Kernel 2.6/2.4+):\n              KILL_ROUTE=&quot;/sbin/iptables -I INPUT -s $TARGET$ -j DROP&quot;\n              (Note: The default used in portsentry.conf utilise le\n               incorrect path for Red Hat.\n               Changement /usr/local/bin/iptables\n               à /sbin/iptables)\n             \nFor Linux 2.2.x kernels (version 2.102+) using ipchains: (Best option)\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY -l&quot; \n             OU\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY&quot; \n             Remarque: The second option is without the &quot;-l&quot; or logging option so ipchains won&#39;t keep logging the portscan in /var/log/messages\n         \nSimple method to drop network return routes if iptables or ipchains are not compiled into your kernel:\n             KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;\n             You can check the addresses dropped with the command:  netstat -rn They will be routed to interface &quot;-&quot;.\n         \n\nRed Hat: Portsentry uses iptables (and it must be running) and not the older ipchains.\nTo see if iptables is invoked during system boot, use the command: chkconfig --list | grep iptables.\nYou can NOT use portsentry to issue iptables rules if your kernel is configured to use ipchain rules.\n         More info on iptables and ipchains support/configuration in Red Hat.\n         \n\n\n\n         Edit file: portsentry.ignore            (contains IP addresses to ignore. )\n\n\n\n\n\n127.0.0.1\n0.0.0.0\nYour IP address\n         \n         The at Home network routinely scans for news servers on port 119 from\n         a server named authorized-scan1.security.home.net.\n         Adding the IP address of this server (24.0.0.203)\n         greatly reduces the logging. I also added their BOOTP server.\n         (24.9.139.130)\n\n         I manually issued the iptables (kernel 2.6/2.4)\n         commands on my workstation\n         to drop the hosts and deny their scans.\n         At Home users may add the commands to the file\n         /etc/rc.d/rc.local\n         \n\n\n\n\n/sbin/iptables -I INPUT -s 24.0.0.203 -j DROP\n/sbin/iptables -I INPUT -s 24.9.139.130 -j DROP\n         \n\n\n\n         Edit file: Makefile \n\n\n\n\n\nINSTALLDIR = /opt\n        \n         And remove the line under &quot;uninstall&quot;: (dangerous line!!)\n\n#               /bin/rmdir $(INSTALLDIR)\n        \n         And remove the line under &quot;install&quot;: (troublesome line!!)\n#               chmod 700 $(INSTALLDIR)\n        To:\n#               chmod 700 $(INSTALLDIR)/$(CHILDDIR)\n\n\n\n         Compile: make linux\n\n        Fix the following compile errors in portsentry.c\n\nChangement  printf (&quot;Copyright 1997-2003 Craig H. Rowland &lt;craigrowland at users dot\n            sourceforget dot net&gt;n&quot;);\n            to one line:  printf (&quot;Copyright 1997-2003 Craig H. Rowlandn&quot;);\n        \nFix warning: warning: passing argument 3 of â€˜acceptâ€™ from incompatible pointer type\n            Separate and change declaration of &quot;length&quot; to: unsigned int length;\n        \n\n\n\n\n         Install (as root): make install\n\n\n\nRun PortSentry for advanced UDP/TCP stealth scan detection:\n\nportsentry -atcp\n    \nportsentry -audp\n    \n\nOU use init scripts below in next section.\n\nCheck logfile for hacker attacks. Voir: /var/log/messages\nou  /var/log/portsentry.log if you are logging to a dedicated file.\n    Also check /etc/hosts.deny to see a list of IP addresses that\n    PortSentry has deemed to be attackers.\n    Check the &quot;HISTORY_FILE&quot; /opt/portsentry/portsentry.history\n  \n\nNote: Is is possible to have all logging sent to a logging daemon on a single\nserver. This will allow the administrator to check the logs on only one server\nrather than individually on many.\n\n\nNote on Red Hat RPMs:\nRPM layout:\n\n\n/usr/sbin/portsentry &#8211; (chmod 700) executable\n  \n/etc/portsentry/ &#8211; (chmod 700) Directory used for configuration files.\n  \n/etc/portsentry/portsentry.conf (chmod 600)\n  \n/etc/portsentry/portsentry.ignore (chmod 600)\n  \n/var/portsentry/portsentry.history\n  \n/var/portsentry/portsentry.blocked\n  \n\nInstead of using a firewall command (ipchains/iptables), a false route is used: /sbin/route add -host $TARGET$ gw 127.0.0.1.\nMy init script calls the portsentry executable twice with the appropriate command line arguments to monitor tcp and udp ports.\nThe Red Hat RPM init script uses the file /etc/portsentry/portsentry.modes\nand a for loop in the\ninit script to call portsentry the appropriate number of times.\nTheir init script also recreates the portsentry.ignore file each time\nportsentry is started by including the IP addresses found with ip addr show ou ifconfig\nand the addresses 0.0.0.0 and localhost.\nPersistent addresses must be placed above a line stating:\n    Do NOT edit below this otherwise it is not included in the creation\nof the new file.\n    The Red Hat RPM portsentry version logs everything to /var/log/messages. My configuration avoids log clutter by logging to a separate file.\n\n\nNotes on DOS (Denial of Service) possibility:\nIf portsentry is configured to shut down an\nattack with firewall rules, an attacker may use this feature to slow down\nyour machine over time by creating a huge set of firewall rules.\nIt would require the hacker to use (or spoof) a new IP address each time.\nIt is probably a good idea to monitor or even clear the firewall rules from\ntime to time.\n\n\niptables:\n\nList firewall rules: iptables -L\n    \nClear firewall rules: iptables -F\n    \n\n\nipchains:\n\nList firewall rules: ipchains -L\n    \nClear firewall rules: ipchains -F\n    \n\n\n\nClean-up script: /etc/cron.monthly/reset-chainrules\n(-rwx------   1 root     root)\nThis script is run automatically once a week by cron. (The presence of this\nscript in this directory for the Red Hat configuration makes it so)\n\n\n\n\n\n\n#!/bin/bash\n# Purge and re-assign chain rules \nipchains -F\nipchains -A input -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 2049 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 6000:6009 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 515 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 515 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 111 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 111 -j REJECT\nipchains -A input -j REJECT -p all -s localhost  -i eth0 -l\n\n\nRegarde aussi:\n\nOther tools to detect portscans and network based hacker attacks:\n\n\nscanlogd &#8211; Attack detection.\n  \nInterSect Alliance &#8211; Intrusion analysis. Identifies malicious or unauthorized access attempts.\n  \nsnort &#8211; Instead of monitoring\na single server with portsentry, snort monitors the network, performing\nreal-time traffic analysis and packet logging on IP networks for the\ndetection of an attack or probe.\nAlso see: YoLinux IDS and Snort links\n  \n\n\nUsing an init script to start and stop the portsentry program.\nInit configuration: /etc/rc.d/init.d/portsentry\n    The init script needs to be executable: chmod a+x /etc/rc.d/init.d/portsentry\n    After adding the following script, enter it into the init process with\n    the command: chkconfig --add portsentry ou\n    chkconfig --level 345 portsentry on\n    See YoLinux Init Tutorial for more information.\n\n\n\n\n\n\n#!/bin/bash\n#\n# Startup script for PortSentry\n#\n# chkconfig: 345 85 15\n# description:  PortSentry monitors TCP and UDP ports for network attacks\n#\n# processname: portsentry\n# pidfile: /var/run/portsentry.pid\n# config: /opt/portsentry/portsentry.conf\n# config: /opt/portsentry/portsentry.ignore \n# config: /opt/portsentry/portsentry.history\n# config: /opt/portsentry/portsentry.blocked\n\n\n# Source function library.\n. /etc/rc.d/init.d/functions\n\n# Source networking configuration.\n. /etc/sysconfig/network\n\n# Check that networking is up.\n[ $NETWORKING = \"no\" ] &amp;&amp; exit 0\n\n# See how we were called.\ncase &quot;$1&quot; in\n  start)\n\techo -n &quot;Starting portsentry: &quot;\n\tdaemon /opt/portsentry/portsentry -atcp \n\t/opt/portsentry/portsentry -audp \nécho\n\ttouch /var/lock/subsys/portsentry\n\t;;\n  stop)\n\techo -n &quot;Shutting down portsentry: &quot;\n\tkillproc portsentry\nécho\n\trm -f /var/lock/subsys/portsentry\n\trm -f /var/run/portsentry.pid\n\t;;\n  status)\n\tstatus portsentry\n\t;;\n  restart)\n\t$0 stop\n\t$0 start\n\t;;\n  reload)\n\techo -n &quot;Reloading portsentry: &quot;\n\tkillproc portsentry -HUP\nécho\n\t;;\n  *)\n\techo &quot;Usage: $0 stop&quot;\nsortie 1\nesac\n\nexit 0\n    \n\n\nLogrotate Configuration:\nCreate the following file to have your logs rotate.\n\nFichier: /etc/logrotate.d/portsentry\n\n\n\n\n/var/log/portsentry.log  vrai\n    endscript\n\n\nAlso see the YoLinux Sys Admin tutorial covering logrotate.\n\n\nTests:\n\nPortscan your workstation &#8211; Use your web browser to go to this site. Select &quot;Probe my ports&quot; and it will\nscan you. You can then look at the file /opt/portsentry/portsentry.blocked.atcp\nto see that portsentry dropped the scanning site:\n Host: shieldsup.grc.com/207.71.92.221 Port: 23 TCP Blocked\nThe file /var/log/portsentry.log will show the action taken:\n\n portsentry[589]: attackalert: SYN/Normal scan from host: shieldsup.grc.com/207.71.92.221 to TCP port: 23\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via wrappers with string: &quot;ALL: 207.71.92.221&quot;\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via dropped route using command: \n   &quot;/sbin/ipchains -I input -s 207.71.92.221 -j DENY -l&quot;\n          \n\nnmap: portscanner &#8211; This is\nthe hacker tool responsible for many of the portscans you may be receiving.\n\nCommand arguments:\n    \n\n\n\nArgument\nLa description\n\n\n\n\n-sO\nIP scan. Find open ports.\n\n\n-sT\nTCP scan. Full connection made.\n\n\n-sS\nSYN scan (half open scan). This scan is typically not logged on receiving system. \n\n\n-sP\nPing ICMP scan.\n\n\n-sU\nUDP scan.\n\n\n-P0\nDon&#39;t ping before scan.\n\n\n-PT\nUse ping to determine which hosts are available.\n\n\n-F\nFast scan. Scan for ports listed in configuration.\n\n\n-T\nSet timing of scan to use values to avoid detection.\n\n\n-O\nDetermines operating system.\n\n\n-p 1000-1999,5000-5999\nScan port ranges specified.\n\n\n\nAlso see: nmap man page for a full listing of nmap command line arguments.\n        \nExemples:\n    \n            nmap -sT -F IP-address         Scan\n   \n   \n   \n   nmap -sS -F IP-address         SYN Scan\n   \n   \n   \n   nmap -sU -F IP-address         Scan UPD ports\n   \n   \n   \n   nmap -sF -F IP-address         FIN Scan\n   \n   \n   \n   nmap -O  -F IP-address         Determine OS\n   \n   \n   \n   nmap -p22 -F -O  IP-address        nmap -p 1-30,40-65535  IP-Address  Scan given port ranges\n        \nAdd the option -v (verbose) or -vv (super verbose) for more info.\n        The ports will be determined to be open, filtered or firewalled.\n\nSample output from command: nmap -sS -F -O IP-Address\n    \nStarting nmap V. 2.54BETA7 ( www.insecure.org/nmap/ ).....(The 1067 ports scanned but not shown below are in state: closed)Port       State       Service21/tcp     open        ftp                     22/tcp     open        ssh                     25/tcp     open        smtp                    53/tcp     open        domain                  111/tcp    open        sunrpc          - Shut down the portmap (RPC) daemon:    /etc/rc.d/init.d/portmap stop\n137/tcp    filtered    netbios-ns      - Turn off netbios services:      /etc/rc.d/init.d/smb stop\n138/tcp    filtered    netbios-dgm             \n139/tcp    filtered    netbios-ssn             \n\nTCP Sequence Prediction: Class=random positive increments\n                         Difficulty=2727445 (Good luck!)\nRemote operating system guess: Linux 2.1.122 - 2.2.16\n\nNmap run completed -- 1 IP address (1 host up) scanned in 36 seconds\n              \n\nnmap/nmapfe: nmapfe = nmap front end &#8211; GUI front end to nmap.\n    It&#39;s an amazingly easy and useful tool which will help\n    you make discoveries about your servers before the hackers do.\n    \n    Linux packages:\n\nRed Hat RPMs: nmap-XXX.x86_64.rpm, nmap-frontend-XXX.noarch.rpm (GTK+ GUI)\n    \nUbuntu: nmap, zenmap\n    \n\n\n\nLinks:\n\nTripwire: (security monitoring)\n\nTripwire monitors your file system for changes. Tripwire is used to create an\ninitial database of information on all the system files then runs periodically\n(cron) to compare the system to the database.\n\nUse the command tripwire --version ou\nrpm -q tripwire to determine the version.\n\nRed Hat includes Tripwire as an optional package during install.\nThe Ubuntu/Debian install is as easy as apt-get install tripwire.\nUpon installation it will proceed to scan your entire filesystem to create\na default database of what your system looks like. (files and sizes etc)\nIt took about ten minutes to run on my server!\n\nTripwire configuration files:\n\n\nTripwire 2.3.0:\n\n/etc/tripwire/twcfg.txt\n    \n/etc/tripwire/twpol.txt\n    \n\n    These files are first edited and then processed by the script\n    /etc/tripwire/twinstall.sh which configures Tripwire after the\n    installation of the Tripwire RPM package. \n\n    Edit and change file: /etc/tripwire/twcfg.txt\n    \n    Change:\n    LOOSEDIRECTORYCHECKING =false\n    à\n    LOOSEDIRECTORYCHECKING=TRUE\n\n    This was recommended in the comments of the file twpol.txt\n    \n    Edit and change file: /etc/tripwire/twpol.txt\n    \n    Change:\n    severity = $(SIG_XXX)\n    à\n    severity = $(SIG_XXX),emailto = root@localhost\n    ou\n    severity = $(SIG_XXX),emailto = root@localhost;admin@isp.com\noù XXX is the severity level.\n    This will cause Tripwire to email a report of discrepancies for the\n    rule edited. Set the email address to one appropriate for you.\n    \n    I also added:\n    \n\n&quot;User binaries&quot; rule:  directory /opt/bin\n        \n&quot;Libraries&quot; rule:  directory /opt/lib\n        \n\nI removed/commented out:\n\n    the rule &quot;System boot changes&quot; as it reports changes due to system boot.\n        \n    Rule: &quot;Root config files&quot;: Many of the non-existent\nfiles listed under /root were commented out to reduce the number of\nerrors reported. \n    Rule &quot;File System and Disk Administraton Programs&quot;: Many\nof the non-existent binaries listed under /sbin were commented out to\nreduce the number of errors reported. \n\n    After configuration files have been edited run the script: /etc/tripwire/twinstall.sh\n    The script will ask for a &quot;passphrase&quot; for the site and local system.\n    This is a similar concept to a password &#8211; remember it!\n    \n    If at any point you want to\n    make configuration/policy changes, edit these files and re-run the\n    configuration script. The script will generate the true configuration\n    files used by Tripwire:\n    \n\n/etc/tripwire/tw.cfg\n        (View with command: twadmin --print-cfgfile)\n    \n/etc/tripwire/tw.pol\n        (View with command: twadmin --print-polfile)\n    \n/etc/tripwire/site.key\n    \n/etc/tripwire/ServerName-a-local.key\n    \n\n    These files are binary and not human readable.\n\nTripwire 1.2-3 (Red Hat 6.2 Powertools): /etc/tw.config\n  \n\n\nTripwire initialization:\n\nIf at any time you change the configuration file to monitor your system\ndifferently or install an upgrade (changes a whole lot of files which\nwill &quot;trip&quot; tripwire into reporting all changes) you may want to generate\na new database.\n\nTripwire 2.3.0-58: /usr/sbin/tripwire --init\n    You will be prompted for your &quot;local passphrase&quot;.\n    This will generate a tripwire database file: /var/lib/tripwire/ServerName-a.twd\n\nTripwire 1.2-3: /usr/sbin/tripwire -initialize\nThis will generate a tripwire database file: ./databases/tw.db_ServerName\n        If you are in root&#39;s home directory, this will create the file  /root/databases/tw.db_ServerName\n        At this point copy it to a usable location:\n        \n\n\n\n\ncp -p /root/databases/tw.db_ServerName  /var/spool/tripwire/tw.db_ServerName\n        \nDon&#39;t change /etc/tw.config\n without first running tripwire -initialize\notherwise it will show differences due to settings in tw.config file rather\nthan true differences.\n        \n\n\n\nCron and tripwire:\n\nCron runs tripwire: \n\nTripwire 2.3.0-58:\n    Fichier: /etc/cron.daily/tripwire-check\n\n\n\n\n\n#!/bin/sh\nHOST_NAME=`uname -n`\nsi [ ! -e /var/lib/tripwire/$HOST_NAME.twd ] ; puis\n        echo &quot;****    Error: Tripwire database for $HOST_NAME not found.    ****&quot;\n        echo &quot;**** Run &quot;/etc/tripwire/twinstall.sh&quot; and/or &quot;tripwire --init&quot;. ****&quot;\nautre\n        test -f /etc/tripwire/tw.cfg &amp;&amp;  /usr/sbin/tripwire --check\nFi\n          \n\n    You may move this cron script to the directory /etc/cron.weekly/\n    to reduce reporting from a daily to a weekly event.\n    Tripwire reports will be written to: /var/lib/tripwire/report/HostName-Date.twr\n\nTripwire 1.2-3:\n    Fichier: /etc/cron.daily/tripwire.verify\nscript which runs the command: /usr/sbin/tripwire -loosedir -q\n        Note: You may want to move the script to /etc/cron.weekly/tripwire.verify\n to reduce email reporting to root.\n      \n\n\nRead tripwire report:\n\n\nTripwire 2.3.0-58: twprint --print-report -r /var/lib/tripwire/report/report-file.twr\n      \n\n\nInteractive mode:\n\n\nTripwire 1.2-3:\n      Update tripwire database &#8211; run:\n        tripwire -interactive\n        This will allow you to respond Y/N to files if they should be permanently\nupdated in the tripwire database. This will still run tripwire against the\nwhole file system.\n I ran it from /root and it updated\n        /root/databases/tw.db_ServerName \nYou must then cp -p to /var/spool/tripwire/\nto update the tripwire database.\n  \n\n\nDefault configuration file:\n\n\nTripwire 2.3.0-58: /etc/twcfg.txt\nROOT                   =/usr/sbinPOLFILE                =/etc/tripwire/tw.polDBFILE                 =/var/lib/tripwire/$(HOSTNAME).twdREPORTFILE             =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twrSITEKEYFILE            =/etc/tripwire/site.keyLOCALKEYFILE           =/etc/tripwire/$(HOSTNAME)-local.keyEDITOR                 =/bin/viLATEPROMPTING          =falseLOOSEDIRECTORYCHECKING =falseMAILNOVIOLATIONS       =trueEMAILREPORTLEVEL       =3REPORTLEVEL            =3MAILMETHOD             =SENDMAILSYSLOGREPORTING        =falseMAILPROGRAM            =/usr/sbin/sendmail -oi -t\n\nTripwire 1.2-3: /etc/tw.config\n# Log file@@define LOGFILEM E+pugn# Config file@@define CONFM E+pinugc# Binary@@define BINM E+pnugsci12# Directory@@define DIRM E+pnug# Data file (same as BIN_M currently)@@define DATAM E+pnugsci12# Device files@@define DEVM E+pnugsc# exclude all of /proc=/proc E#=/dev @@DIRM/dev @@DEVM#=/etc @@DIRM/etc @@CONFM# Binary directories#=/usr/sbin @@DIRM/usr/sbin @@BINM#=/usr/bin @@DIRM/usr/bin @@BINM#=/sbin @@DIRM/sbin @@BINM#=/bin @@DIRM/bin @@BINM#=/lib @@DIRM/lib @@BINM#=/usr/lib @@DIRM/usr/lib @@BINM=/usr/src E=/tmp @@DIRM\nAjouter:\n    \n/var/named @@CONFM                   - If you are running Bind DNS slave\n\n\n\n/home/httpd/cgi-bin @@BINM\n        \nDelete/comment out:\n#/dev @@DEVM\nThis eliminated the reporting of too much junk due to a reboot of the system.\n  \n\n\nMan pages:\n\nTripwire 2.3.0-58: \n\ntripwire &#8211; a file integrity checker for UNIX systems\n      \ntwintro &#8211; introduction to Tripwire software\n      \ntwadmin &#8211; Tripwire administrative and utility tool\n      \ntwprint &#8211; Tripwire database and report printer\n      \nsiggen &#8211; signature gathering routine for Tripwire\n      \ntwconfig &#8211; Tripwire configuration file reference\n      \ntwpolicy &#8211; Tripwire policy file description reference (For file /etc/tripwire/twpol.txt)\n      \ntwfiles &#8211; Overview of files used by Tripwire and file backup process\n      \n\nRegarde aussi:\n\nCHKROOTKIT: Performing a trojan/worm/virus file scan.\n\nTripwire will monitor your filesystems for intrusion or addition of a file\nso you may determine what changes have occurred on your system in sensitive\nareas.  Chkrootkit will scan your system for known exploits,\nTrojan commands, and worms used to compromise a system.\n\nDownload chkrootkit from http://www.chkrootkit.org. It is a shell script which should be run as root as well as a\nsmall collection of C programs.\n\n\nInstallation:\n\navoir du sens  (Compile C programs)\n    \n./chkrootkit (Run shell script and call programs.)\n    \n\n\nUsage:\n\n./chkrootkit\n        OU\n./chkrootkit -h (help)\n    \n\n\n\nSee the README file for more info.\n\nRemarque:\n\n\nThis software is constantly being upgraded and updated to include\n    scans for new exploits.\n  \nIf running portsentry, chkrootkit may return a false error while performing the bindshell test.\n  \n\nNESSUS: Performing a network vulnerability scan/security assessment of your system.\n\nLet me start by saying that this should only be performed on your own systems.\nIt is considered and attack to run this against the systems of others\nand legal action may be taken against you for performing such an audit.\nThis is not a scan like NMAP. NESSUS will search and locate vulnerabilities\non your system by actively trying to perform known exploits against the\nsystème.\n\nNessus is amazingly complete and effective. In fact it is awesome!!\nIt will identify services on your system and try to exploit them.\nIf a vulnerability is found it will make recommendations about upgrades,\nconfiguration changes and where to find patches. It will also explain\nany causes for concern in detail and explain why your system is vulnerable.\nAnd that&#39;s not all! It can output reports in various formats including HTML\nwith pie charts and bar charts!! The HTML reports will have hyperlinks to the\nsecurity reports, upgrades and patches. (I&#39;m impressed)\nIt can scan Unix, Linux and Windows systems for vulnerabilities.\n\nRemarque:\n\n\nRunning &quot;Dangerous Plugins&quot; may cause a crash of the system being audited!!\n  \n\nThe NESSUS software is available from http://Nessus.org.\nIf compiling source:\n\n\nEdit file: nessus-core/include/config.h (Set USE_AF_UNIX to define socket type)\n  \n\nIt is also available in RPM form: (See http://freshrpms.net)\n\n\nnessus-client-&#8230;.rpm\n  \nnessus-common-&#8230;.rpm\n  \nnessus-plugins-&#8230;.rpm\n  \nnessus-server-&#8230;.rpm : Nessus plugins which are used to perform\nthe various checks. (Scripts in nasl scripting language) Note that the\nRPM installs an init script which starts nessusd during boot. Disable\navec chkconfig --del nessusd\n  \nnessus-devel-&#8230;.rpm : Nessus development libraries and headers.\n  \n\nRunning NESSUS:\n\nConfiguration file: /etc/nessus/nessusd.conf\n\nYou may also consider a popular branch of Nessus, OpenVAS: Open Vulnerability Assessment System\n\nUseful links and resources:\n\n\nLivres:\n\n\n\n\n\n\n    &quot;Linux Firewalls&quot;\n    by Robert L. Ziegler, Carl Constaintine\n    ISBN #0735710996, New Riders 10/2001\n\n    This is the newer version. It includes updates on the Linux 2.4 kernel,\n    VPN&#39;s and SSH.\n    \n\n\n    \n    \n\n\n\n\n    &quot;Linux Firewalls&quot;\n    Robert L. Ziegler\n    ISBN #0-7357-0900-9, New Riders 11/1999\n\n    Most complete Linux firewall/security book in publication.\n    Covers ipchains, bind and a complete review of possible firewall configurations.\n    \n\n\n    \n    \n\n\n\n\n    &quot;Hack Proofing Linux : A Guide to Open Source Security&quot;\n    by James Stanger, Patrick T. Lane\n    ISBN #1928994342, Syngress\n\n\n    \n    \n\n\n\n\n    &quot;Real World Linux Security: Intrusion Prevention, Detection and Recovery&quot;\n    by Bob Toxen\n    ISBN #0130281875, Prentice Hall\n\n\n    \n    \n\n\n\n\n    &quot;Hacking Linux Exposed&quot;\n    by Brian Hatch, James B. Lee, George Kurtz\n    ISBN #0072225645, McGraw-Hill (2nd edition)\n\n    From the same authors of &quot;Hacking Exposed&quot;.\n    \n\n\n    \n    \n\n\n\n\n    &quot;Maximum Linux Security: A Hacker&#39;s Guide to Protecting Your Linux Server and Workstation&quot;\n    by Anonymous and John Ray\n    ISBN #0672321343, Sams\n\n    Covers not only audit and protection methods but also investigates and\n    explains the attacks and how they work.\n    \n\n\n    \n    \n\n\n\n\n    &quot;Network Intrusion Detection: An Analyst&#39;s Handbook&quot;\n    by Stephen Northcutt, Donald McLachlan, Judy Novak\n    ISBN #0735710082, New Riders Publishing\n    \n\n    \n    \n\n\n\n\n    &quot;SSH, the Secure Shell : The Definitive Guide&quot;\n    by Daniel J. Barrett, Richard Silverman\n    ISBN #0596000111, O&#39;Reilly &amp; Associates\n    \n\n    \n    \n\n\n\n\n    &quot;Nessus Network Auditing (Jay Beale&#39;s Open Source Security)&quot;\n    by Renaud Deraison, Noam Rathaus, HD Moore, Raven Alder, George Theall, Andy Johnston, Jimmy Alderson\n    ISBN #1931836086, Syngress\n    \n\n    \n    \n\n\n\n\n    &quot;Computer Security Incident Handling Step by Step&quot;\n    by Stephen Northcutt\n    ISBN #0967299217\n    \n\n    \n    \n\n\n\n\n    &quot;Security Assessment: Case Studies for Implementing the NSA IAM&quot;\n    by Russ Rogers, Greg Miles, Ed Fuller, Ted Dykstra\n    ISBN #1932266968, Syngress\n    \n\n    \n    \n\n\n\n\n    &quot;Network Security Assessment&quot;\n    by Chris McNab\n    ISBN #059600611X, O&#39;Reilly\n    \n\n    \n    \n\n\n\n\n    &quot;A Practical Guide to Security Assessment&quot;\n    by Sudhanshu Kairab\n    ISBN #0849317061, Auerbach Publications\n    \n\n    \n    \n\n\n\n\n    &quot;Aggressive Network Self-defense&quot;\n    by NEIL R. WYLER\n    ISBN #1931836205, Syngress Publishing\n    \n\n    \n    \n\n\n\n\n    Security Source Magazine\n Security Source Magazine&#39;s cover story is about keeping\nthe network secure, from the gateway to the desktop. Subscribe now and\ncontinue to learn about valuable security topics and strategies in each\nquarterly issue. \n\n\n    LibreSubscription\n    \n\n\n\n\n    Info Security Magazine\n Business and management of information security. C&#39;est un\ninternational magazine, with an European focus. It is published in both\nprint and digital editions, the latter containing the full content of\nthe print publication, accessible via the web. Its experienced\neditorial team delivers stories that deal with the big picture issues\nof information security. Our sources and columnists are the expert\nsecurity researchers and practitioners who define, drive, and lead the\nfield. And our journalists are in demand by the IT trade and broadsheet\npress. \n\n\n    LibreSubscription\n    \n\n\n\n\nClick to rate this post!\r\n                                   \r\n                               [Total: 0  Average: 0]","paragraphs":["Étapes de sécurité de base / Vue d&#39;ensemble:","Effectuez les étapes suivantes pour sécuriser votre site Web:","Voir les erratas de distribution et les correctifs de sécurité (voir la page d&#39;accueil de Yolinux pour la liste). [e.g. Red Hat Linux Errata]          Mettez à jour votre système le cas échéant.","Red Hat / CentOS:","yum check-update\n                    (Imprimer la liste des paquets à mettre à jour.)\n                \nmiam mise à jour","Notez que cela peut être automatisé en utilisant le /etc/init.d/yum-updatesd service (RHEL / CentOS 5) ou créer un travail cron /etc/cron.daily/yum.cron","#! / bin / sh\n/ usr / bin / yum -R 120 -e 0 -d 0 -y mise à jour yum\n/ usr / bin / yum -R 10 -e 0 -d 0 -y mise à jour","Ubuntu / Debian:","apt-get update\n                    (Mettez à jour la liste des packages vers la dernière version associée à cette version du système d&#39;exploitation.)\n                \napt-get upgrade","Réduisez le nombre de services réseau exposés. Ceux-ci seront lancés par\nscripts en /etc/rc.d/rc*.d/ des répertoires. (Voir la liste complète des services en: /etc/init.d/)\nIl n’est peut-être pas nécessaire d’exécuter sendmail (serveur de messagerie),\nportmap (écouteur RPC requis par NFS),\nlpd (démon du serveur d’imprimante en ligne. Les pirates cherchent constamment à obtenir ce service pour mon système.),\ninnd (serveur de news), linuxconf etc.\nPar exemple, sendmail peut être supprimé du processus de démarrage à l’aide de la commande suivante:\n          chkconfig --del sendmail ou en utilisant l&#39;outil de configuration Ntsysv.\nLe service peut être terminé à l&#39;aide de la commande /etc/rc.d/init.d/sendmail stop.\nÀ tout le moins, vous devez exécuter la commande chkconfig --list\npour voir quels processus sont configurés pour pouvoir être utilisés après le démarrage.\nVoir le tutoriel sur le processus d&#39;initialisation YoLinux","Vérifiez votre configuration. Répertoriez les ports ouverts et les processus qui les contiennent: netstat -punta (Essayez aussi netstat -nlp)\n        \nListe des services RPC: [root]# rpcinfo -p localhost\n    Idéalement, vous NE PAS être en cours d&#39;exécution portmapper donc pas de services RPC\n    serait disponible. Désactivez portmapper: service portmap stop (ou: /etc/init.d/portmap stop) et\n    supprimez-le de la séquence de démarrage du système: chkconfig --del portmap\n    (Portmap est requis par NFS.)\n        \nFTP anonyme (avec wu_ftpd &#8211; Dernière livraison avec RH 8.0. RH 9 et FC utilisent vsftpd):\n    Par défaut, Red Hat est configuré pour le FTP anonyme.\n    Cela permet aux utilisateurs de ftp sur votre serveur et de se connecter avec le login.\n    anonyme et utilisez une adresse email comme mot de passe. Si vous le souhaitez\n    pour désactiver cette fonctionnalité éditer le fichier / etc / ftpaccess et changer:\n    classe tout réel, invité, anonyme *\n    à\n    classe tout réel, invité *\n    Pour plus d&#39;informations sur la configuration FTP, voir: Didacticiel de configuration FTP du serveur Web YoLinux","Utilisez le trouver commande pour localiser les vulnérabilités &#8211; trouver les fichiers suid et guid (pouvant s&#39;exécuter avec les privilèges root), ainsi que les fichiers et les répertoires accessibles en écriture dans le monde entier. Par exemple:","find / -xdev  (-perm -4000 -o -perm -2000 ) -type f -print\n                Supprimez les privilèges suid sur les programmes exécutables avec la commande: chmod -s nom de fichier\n            \n    find / -xdev  (-nouser -o -nogroup ) -print\n                Rechercher des fichiers n&#39;appartenant pas à un utilisateur ou à un groupe valide.","Utilisez la commande chattr\net lsattr\nrendre un fichier de sécurité sensible non modifiable en plus des autorisations habituelles.","Rendre un fichier non modifiable: chattr + i / bin / ls\n              Rendre les répertoires non modifiables: chattr -R + i / bin / sbin / boot / lib\n              Faire un fichier ajouter seulement: chattr + a / var / log / messages","Utilisez &quot;tripwire&quot;\n[sourceforge: tripwire]\npour la surveillance de la sécurité de votre système à la recherche de traces de fichiers non autorisés\nchangements. Tripwire est proposé dans le cadre des distributions de base Red Hat et Ubuntu.\nLa configuration de Tripwire est décrite ci-dessous.","Regardez vos fichiers de journaux en particulier / var / log / messages et\n   / var / log / secure.\n        \nÉvitez les noms de compte génériques tels que client.\n        \nUtilisez les configurations de wrapper réseau de PAM pour interdire les mots de passe pouvant être utilisés.\ntrouvé facilement par crack ou d&#39;autres programmes de piratage.\nL&#39;authentification PAM peut également interdire l&#39;accès à la connexion au réseau racine.\n(Configuration Red Hat par défaut.\nVous devez vous connecter en tant qu&#39;utilisateur régulier et su - pour obtenir un accès root.\nCe n&#39;est PAS la valeur par défaut pour ssh et doit être modifié comme indiqué ci-dessous.)\n          Voir le tutoriel YoLinux Network Admin sur l’utilisation de PAM\n        \nL&#39;accès à distance NE DOIT PAS être effectué avec un texte telnet en texte clair, mais avec une connexion chiffrée utilisant ssh. (Plus tard dans ce tutoriel)\n        \nParamètres du fichier Proc pour la défense contre les attaques. Cela inclut des mesures de protection contre\nUsurpation d&#39;adresse IP, attaques par saturation ou attaques par syncookies.\n        \nDDoS (attaques par déni de service distribué): le seul\nce que vous pouvez faire est d&#39;avoir une bande passante et un traitement gobs\nalimentation / pare-feu. Beaucoup de puissance de traitement ou un pare-feu sont inutiles\nsans bande passante\ncar le réseau peut être surchargé par une attaque distribuée.\nRegarde aussi:\n    \nMalheureusement, les paquets sont généralement usurpés et dans mon cas, le FBI\ns&#39;en fichait. Si le serveur est un serveur distant, utilisez un modem d&#39;accès à distance ou\nune deuxième adresse IP et une route d&#39;accès, car la route attaquée est\nbloqué par le déluge de\nattaques de réseau. Vous pouvez également demander à votre FAI de supprimer le trafic ICMP.\nà\nles adresses IP de vos serveurs. (et UDP si tout ce que vous utilisez est un\nserveur Web. Les serveurs de noms DNS utilisent UDP.)\nPour une lecture très intéressante, voir &quot;The Strange Tale&quot; de l&#39;attaque DDoS de GRC.com. (Très intéressante lecture sur l’anatomie des réseaux de hacker bot.)\n    \nL&#39;accès utilisateur peut être restreint avec les fichiers de configuration suivants:","/etc/security/limits.conf\n    \n/etc/security/group.conf\n    \n/etc/security/time.conf","Voir le tutoriel YoLinux SysAdmin &#8211; restreindre les utilisateurs\n        \nSupprimer les utilisateurs inutiles du système. Voir / etc / passwd.\nPar défaut\nLes installations Red Hat ont de nombreux comptes utilisateur créés pour prendre en charge\ndivers processus. Si vous n’avez pas l’intention d’exécuter ces processus, supprimez\nles utilisateurs. c&#39;est-à-dire retirer\nidentifiants utilisateur jeux, uucp, rpc, rpcd, ...","Démon de réseau IP:","Il est préférable, pour des raisons de sécurité, de réduire le nombre\ndes services réseau inetd exposés. Plus vous exposez de services, plus votre\nvulnérabilité. Réduire le nombre de services réseau accessibles via\nle démon xinet ou inet par:","inetd: (ancien chapeau rouge)\n    Commentez les services inutiles dans le /etc/initd.conf fichier.\n    Exemple: (FTP est le seul service que je lance)","flux ftp tcp maintenant racine / usr / sbin / tcpd in.ftpd -l -a\n    \n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/inetd restart","xinetd: (systèmes actuels)\n    Tous les services réseau sont désactivés par défaut lors d&#39;une mise à niveau. Exemple de fichier: /etc/xinetd.d/wu-ftpd:","service ftp","     disable = yes - La valeur par défaut est désactivée. Cette ligne contrôle le service xinetd (activé ou non)\n     socket_type = stream\n     attendre = non\n     utilisateur = root\n     serveur = /usr/sbin/in.ftpd\n     server_args = -l -a\n     log_on_success + = DURÉE USERID\n     log_on_failure + = USERID\n     bien = 10","Activer / désactiver un service xinetd:","Editez le fichier: /etc/xinetd.d/Nom du service\n    Changer de ligne &quot;désactiver = oui&quot;désactive un service xinetd.\n    Changer de ligne &quot;désactiver = non&quot;active un service xinetd.\n    La configuration de Xinetd doit être effectuée pour chaque fichier du répertoire.\n    /etc/xinetd.d/ afin de configurer chaque service réseau.\n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/xinetd restart","Vous pouvez également utiliser la commande:\n        chkconfig wu-ftpd sur\n        OU\n        chkconfig wu-ftpd off \nCela modifiera le fichier approprié (/etc/xinetd.d/wu-ftpd)\n    et redémarrez le processus xinetd.","Pointe:","Répertoriez les paramètres init, y compris tous les services contrôlés xinetd: chkconfig --list\n    \nÉnumérer le statut des services (systèmes Red Hat / Fedora Core): service - état général","Configuration du noyau:","Utilisation Pare-feu Linux règles de protection contre les attaques. (iptables: noyau 2.4+ ou ipchains: noyau 2.2)\n    Les règles de refus d&#39;accès peuvent également être implémentées à la volée par portsentry.\n    (Lieu à la fin de /etc/rc.d/rc.local à exécuter au démarrage du système, ou un autre script approprié)","script iptables:","iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS","iptables -A INPUT -p udp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS","iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 6000: 6009 -j DROP  - Bloquer X-Windows","iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 7100 -j DROP       - Bloquer le serveur de polices X-Windows","iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante","iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante","iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS","iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS","iptables -A INPUT -p tout -s localhost -i eth0 -j DROP            - Refuser les paquets extérieurs d’Internet qui\n                                                                          prétendre être de votre interface de bouclage.","script ipchains:","# Autoriser l&#39;accès en boucle. Cette règle doit précéder les règles interdisant l&#39;accès au port !!\niptables -A INPUT -i lo -p all -j ACCEPT         - Cette règle est essentielle si vous voulez votre propre ordinateur","iptables -A OUTPUT -o lo -p all -j ACCEPT                pour pouvoir accéder à lui-même via l&#39;interface de bouclage","ipchains -A entrée -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT       - Bloc NFS","ipchains -A entrée -p udp -s 0/0 -d 0/0 2049 -j REJECT          - Bloc NFS","ipchains -A entrée -p tcp -s 0/0 -d 0/0 6000: 6009 -y -j REJECT  - Bloquer X-Windows","ipchains -A entrée -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT       - Bloquer le serveur de polices X-Windows","ipchains -A entrée -p tcp -s 0/0 -d 0/0 515 -y -j REJECT        - Bloquer le port de l&#39;imprimante","ipchains -A entrée -p udp -s 0/0 -d 0/0 515 -j REJECT           - Bloquer le port de l&#39;imprimante","ipchains -A entrée -p tcp -s 0/0 -d 0/0 111 -y -j REJECT        - Bloquer Sun rpc / NFS","ipchains -A entrée -p udp -s 0/0 -d 0/0 111 -j REJECT           - Bloquer Sun rpc / NFS","ipchains -A entrée -j REJECT -p tout -s localhost -i eth0 -l    - Refuser et consigner (&quot;-l&quot;) les paquets extérieurs à Internet\n                                                                       qui prétendent être de votre interface de bouclage.","Remarque:","iptables utilise la règle de chaîne &quot;INPUT&quot; et ipchains utilise la minuscule\n    descripteur &quot;entrée&quot;.\n    \nVoir les règles avec iptables -L ou ipchains -L commander.\n    \nPage de manuel d&#39;iptables\n    \n    Lorsque vous utilisez un serveur Web Internet, il est préférable que votre ordinateur soit sécurisé.\n        vue, qu’on ne lance PAS l’impression, X-Window, NFS ou d’autres services pouvant\n        être exploité si une vulnérabilité est découverte ou si elle est mal configurée\n        indépendamment des règles de pare-feu.","Regarde aussi:","Utilisation portsentry pour surveiller les attaques de pirates réseau et affecter dynamiquement des règles de pare-feu pour contrecarrer les attaquants. (Plus tard dans ce tutoriel)","Un monolithique et noyau minimal pourrait également fournir un petit peu de\nprotection (éviter les modules Trojan) et exécution sur du matériel moins courant\n(MIPS, Alpha, etc &#8230; afin que les instructions de débordement de tampon ne s&#39;exécutent pas.)","Améliorations de la sécurité du noyau:","Activer ExecShield: Ceci est activé par défaut sur Red Hat EL 5 / CentOS 5.\n            ExecShield est une fonctionnalité du noyau Linux qui protège le système contre les exploits de débordement de mémoire tampon.\n            Cette fonctionnalité est réalisée par un placement aléatoire de la mémoire de pile, une prévention de l&#39;exécution de la mémoire utilisée pour la gestion de la mémoire tampon de données et de texte.\n            ExecShield peut être activé dans le fichier de configuration Red Hat / CentOS /etc/sysctl.conf en ajoutant les deux lignes suivantes:","kernel.exec-shield = 1\nkernel.randomize_va_space = 1\n            \n            La configuration actuelle du système peut être vérifiée:","cat / proc / sys / kernel / exec-shield\n            \ncat / proc / sys / kernel / randomize_va_space","Les deux devraient être &quot;1&quot;. (Défaillance du système)","Remarque: processeurs Intel XD / AMD NX 32 bits uniquement x 32 (pas x86_64 pouvant traiter plus de 4 Go):\n            Activez la prise en charge d’AMD NX ou d’Intel XD à l’aide du noyau PAE (Physical Address Extension). L&#39;extension de mémoire PAE est nécessaire pour accéder au bit XD / NX.\n            Pour savoir si votre processeur prend en charge NX ou XD PAE, utilisez la commande suivante: cat / proc / cpuinfo | drapeaux grep pour afficher un champ avec &quot;pae&quot; et &quot;nx&quot;.\n            Installez un noyau Linux (2.6.8+) avec support PAE avec la commande miam installer le noyau-PAE. Le chargeur de démarrage devra également spécifier le noyau PAE pour le démarrage.\n            Le BIOS devra également être configuré pour le prendre en charge.\n            Ce noyau ne doit être installé que sur un système doté d’un processeur x86 32 bits offrant cette prise en charge. Les processeurs x86_64 64 bits pouvant interagir de manière native avec le bit XD / NX n&#39;ont pas besoin du noyau PAE.","Règles de pare-feu pour bloquer les blocs IP incorrects:","Il est bien connu qu’il existe différents blocs d’adresses IP où résident des pirates informatiques et des robots anti-spam. Ces blocs de propriété intellectuelle appartenaient souvent à des sociétés et à des organisations légitimes, mais sont tombés dans un royaume non surveillé ou ont été détournés et vendus à des spammeurs criminels.\nCes blocs IP doivent être bloqués par des règles de pare-feu.","Il existe divers services conviviaux qui recherchent et découvrent ces blocs IP de pare-feu et les refusent, et ils partagent cette information avec nous. Merci!","La liste déroulante Spamhaus: Il s&#39;agit d&#39;un script permettant de télécharger la liste déroulante totale et de générer un script de filtrage iptables pour bloquer ces adresses IP mêmes:","#! / bin / bash\n# Liste noire des zones de hackers et des domaines défectueux de spamhaus.org\nFILE = drop.lasso\n/ bin / rm -f $ FILE\nwget http://www.spamhaus.org/drop/drop.lasso\nblocks = $ (cat $ FILE | egrep -v &#39;^;&#39; | awk &#39;print $ 1&#39;)\necho &quot;#! / bin / bash&quot;&gt; Spamhaus-drop.lasso.sh\npour ipblock dans les blocs $\nfaire\n echo &quot;iptables -I INPUT -s $ ipblock -j DROP&quot; &gt;&gt; Spamhaus-drop.lasso.sh\nterminé\nchmod ugo + x Spamhaus-drop.lasso.sh\necho &quot;... fait&quot;","Pour bloquer les adresses IP, exécutez simplement le script sur chacun de vos serveurs: ./Spamhaus-drop.lasso.sh\nAu minimum, ces blocs d&#39;adresses IP devraient être refusés par tous les serveurs.","Bloquer ou autoriser par pays: On peut refuser l&#39;accès de certains pays ou l&#39;inverse, n&#39;autoriser que certains pays à accéder à votre serveur.","Voir ces sites pour générer des listes:","Bloquer le forum et les spammeurs de la liste de commentaires: Utilisez la liste générée à partir de pots de miel exploités par StopForumSpam.com","#! / bin / bash\n# Grande liste d&#39;adresses IP à bloquer\nNombre d&#39;adresses IP recueillies au cours des 30 derniers jours\n# Plus de 100 000 adresses IP","rm -f Listed_ip_30.zip\nwget http://www.stopforumspam.com/downloads/listed_ip_30.zip","rm -f Listed_ip_30.txt\nDécompressez listing_ip_30.zip","echo &quot;#! / bin / bash&quot;&gt; Stopforumspam-listed_ip_30.sh\ncat ./listed_ip_30.txt | awk &#39;print &quot;/ sbin / iptables -I INPUT -s&quot; $ 1 &quot;-j DROP&quot;&#39; &gt;&gt; Stopforumspam-listed_ip_30.sh","chmod ugo + x Stopforumspam-listed_ip_30.sh","Pour bloquer les adresses IP, exécutez simplement le script: ./Stopforumspam-listed_ip_30.sh","Sachez qu&#39;il s&#39;agit d&#39;une liste extrêmement longue et que son exécution peut prendre des heures.\nC&#39;est aussi une liste qui change rapidement et qui est constamment mise à jour.","[Potential Pitfall]: Vous pouvez obtenir l&#39;erreur suivante:","iptables: erreur inconnue 18446744073709551615","J&#39;ai constaté qu&#39;en ralentissant l&#39;exécution du script, je pouvais éviter cette erreur.\nJ&#39;ai ajouté un écho bash pour écrire chaque ligne à l&#39;écran et elle s&#39;est bien mieux comportée bien que beaucoup plus lente.","#! / bin / bash\nset -x verbose\n/ sbin / iptables -I INPUT -s XX.XX.XX.XX -j DROP\n...","Identifiez l&#39;ennemi:\nUtilisez ce qui suit pour identifier et géolocaliser une adresse IP (InfoSniper.net):","Serveur Web Apache:","Modules Apache: Désactivez les modules que vous n&#39;allez pas utiliser. Si votre site Web ne dessert pas https, désactivez-le.\n    Avec les exploits antérieurs de SSL, ceux qui ont utilisé cette philosophie n’ont pas été brûlés.\n    \nApache version exposition: (Version 1.3+) N&#39;autorisez pas les pirates informatiques à déterminer la version du logiciel de serveur Web que vous exécutez en induisant une erreur et donc une réponse automatique du serveur. Les attaques sont souvent spécifiques à la version. Les spammeurs déclenchent également des erreurs pour trouver des adresses électroniques.","...","Webmaster ServerAdmin chez megacorp dot com\nServerSignature Off","...","De toute façon, la réponse risque d’être dénuée de sens si vous utilisez le serveur Web en tant que proxy pour un autre.","Bloquez les pirates et les pays qui n&#39;utiliseront jamais votre site Web.\n        Utilisez la directive Apache Refuser de bloquer l&#39;accès.","...\n    ...\n    ...\n    Ordre permettre, refuser\n    # Bots en forme de bloc\n    Refuser à partir de 88.191.0.0/16 193.200.193.0/24 194.8.74.0/23\n    permettre à tous","Pour une liste exhaustive des adresses IP à bloquer, voir la\n        Liste de blocage de Wizcrafts.net","SSH: (shell sécurisé)","Protocole SSH suite d&#39;outils de connectivité réseau sont utilisés pour chiffrer\nconnexions sur Internet. SSH chiffre tout le trafic, y compris\nidentifiants et mots de passe pour éliminer efficacement le sniffing sur le réseau,\ndétournement de connexion et autres attaques au niveau du réseau.\nDans une session telnet classique, le mot de passe est transmis via Internet.\nnon chiffré.\n      \nSSH sur Linux fait référence à OpenSSH Secure Shell Terminal et aux connexions de transfert de fichiers sftp / scp. SSH est également un produit commercial mais disponible librement pour un usage non commercial\nde SSH Communications Security à\n      http://www.ssh.com/.\nDeux versions sont disponibles, SSH1 (maintenant très ancien) et SSH2 (actuel).\nLa version commerciale de SSH peut être achetée et / ou téléchargée à partir de leur\nsite Internet.\nNotez que SSH1 présente un problème de vulnérabilité majeur.\nLe groupe de craquage et de défiguration du site Web &quot;woot-project&quot; utilise cette vulnérabilité.\n      NE PAS UTILISER LE PROTOCOLE SSH1 !!!!!\n(&quot;woot-project&quot; exploit / attaque description / récupération)\n      \nOpenSSH a été développé par le\n      OpenBSD Project et est disponible gratuitement.\nOpenSSH est compatible avec SSH1 et SSH2.\nOpenSSH s&#39;appuie sur le projet OpenSSL pour la couche de communication cryptée.\nLes versions actuelles de Linux sont fournies avec OpenSSH / OpenSSL.","Liens:","OpenSSH:","Télécharger:\n          \n    Remarque: SSH et SSL sont inclus dans Red Hat Linux 7.0+.","Installation:","Commun au client et au serveur:\n              \nClient:","Red Hat / Fedora / CentOS:","rpm -ivh openssh-askpass-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-clients-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-askpass-gnome-2.xxx-x.x.x86.rpm    - Utilisateurs de bureau Gnome","Ubuntu / Debian:","apt-get installer openssh-client ssh-askpass-gnome","Serveur:","Si vous mettez à niveau à partir de SSH1, vous devrez peut-être utiliser l&#39;option RPM --Obliger.","Le rpm installera les fichiers binaires, les fichiers de configuration et les\n    openssh-server va installer le script d&#39;initialisation /etc/rc.d/init.d/sshd\n    pour que sshd commencera au démarrage du système.","Configuration:","Fichier de configuration du client / etc / ssh / ssh_config: (Défaut)","# $ OpenBSD: ssh_config, v 1.9 2001/03/10 12:53:51 deraadt Exp $","# Ceci est un fichier de configuration système client ssh. Voir ssh (1) pour plus\n# information. Ce fichier fournit des valeurs par défaut aux utilisateurs et les valeurs peuvent\n# être modifié dans les fichiers de configuration par utilisateur ou sur la ligne de commande.","# Les données de configuration sont analysées comme suit:\n# 1. options de ligne de commande\n# 2. Fichier spécifique à l&#39;utilisateur\n# 3. fichier du système\n# Toute valeur de configuration n&#39;est modifiée que la première fois qu&#39;elle est définie.\n# Ainsi, les définitions spécifiques à l’hôte doivent figurer au début de la\n# fichier de configuration, et les valeurs par défaut à la fin.","# Valeurs par défaut pour l&#39;ensemble du site pour diverses options","# Hôte *\n# ForwardAgent no\n# ForwardX11 non\n# RhostsAuthentication no\n# RhostsRSAAuthentication oui\n# RSAAuthentication oui\n# Password Authentification oui\n# FallBackToRsh no\n# UseRsh no\n# BatchMode no\n# CheckHostIP yes\n# StrictHostKeyChecking oui\n# IdentityFile ~ / .ssh / identity\n# IdentityFile ~ / .ssh / id_rsa\n# IdentityFile ~ / .ssh / id_dsa\n# Port 22\n# Protocole 2.1 - Remplacez cette ligne par: Protocole 2\n# Cipher 3des\n# Chiffres aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour, aes192-cbc, aes256-cbc\n# EscapeChar ~\nHôte *\n        ForwardX11 oui","Changer la ligne: # Protocole 2,1\n    à:     Protocole 2\n    Cela éliminera l&#39;utilisation du protocole SSH1.","Décommentez les options requises ou acceptez les valeurs par défaut codées en dur.\n    Les valeurs par défaut codées en dur pour le client OpenSSH sont compatibles avec SSH1\n    fichiers client et serveur sshd. Une mise à niveau vers le client OpenSSH\n    ne nécessite aucune modification des fichiers $ HOME / .ssh /.","Fichier de configuration du serveur / etc / ssh / sshd_config:\n        Défaut:","# $ OpenBSD: sshd_config, v 1.38 2001/04/15 21:41:29 deraadt Exp $","# Ce sshd a été compilé avec PATH = / usr / bin: / bin: / usr / sbin: / sbin","# Ceci est le fichier de configuration système du serveur sshd. Voir sshd (8)\n# pour plus d&#39;informations.","Port 22\n#Protocole 2,1                             - Changer en: Protocole 2\n#ListenAddress 0.0.0.0\n#ListenAddress ::\nClé de l&#39;hôte / etc / ssh / ssh_host_key\nClé de l&#39;hôte / etc / ssh / ssh_host_rsa_key\nHostKey / etc / ssh / ssh_host_dsa_key\nServerKeyBits 768\nLoginGraceTime 600                        - Changer en: LoginGraceTime 120\nKeyRegenerationInterval 3600\nPermitRootLogin oui                       - Changer en: PermitRootLogin no\n#\n# Ne pas lire les fichiers ~ / .rhosts et ~ / .shosts\nIgnoreRhosts oui\n# Supprimer le commentaire si vous ne faites pas confiance à ~ / .ssh / known_hosts pour RhostsRSAAuthentication\n#IgnoreUserKnownHosts oui\nStrictModes oui\nX11Forwarding oui\nX11DisplayOffset 10\nPrintMotd oui\n#PrintLastLog no\nKeepAlive oui","# Enregistrement\nSyslogFacility AUTHPRIV\nLogLevel INFO\n#obsoletes QuietMode et FascistLogging","RhostsAuthentication non\n#\n# Pour que cela fonctionne, vous aurez également besoin de clés d&#39;hôte dans / etc / ssh / ssh_known_hosts\nRhostsRSAAuthentication non\n# similaire pour la version 2 du protocole\nAuthentification par l&#39;hôte non\n#\nAuthentification RSAA oui","# Pour désactiver les mots de passe en texte clair tunnelés, choisissez non ici!\nAuthentification par mot de passe oui\nPermitEmptyPasswords no","# Un-comment pour désactiver les mots de passe s / key\n#ChallengeResponseAuthentication no","# Supprimer le commentaire pour activer l&#39;authentification interactive au clavier PAM\n# Avertissement: l&#39;activation de cette option peut contourner le paramètre &#39;PasswordAuthentication&#39;\n#PAMAuthenticationViaKbdInt yes","# Pour changer les options de Kerberos\n#KerberosAuthentication no\n#KerberosOrLocalPasswd oui\n#AFSTokenPassing no\n#KerberosTicketCleanup no","# Kerberos TGT Passing ne fonctionne qu&#39;avec le kaserver AFS\n#KerberosTgtPassing oui","#CheckMail oui\n#UseLogin no","#MaxStartups 10:30:60\n#Banner /etc/issue.net\n#ReverseMappingCheck Oui","Sous-système sftp / usr / libexec / openssh / sftp-server","Générer des clés système: / etc / ssh /","ssh-keygen -q -t rsa -f / etc / ssh / ssh_host_rsa_key -C &#39;&#39; -N &#39;&#39;\nssh-keygen -q -t dsa -f / etc / ssh / ssh_host_dsa_key -C &#39;&#39; -N &#39;&#39;\nClés privées générées: chmod 600 / etc / ssh / ssh_host_dsa_key / etc / ssh / ssh_host_rsa_key\nClés publiques générées: chmod 644 /etc/ssh/ssh_host_dsa_key.pub /etc/ssh/ssh_host_rsa_key.pub\nPour SELinux:","/ sbin / restorecon /etc/ssh/ssh_host_rsa_key.pub\n / sbin / restorecon /etc/ssh/ssh_host_dsa_key.pub","Générer des clés utilisateur:","Client:\n           Utilisez la commande: / usr / bin / ssh-keygen -t rsa","Génération d&#39;une paire de clés rsa publique / privée.\nEntrez le fichier dans lequel enregistrer la clé (/ home /identifiant d&#39;utilisateur/.ssh/id_rsa):\nEntrez mot de passe (vide pour aucun mot de passe):\nEntrez à nouveau le même mot de passe:\nVotre identification a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.\nVotre clé publique a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.pub.\nL&#39;empreinte digitale clé est:\nXX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX: XX user-id@nom de noeud\n        \n        Fichiers générés:","$ HOME / .ssh / id_rsa            - binaire \n$ HOME / .ssh / id_rsa.pub        - ssh-rsa ... 223564257432 adresse électronique\n                             - Plusieurs clés / lignes autorisées.\n        \n        Options de commande:","-t rsa (pour la version 2 du protocole)\n        \n-t dsa (pour la version 2 du protocole)\n        \n-t rsa1 (pour la version 1 du protocole)\n        \n-b 2048 (spécifie la longueur de la clé en bits)","Serveur:","FTP le fichier $ HOME/.ssh/id_rsa.pub au serveur\n           \ncd $ HOME / .ssh /\n           \ncat id_rsa.pub &gt;&gt; registered_keys2","Utilisation de ssh: sur le client, utilisez la commande suivante\n    et connectez-vous comme vous le feriez normalement avec une session telnet:\n          ssh nom-du serveur \n          La première fois que vous utilisez ssh, le message suivant sera envoyé:","L&#39;authenticité de l&#39;hôte &#39;node.your-domain.com (XXX.XXX.XXX.XXX) &#39;ne peut être établi.\nL&#39;empreinte de la clé RSA est XX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX.\nÊtes-vous sûr de vouloir continuer à vous connecter (oui / non)? Oui\nAttention: ajouté en permanence &#39;node.your-domain.com,XXX.XXX.XXX.XXX&#39;(RSA) à la liste des hôtes connus.\nutilisateur@node.your-domainMot de passe .com:\n    \n    Répondez oui. Il ne demandera plus.","Pour utiliser un nom d&#39;utilisateur différent pour la connexion, indiquez-le sur la ligne de commande:\n    ssh -l nom d&#39;utilisateur nom du serveur","Note: Vous pouvez maintenant aussi utiliser la commande sftp pour des transferts de fichiers ftp sécurisés avec ssh.","OpenSSH Man Pages:","ssh &#8211; Client OpenSSH SSH (programme de connexion à distance)\n        \nsshd &#8211; démon OpenSSH ssh\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh_config &#8211; Fichier de configuration du client OpenSSH SSH\n        \nsshd_config &#8211; Fichier de configuration du démon OpenSSH SSH\n        \nssh-add &#8211; ajoute les identités RSA ou DSA pour l&#39;agent d&#39;authentification. Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nssh-agent &#8211; agent d&#39;authentification\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \nsftp &#8211; Programme de transfert de fichiers sécurisé\n        \nsftp-server &#8211; sous-système de serveur SFTP","Autres liens OpenSSH:\n      \nSSH pour les liens MS / Windows:\n      \nNotes SSH:","Le sshd ne doit pas être démarré avec xinetd / inetd en raison du temps nécessaire pour effectuer\n    calculs quand il est initialisé.\n        \nLe client ssh va rechercher la racine. sshd sur le serveur est exécuté en tant que root.\n    Les privilèges root sont nécessaires pour communiquer sur les ports inférieurs à 1024.\n    L&#39;option -p peut être utilisée pour exécuter SSH sur un autre port.\n        \n    RSA est utilisé pour l&#39;échange de clés et un chiffrement conventionnel (Blowfish par défaut)\n    est utilisé pour chiffrer la session.\n        \nLe cryptage est démarré avant l’authentification, et aucun mot de passe ou autre\n    l&#39;information est transmise en clair.\n        \nAuthentification:","La connexion est appelée par l&#39;utilisateur.\n              Le client indique au serveur la clé publique que l&#39;utilisateur souhaite utiliser.\n              utiliser pour l&#39;authentification.\n          \nLe serveur vérifie ensuite si cette clé publique est admissible.\n               Si oui, un nombre aléatoire est généré et crypté avec le public\n               clé et envoie la valeur au client.\n           \nLe client déchiffre ensuite le numéro avec sa clé privée et calcule une\n               somme de contrôle. La somme de contrôle est renvoyée au serveur\n           \nLe serveur calcule une somme de contrôle à partir des données et compare les sommes de contrôle.\n           \n    L&#39;authentification est acceptée si les sommes de contrôle correspondent.","SSH utilisera $ HOME / .rhosts (ou $ HOME / .shosts)\n        \nPour établir une connexion réseau sécurisée sur un autre port TCP, utilisez\n            Options &quot;tunneling&quot; avec la commande ssh:","Transférer le port local TCP vers hostport sur l&#39;hôte distant:\n              ssh hôte distant -L Port: localhost:commande hostport","Spécifier des ports inférieurs à 1024 nécessitera un accès root.\n          FTP ouvre plusieurs ports et n’est donc pas un bon candidat. Le port 21 est seulement\n          utilisé pour établir la connexion.","Pages de manuel:","ssh &#8211; client shell sécurisé (programme de connexion à distance)\n        \nsshd &#8211; démon shell sécurisé (serveur)\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh-keyscan &#8211; récupère les clés publiques ssh\n        \nssh-add &#8211; ajoute des identités pour l&#39;agent d&#39;authentification Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nslogin\n        \nsftp &#8211; client du programme de transfert de fichiers sécurisé.\n        \nsftp-server &#8211; serveur de programme de transfert de fichiers sécurisé.\n        \nssh-agent &#8211; Agent d&#39;authentification.\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \ntelnet &#8211; interface utilisateur avec le protocole TELNET","Documentation:","/ usr / share / doc / openssh-XXX /\n        \n/ usr / share / doc / openssh-askpass-XXX /\n        \n/usr/share/doc/openssl-0.XXX/","Tester:\n      \nLe renifleur de réseau Ethereal (maintenant Wireshark) était utilisé pour renifler les transmissions réseau\nentre le client et le serveur pour telnet et ssh\navec les résultats suivants:","Testez la connexion telnet en texte clair: (port 23)\n             Le texte envoyé par le client est un texte vert sur fond noir.\n             Le reste du texte a été transmis par le serveur.\n             Notez que l&#39;identifiant (&quot;JoeUser&quot;) et le mot de passe (&quot;super-secret-password&quot;) ont été capturés.","Testez la connexion cryptée ssh: (port 22)\n            Notez que tout l’échange de login et de mot de passe était crypté.","Fail2ban: bloquer les connexions échouées répétées","Tout site sur Internet public sera soumis à des attaques par mots de passe dictionnaires, essayant constamment de nouveaux mots, séquences de mots et séquences ASCII à partir de programmes d&#39;attaque automatisés provenant de serveurs compromis.\nUtilisez fail2ban pour bloquer ces tentatives.\nFail2ban examinera les fichiers journaux pour rechercher les tentatives de connexion infructueuses répétées et bloquera de manière temporaire ou permanente les adresses IP du système attaquant.\nLa configuration par défaut de fail2ban examine le fichier journal sshd. / var / log / secure pour trouver le système attaquant et autorisera 5 tentatives de connexion infructueuses avant le blocage pendant 600 secondes (10 minutes).","Fail2ban peut être configuré pour surveiller les processus suivants:","sshd","smtp","Apache httpd","lumière","vsftpd","postfix","bind9 nommé","mysqld","astérisque","&#8230;","Installation:","Chapeau rouge: yum installer fail2ban","Ubuntu: sudo apt-get install fail2ban","Configuration:","/etc/fail2ban/fail2ban.conf","[Definition]","# 1 = ERREUR\n# 2 = WARN\n# 3 = INFO\n# 4 = DEBUG\nloglevel = 3","# Values: fichier STDOUT STDERR SYSLOG Par défaut: /var/log/fail2ban.log\n# Une seule cible de journal peut être spécifiée.\nlogtarget = SYSLOG","socket = /var/run/fail2ban/fail2ban.sock\npidfile = /var/run/fail2ban/fail2ban.pid","/etc/fail2ban/jail.conf (souvent copié dans jail.local et édité pour les directives locales)","[DEFAULT]","ignoreip = 127.0.0.1/8\nbantime = 3600\nfindtime = 600\nmaxretry = 3\nbackend = auto\nusedns = non","[ssh-iptables]\nenabled = true\nfiltre = sshd\naction = iptables[name=SSH, port=ssh, protocol=tcp]\n           sendmail-whois[name=SSH, dest=root, sender=user@megacorp.com]\nlogpath = / var / log / secure\nmaxretry = 3","Remarque: si votre serveur est attaqué, fail2ban peut livrer beaucoup de courrier électronique. Vous voudrez peut-être enlever le sendmail-whois déclaration.\n    [DEFAULT]    directives:","Directif\nLa description","ignorer\nLes adresses IP à ne jamais interdire, comme votre système de passerelle. Plusieurs IP sont séparées par un espace. Ceci est votre liste blanche. Valeur par défaut 127.0.0.1 (localhost)","trouver le temps\npériode au cours de laquelle l&#39;échec se produit. Par exemple, 600 fait référence au nombre maximal d&#39;échecs survenant pendant cette période de recherche sera banni. 600 secondes par défaut","maxretry\nspécifier le nombre d&#39;échecs avant qu&#39;une adresse IP ne soit bannie. Par défaut 3","bantime\nnombre de secondes qu&#39;une adresse IP est bannie","activée\ntrue = surveiller le processus spécifié. false pour aucune surveillance. La valeur par défaut n&#39;est vraie que pour sshd","Redémarrez après avoir modifié la configuration: service sudo fail2ban redémarrer","Configurez init pour démarrer fail2ban au démarrage: sudo chkconfig --level 345 fail2ban on","Voir aussi le fichier journal: / var / log / messages","Vérifiez le blocage des pirates informatiques:\nAffichez les règles de pare-feu générées par les connexions ayant échoué:","[host]# iptables -L\nChaîne INPUT (politique ACCEPT)\ncible cible source opt opt\nfail2ban-SSH tcp - n&#39;importe où n&#39;importe où tcp dpt: ssh","Chaîne À SUIVRE (politique ACCEPTER)\ncible cible source opt opt","Chaîne OUTPUT (politique ACCEPT)\ncible cible source opt opt","Chain fail2ban-SSH (1 références)\ncible cible source opt opt\nREJETTEZ tous - 122.189.194.238 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJET tout - 183.94.11.208 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJETER tout - 58.218.204.132 n&#39;importe où rejetez-avec icmp-port-inaccessible\nRETOURNEZ tout - n&#39;importe où","Vérifier le statut fail2ban:\nAfficher le statut de sshd fail2ban:","[host]# fail2ban-client status\nStatut\n| - Nombre de prison: 1\n`- Liste de prison: ssh-iptables","[host]# fail2ban-client status ssh-iptables\nStatut de la prison: ssh-iptables\n| - filtre\n| | - Liste de fichiers: / var / log / secure\n| | - Échec actuel: 0\n| `- Total échoué: 102\n`- action\n   | - Actuellement banni: 3\n   | `- Liste IP: 122.189.194.238 183.94.11.208 58.218.204.132\n   `- Total interdit: 26","Liens:\nrssh: shell restreint à utiliser avec OpenSSH sftp","FTP utilise un accès en texte clair à votre serveur. Cela convient si tous les systèmes du centre de données sont sécurisés et que personne ne peut renifler le réseau.\nLes configurations de routeur et de commutateur rendent pratiquement impossible le reniflage de la plupart des réseaux de nos jours, mais des problèmes de sécurité au niveau du centre de données sur un autre serveur peuvent entraîner des problèmes pour vos serveurs si vous autorisez les mots de passe non chiffrés utilisés par FTP.","VsFTPd permet également de limiter la vue du système de fichiers à ses propres répertoires.\nC&#39;est bon. OpenSSH &quot;sftp&quot; ne fournit pas cette fonctionnalité (jusqu&#39;à la version 4.9. RHEL / CentOS 5 utilisait OpenSSH 4.3).\nLe transfert de fichier &quot;sftp&quot; crypte les mots de passe (bien) mais nécessite également un accès shell (bash, csh, &#8230;) pour le compte permettant un accès complet au système de fichiers (mauvais).\nle rssh shell peut être utilisé avec sftp, scp, cvs, rsync, et rédiger et peuvent chrooter les utilisateurs vers leurs propres répertoires et limiter la fonction à un accès sftp uniquement (refuser l&#39;accès au shell complet).","Pour les systèmes plus récents (RHEL6 / CentOS6 / Fedora 11) avec OpenSSH 4.9+, voir la configuration sftp chrootée préférée pour OpenSSH 4.9+.","La solution est d&#39;utiliser rssh en tant que shell avec OpenSSH &quot;sftp&quot;:\nInstallation: rpm -ivh rssh-2.3.2-1.2.el5.rf.x86_64.rpm\nCela installe:","/ usr / bin / rssh","/etc/rssh.conf","aussi programme de soutien / usr / libexec / rssh_chroot_helper et pages de manuel","Vérifiez la configuration installée: rssh -v\nConfiguration:","Configuration OpenSSH: / etc / ssh / sshd_config","...","PermitUserEnvironment no","...","Sous-système sftp / usr / libexec / openssh / sftp-server","...\n    \nNote de sécurité: Soyez également conscient du réglage AllowTcpForwarding qui contrôle la redirection de port.","Ajouter shell à la liste des shell utilisables: / etc / shells","/ bin / sh\n/ bin / bash\n/ sbin / nologin\n/ bin / tcsh\n/ bin / csh\n/ bin / ksh\n/ bin / zsh\n/ opt / bin / ftponly\n/ usr / bin / rssh\n    \nUbuntu: Vous pouvez utiliser la commande: add-shell / usr / bin / rssh","Changer le shell de l&#39;utilisateur en rssh (choisissez une méthode)","Autoriser l&#39;exécution à: chmod u / s / usr / libexec / rssh_chroot_helper\n    Cela empêche l’erreur suivante dans / var / log / messages","20 déc. 00:23:44 nodex rssh_chroot_helper[27450]: chroot () a échoué, 2: opération non autorisée","Définir l&#39;accès pour rssh: /etc/rssh.conf","logfacility = LOG_USER\npermetftp\numask = 022\n#chrootpath = / users / chroot","utilisateur = &quot;utilisateur1: 022: 00010: / home /utilisateur1&quot;\n    \n    Global security allowable options include: allowscp, allowcvs, allowrdist, allowrsync\n    Specify global chroot or omit for none.\n    Specific user security:","User login id\n    \nFirst set of three number represent the umask\n    \nSecond set of five number represent the bitmask to allow","1\n1\n1\n1\n1","rsync\nrdist\ncvs\nsftp\nscp","Specify the global chrooted directory for all using rssh. If omitted, then not chrooted. Can be overwritten by user configuration.","Note: User configuration overrides the shared chroot settings. Omitted user settings do not default to shared chroot settings.","Configuring the chrooted directory:\n        This is true for a global user chroot or individual chroot.\n        In this example we will show a user chrooted to their own home directory /home/user1. When chrooted, the user does not have access to the rest of the filesystem and thus is blind to all of its executables and libraries.\n        It will therefore be necessary to copy local executables and libraries for their local use.","La description\nUser directory\nSystem equivalent","System devices\n/home/user1/dev\n/dev","Configuration files\n/home/user1/etc\n/etc/etc/ld.so.cache /etc/ld.so.cache.d/*/etc/ld.so.conf - dynamic linker configuration/etc/nsswitch.conf/etc/passwd/etc/group/etc/hosts/etc/resolv.conf","Shared libraries (32 and 64 bit)\n/home/user1/lib/home/user1/lib64\n/lib/lib64","Executables and libraries\n/home/user1/usr\n/usr/usr/libexec/openssh/sftp-server/usr/libexec/rssh_chroot_helper","Executables\n/home/user1/bin\n/bin","Use script to add chroot required files: /opt/bin/userchroot","#!/bin/bash\n# First and only argument ($1) is user id\nsi [ -d /home/$1 ];\npuis\n   USERDIR=/home/$1\nautre\n   echo &quot;Error: Directory /home/$1 does not exist&quot;\n   sortie\nFi","mkdir $USERDIR/etc\nmkdir $USERDIR/lib\nmkdir -p $USERDIR/usr/libexec/openssh\nmkdir -p $USERDIR/var/log\nmkdir $USERDIR/dev\nmknod -m 666 $USERDIR/dev/null c 1 3","cp -p /etc/ld.so.cache $USERDIR/etc\n# If directory exists\nsi [ -d /etc/ld.so.cache.d ];\npuis\n   cp -avRp /etc/ld.so.cache.d $USERDIR/etc\nFi\ngrep $1 /etc/passwd  &gt; $USERDIR/etc/passwd\ncp -p  /etc/ld.so.conf    $USERDIR/etc\ncp -p  /etc/nsswitch.conf $USERDIR/etc\ncp -p  /etc/group         $USERDIR/etc\ncp -p  /etc/hosts         $USERDIR/etc\ncp -p  /etc/resolv.conf   $USERDIR/etc\ncp -ap /usr/libexec/openssh/sftp-server $USERDIR/usr/libexec/openssh/sftp-server\ncp -ap /usr/libexec/rssh_chroot_helper $USERDIR/usr/libexec/rssh_chroot_helper","# Authentication libraries required for login (32 bit and 64 bit systems)\nsi [ -d /lib64 ];\npuis\n   mkdir $USERDIR/lib64\n   cp -ap /lib64/libnss_files.so.? $USERDIR/lib64\n   cp -ap /lib64/libnss_files-*.so $USERDIR/lib64\nautre\n   cp -p /lib/libnss_files.so.? $USERDIR/lib\n   cp -p /lib/libnss_files-*.so $USERDIR/lib\nFi","FILES=`ldd /usr/libexec/openssh/sftp-server | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé\n FILES=`ldd /usr/libexec/rssh_chroot_helper | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé","Remarque:","Blocking FTP: Setting up rssh does not turn off or block FTP access to your system. You must still turn off vsftp: /etc/init.d/vsftpd stop. There is little point to setting up secure chrooted sftp access with rssh and also running a FTP service.","Debugging:","One can pull in the full root path by issuing an internal mount:","mount --bind /dev /home/user1/dev\n    \nmount --bind /dev /home/user1/lib\n    \nmount --bind /dev /home/user1/lib64\n    \nmount --bind /dev /home/user1/usr","This technique can be used to narrow down the error to find which directory has the missing files. It should not be used as a final solution.\n    Unmount when done: umount /home/user1/dev","If authenticating to ldap, nis, etc, pull in the appropriate libraries.\n    You can test with all: cp -p /lib/libnss_* /home/user1/lib\n    This can be performed for /lib64 ainsi que.","Checklog files for errors: /var/log/messages","Man pages:","Using gFTP as a Linux sftp client:","Start program through menu or command line: gftp&amp;","Select &quot;FTP&quot; from toolbar","Select &quot;Options&quot;","Select &quot;SSH&quot; tab\n    \nSelect &quot;Apply&quot; amd &quot;Ok&quot;","On the upper right hand side of the gftp window, select &quot;SSH&quot; from the pull-down menu.","Using FileZilla as a Linux sftp client:","Select &quot;File&quot; + &quot;Site Manager&quot;","Select &quot;New Site&quot; (bottom left)","Enter &quot;Host:&quot;","Choose &quot;Servertype:&quot; &quot;SFTP using SSH2&quot;","Select &quot;Logontype:&quot; &quot;Normal&quot;","Enter &quot;User:&quot; and click on &quot;Connect&quot;.","Links:","Multi-platform GUI client FileZilla","MS/Windows client WinSCP (supports sftp)","SentryTools: PortSentry","This tool will monitor the network probes and attacks against your server.\nIt can be configured to log and counter these probes and attacks.\nPortSentry can modify your /etc/hosts.deny (PAM module) file and\nissue IP firewall commands automatically to block hackers.","PortSentry can be loaded as an RPM but this tutorial covers compiling\nPortSentry from source to configure a more preferable system logging.","Note: Version 1.2 of portsentry can issue iptables, ipchains or route commands\nto thwart attacks.  Iptables/Ipchains is a Linux firewall system built into the Linux kernel.\nLinux kernel 2.6/2.4 uses iptables, kernel 2.2 (old) uses ipchains.\nReferences to ipfwadm are for even older Linux kernels.\nRoute commands can be used by any Unix system including those non-Linux systems which do not support Iptables/Ipchains.","Steps to install and configure portsentry:","Download and unzip source code\n  \nEdit include file and compile\n  \nStart PortSentry\n  \nRead logs","Download and unzip source code:","Edit include file and compile:\n     cd portsentry_beta/\n     Read file README.install. It details the following:","Edit file: portsentry_config.h","Set file paths and configure separate log file for Portsentry:\n         Set options:","CONFIG_FILE &#8211; PortSentry run-time configuration file.\n         \nWRAPPER_HOSTS_DENY &#8211; The path and name of TCP wrapper hosts.deny file.","#define CONFIG_FILE &quot;/opt/portsentry/portsentry.conf&quot;\n#define WRAPPER_HOSTS_DENY &quot;/etc/hosts.deny&quot;\n#define SYSLOG_FACILITY LOG_DAEMON    - Default. Change to LOG_LOCAL6","#define SYSLOG_LEVEL    LOG_NOTICE\n         \n         (Note: I use /opt/portsentry/ because I like to locate &quot;optional&quot;\n          files/software there.\n          It allows for an easy backup by separating it from the OS.\n          If you prefer, you can use /etc/portsentry/ pour\n          configurations files and follow the Linux/Unix file system logic)\n         \n         The above default, &quot;LOG_DAEMON&quot;, will log messages to the /var/log/messages file.\n         \n    To log to a separate file dedicated to PortSentry logging:\n(This will eliminate logging clutter in the main system logging file)","Add logging directives to syslogd configuration file: /etc/syslog.conf\n             Change the following line by adding an extra log facility for portsentry messages which are\n             not going to be logged to the regular syslog output\n             fichier /var/log/messages.\n             This lists what messages to filter out from /var/log/messages.\n            \n              *.info;mail.none;news.none;authpriv.none;cron.none;local6.none\t/var/log/messages \n             Add the following line to assign a portsentry log facility:\n             \n              local6.*                   /var/log/portsentry.log \n             Note: Use tab not spaces in the syslog configuration file.\n             \n             Restart syslogd: /etc/init.d/syslog restart","Ensemble portsentry_config.h entry to new log facility:\n              Change from default setting:","#define SYSLOG_FACILITY LOG_DAEMON\n              \n              To:","#define SYSLOG_FACILITY LOG_LOCAL6","FYI: Options for the  SYSLOG_FACILITY are defined in /usr/include/sys/syslog.h\n         They include:","SYSLOG_FACILITY\nFacility Name  \n    La description","LOG_LOCAL0\nlocal0 \n    reserved for local use","LOG_LOCAL1\nlocal1 \n    reserved for local use","LOG_LOCAL2\nlocal2 \n    reserved for local use","LOG_LOCAL3\nlocal3 \n    reserved for local use","LOG_LOCAL4\nlocal4 \n    reserved for local use","LOG_LOCAL5\nlocal5 \n    reserved for local use","LOG_LOCAL6\nlocal6 \n    reserved for local use","LOG_LOCAL7\nlocal7 \n    reserved for local use","LOG_USER\n        utilisateur   \n    random user-level messages","LOG_MAIL\n        courrier   \n    mail system","LOG_DAEMON\ndémon \n    system daemons","LOG_SYSLOG\nsyslog \n    messages generated internally by syslogd","LOG_LPR\n            lpr    \n    line printer subsystem","LOG_NEWS\n        nouvelles   \n    network news subsystem","LOG_UUCP\n        uucp   \n    UUCP subsystem","LOG_CRON\n        cron   \n    clock daemon","LOG_AUTHPRIV\nauthpriv\n    security/authorization messages (private)","LOG_FTP\n            ftp    \n    ftp daemon","Options for the SYSLOG_LEVEL include:","SYSLOG_LEVEL \nPriorité     \n    La description","LOG_EMERG   \n                0 \nsystem is unusable","LOG_ALERT   \n                1 \naction must be taken immediately","LOG_CRIT    \n                2 \ncritical conditions","LOG_ERR     \n                3 \nerror conditions","LOG_WARNING \n                4 \nwarning conditions","LOG_NOTICE  \n                5 \nnormal but significant condition","LOG_INFO    \n                6 \ninformatif","LOG_DEBUG   \n                7 \ndebug-level messages","Edit file: portsentry.conf    to set paths for configuration files and ports to monitor.","TCP_PORTS=&quot;1,11,15,20,21,23,25,69,79, ... &quot;\nUDP_PORTS=&quot;1,7,9,69,161,162,513,635,  ... &quot;","...\n...","IGNORE_FILE=&quot;/opt/portsentry/portsentry.ignore&quot;\nHISTORY_FILE=&quot;/opt/portsentry/portsentry.history&quot;\nBLOCKED_FILE=&quot;/opt/portsentry/portsentry.blocked&quot;\n#KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;   - Generic Unix KILL_ROUTE\n                                                              I prefer iptables/ipchains options below\n         \nUn-comment and modify if necessary the appropriate statements. le\nTCP_PORTS=, UDP_PORTS= lists are ignored for stealth scan detection\nmodes. Add common but unused services. i.e. add port 25 if the system is not accepting email as port 25 is included in most scans.\n        I added UDP port 68 (BOOTP) and TCP 21 (ftp), 22 (ssh), 25 (smtp\nmail), 53 (dns bind), 80 (http web server), 119 (news) to the\nADVANCED_EXCLUDE_UDP and ADVANCED_EXCLUDE_TCP statements respectively.","ADVANCED_EXCLUDE_TCP=&quot;21,22,25,53,80,110,113,119&quot; - server","ADVANCED_EXCLUDE_UDP=&quot;21,22,53,110,520,138,137,68,67&quot;\nOU\nADVANCED_EXCLUDE_TCP=&quot;113,139&quot;                    - workstation","ADVANCED_EXCLUDE_UDP=&quot;520,138,137,68,67&quot;\n         \n         PAM options:","KILL_HOSTS_DENY=&quot;ALL: $TARGET$&quot;","For more on PAM see YoLinux network Admin Tutorial","Choose one option: (Options: network &quot;route&quot; or firewall command &quot;iptables/ipchains&quot;)","For those using iptables (Linux Kernel 2.6/2.4+):\n              KILL_ROUTE=&quot;/sbin/iptables -I INPUT -s $TARGET$ -j DROP&quot;\n              (Note: The default used in portsentry.conf utilise le\n               incorrect path for Red Hat.\n               Changement /usr/local/bin/iptables\n               à /sbin/iptables)\n             \nFor Linux 2.2.x kernels (version 2.102+) using ipchains: (Best option)\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY -l&quot; \n             OU\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY&quot; \n             Remarque: The second option is without the &quot;-l&quot; or logging option so ipchains won&#39;t keep logging the portscan in /var/log/messages\n         \nSimple method to drop network return routes if iptables or ipchains are not compiled into your kernel:\n             KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;\n             You can check the addresses dropped with the command:  netstat -rn They will be routed to interface &quot;-&quot;.","Red Hat: Portsentry uses iptables (and it must be running) and not the older ipchains.\nTo see if iptables is invoked during system boot, use the command: chkconfig --list | grep iptables.\nYou can NOT use portsentry to issue iptables rules if your kernel is configured to use ipchain rules.\n         More info on iptables and ipchains support/configuration in Red Hat.","Edit file: portsentry.ignore            (contains IP addresses to ignore. )","127.0.0.1\n0.0.0.0\nYour IP address\n         \n         The at Home network routinely scans for news servers on port 119 from\n         a server named authorized-scan1.security.home.net.\n         Adding the IP address of this server (24.0.0.203)\n         greatly reduces the logging. I also added their BOOTP server.\n         (24.9.139.130)","I manually issued the iptables (kernel 2.6/2.4)\n         commands on my workstation\n         to drop the hosts and deny their scans.\n         At Home users may add the commands to the file\n         /etc/rc.d/rc.local","/sbin/iptables -I INPUT -s 24.0.0.203 -j DROP\n/sbin/iptables -I INPUT -s 24.9.139.130 -j DROP","Edit file: Makefile","INSTALLDIR = /opt\n        \n         And remove the line under &quot;uninstall&quot;: (dangerous line!!)","#               /bin/rmdir $(INSTALLDIR)\n        \n         And remove the line under &quot;install&quot;: (troublesome line!!)\n#               chmod 700 $(INSTALLDIR)\n        To:\n#               chmod 700 $(INSTALLDIR)/$(CHILDDIR)","Compile: make linux","Fix the following compile errors in portsentry.c","Changement  printf (&quot;Copyright 1997-2003 Craig H. Rowland &lt;craigrowland at users dot\n            sourceforget dot net&gt;n&quot;);\n            to one line:  printf (&quot;Copyright 1997-2003 Craig H. Rowlandn&quot;);\n        \nFix warning: warning: passing argument 3 of â€˜acceptâ€™ from incompatible pointer type\n            Separate and change declaration of &quot;length&quot; to: unsigned int length;","Install (as root): make install","Run PortSentry for advanced UDP/TCP stealth scan detection:","portsentry -atcp\n    \nportsentry -audp","OU use init scripts below in next section.","Check logfile for hacker attacks. Voir: /var/log/messages\nou  /var/log/portsentry.log if you are logging to a dedicated file.\n    Also check /etc/hosts.deny to see a list of IP addresses that\n    PortSentry has deemed to be attackers.\n    Check the &quot;HISTORY_FILE&quot; /opt/portsentry/portsentry.history","Note: Is is possible to have all logging sent to a logging daemon on a single\nserver. This will allow the administrator to check the logs on only one server\nrather than individually on many.","Note on Red Hat RPMs:\nRPM layout:","/usr/sbin/portsentry &#8211; (chmod 700) executable\n  \n/etc/portsentry/ &#8211; (chmod 700) Directory used for configuration files.\n  \n/etc/portsentry/portsentry.conf (chmod 600)\n  \n/etc/portsentry/portsentry.ignore (chmod 600)\n  \n/var/portsentry/portsentry.history\n  \n/var/portsentry/portsentry.blocked","Instead of using a firewall command (ipchains/iptables), a false route is used: /sbin/route add -host $TARGET$ gw 127.0.0.1.\nMy init script calls the portsentry executable twice with the appropriate command line arguments to monitor tcp and udp ports.\nThe Red Hat RPM init script uses the file /etc/portsentry/portsentry.modes\nand a for loop in the\ninit script to call portsentry the appropriate number of times.\nTheir init script also recreates the portsentry.ignore file each time\nportsentry is started by including the IP addresses found with ip addr show ou ifconfig\nand the addresses 0.0.0.0 and localhost.\nPersistent addresses must be placed above a line stating:\n    Do NOT edit below this otherwise it is not included in the creation\nof the new file.\n    The Red Hat RPM portsentry version logs everything to /var/log/messages. My configuration avoids log clutter by logging to a separate file.","Notes on DOS (Denial of Service) possibility:\nIf portsentry is configured to shut down an\nattack with firewall rules, an attacker may use this feature to slow down\nyour machine over time by creating a huge set of firewall rules.\nIt would require the hacker to use (or spoof) a new IP address each time.\nIt is probably a good idea to monitor or even clear the firewall rules from\ntime to time.","iptables:","List firewall rules: iptables -L\n    \nClear firewall rules: iptables -F","ipchains:","List firewall rules: ipchains -L\n    \nClear firewall rules: ipchains -F","Clean-up script: /etc/cron.monthly/reset-chainrules\n(-rwx------   1 root     root)\nThis script is run automatically once a week by cron. (The presence of this\nscript in this directory for the Red Hat configuration makes it so)","#!/bin/bash\n# Purge and re-assign chain rules \nipchains -F\nipchains -A input -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 2049 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 6000:6009 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 515 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 515 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 111 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 111 -j REJECT\nipchains -A input -j REJECT -p all -s localhost  -i eth0 -l","Regarde aussi:","Other tools to detect portscans and network based hacker attacks:","scanlogd &#8211; Attack detection.\n  \nInterSect Alliance &#8211; Intrusion analysis. Identifies malicious or unauthorized access attempts.\n  \nsnort &#8211; Instead of monitoring\na single server with portsentry, snort monitors the network, performing\nreal-time traffic analysis and packet logging on IP networks for the\ndetection of an attack or probe.\nAlso see: YoLinux IDS and Snort links","Using an init script to start and stop the portsentry program.\nInit configuration: /etc/rc.d/init.d/portsentry\n    The init script needs to be executable: chmod a+x /etc/rc.d/init.d/portsentry\n    After adding the following script, enter it into the init process with\n    the command: chkconfig --add portsentry ou\n    chkconfig --level 345 portsentry on\n    See YoLinux Init Tutorial for more information.","#!/bin/bash\n#\n# Startup script for PortSentry\n#\n# chkconfig: 345 85 15\n# description:  PortSentry monitors TCP and UDP ports for network attacks\n#\n# processname: portsentry\n# pidfile: /var/run/portsentry.pid\n# config: /opt/portsentry/portsentry.conf\n# config: /opt/portsentry/portsentry.ignore \n# config: /opt/portsentry/portsentry.history\n# config: /opt/portsentry/portsentry.blocked","# Source function library.\n. /etc/rc.d/init.d/functions","# Source networking configuration.\n. /etc/sysconfig/network","# Check that networking is up.\n[ $NETWORKING = \"no\" ] &amp;&amp; exit 0","# See how we were called.\ncase &quot;$1&quot; in\n  start)\n\techo -n &quot;Starting portsentry: &quot;\n\tdaemon /opt/portsentry/portsentry -atcp \n\t/opt/portsentry/portsentry -audp \nécho\n\ttouch /var/lock/subsys/portsentry\n\t;;\n  stop)\n\techo -n &quot;Shutting down portsentry: &quot;\n\tkillproc portsentry\nécho\n\trm -f /var/lock/subsys/portsentry\n\trm -f /var/run/portsentry.pid\n\t;;\n  status)\n\tstatus portsentry\n\t;;\n  restart)\n\t$0 stop\n\t$0 start\n\t;;\n  reload)\n\techo -n &quot;Reloading portsentry: &quot;\n\tkillproc portsentry -HUP\nécho\n\t;;\n  *)\n\techo &quot;Usage: $0 stop&quot;\nsortie 1\nesac","exit 0","Logrotate Configuration:\nCreate the following file to have your logs rotate.","Fichier: /etc/logrotate.d/portsentry","/var/log/portsentry.log  vrai\n    endscript","Also see the YoLinux Sys Admin tutorial covering logrotate.","Tests:","Portscan your workstation &#8211; Use your web browser to go to this site. Select &quot;Probe my ports&quot; and it will\nscan you. You can then look at the file /opt/portsentry/portsentry.blocked.atcp\nto see that portsentry dropped the scanning site:\n Host: shieldsup.grc.com/207.71.92.221 Port: 23 TCP Blocked\nThe file /var/log/portsentry.log will show the action taken:","portsentry[589]: attackalert: SYN/Normal scan from host: shieldsup.grc.com/207.71.92.221 to TCP port: 23\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via wrappers with string: &quot;ALL: 207.71.92.221&quot;\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via dropped route using command: \n   &quot;/sbin/ipchains -I input -s 207.71.92.221 -j DENY -l&quot;","nmap: portscanner &#8211; This is\nthe hacker tool responsible for many of the portscans you may be receiving.","Command arguments:","Argument\nLa description","-sO\nIP scan. Find open ports.","-sT\nTCP scan. Full connection made.","-sS\nSYN scan (half open scan). This scan is typically not logged on receiving system.","-sP\nPing ICMP scan.","-sU\nUDP scan.","-P0\nDon&#39;t ping before scan.","-PT\nUse ping to determine which hosts are available.","-F\nFast scan. Scan for ports listed in configuration.","-T\nSet timing of scan to use values to avoid detection.","-O\nDetermines operating system.","-p 1000-1999,5000-5999\nScan port ranges specified.","Also see: nmap man page for a full listing of nmap command line arguments.\n        \nExemples:\n    \n            nmap -sT -F IP-address         Scan\n   \n   \n   \n   nmap -sS -F IP-address         SYN Scan\n   \n   \n   \n   nmap -sU -F IP-address         Scan UPD ports\n   \n   \n   \n   nmap -sF -F IP-address         FIN Scan\n   \n   \n   \n   nmap -O  -F IP-address         Determine OS\n   \n   \n   \n   nmap -p22 -F -O  IP-address        nmap -p 1-30,40-65535  IP-Address  Scan given port ranges\n        \nAdd the option -v (verbose) or -vv (super verbose) for more info.\n        The ports will be determined to be open, filtered or firewalled.","Sample output from command: nmap -sS -F -O IP-Address\n    \nStarting nmap V. 2.54BETA7 ( www.insecure.org/nmap/ ).....(The 1067 ports scanned but not shown below are in state: closed)Port       State       Service21/tcp     open        ftp                     22/tcp     open        ssh                     25/tcp     open        smtp                    53/tcp     open        domain                  111/tcp    open        sunrpc          - Shut down the portmap (RPC) daemon:    /etc/rc.d/init.d/portmap stop\n137/tcp    filtered    netbios-ns      - Turn off netbios services:      /etc/rc.d/init.d/smb stop\n138/tcp    filtered    netbios-dgm             \n139/tcp    filtered    netbios-ssn","TCP Sequence Prediction: Class=random positive increments\n                         Difficulty=2727445 (Good luck!)\nRemote operating system guess: Linux 2.1.122 - 2.2.16","Nmap run completed -- 1 IP address (1 host up) scanned in 36 seconds","nmap/nmapfe: nmapfe = nmap front end &#8211; GUI front end to nmap.\n    It&#39;s an amazingly easy and useful tool which will help\n    you make discoveries about your servers before the hackers do.\n    \n    Linux packages:","Red Hat RPMs: nmap-XXX.x86_64.rpm, nmap-frontend-XXX.noarch.rpm (GTK+ GUI)\n    \nUbuntu: nmap, zenmap","Links:","Tripwire: (security monitoring)","Tripwire monitors your file system for changes. Tripwire is used to create an\ninitial database of information on all the system files then runs periodically\n(cron) to compare the system to the database.","Use the command tripwire --version ou\nrpm -q tripwire to determine the version.","Red Hat includes Tripwire as an optional package during install.\nThe Ubuntu/Debian install is as easy as apt-get install tripwire.\nUpon installation it will proceed to scan your entire filesystem to create\na default database of what your system looks like. (files and sizes etc)\nIt took about ten minutes to run on my server!","Tripwire configuration files:","Tripwire 2.3.0:","/etc/tripwire/twcfg.txt\n    \n/etc/tripwire/twpol.txt","These files are first edited and then processed by the script\n    /etc/tripwire/twinstall.sh which configures Tripwire after the\n    installation of the Tripwire RPM package.","Edit and change file: /etc/tripwire/twcfg.txt\n    \n    Change:\n    LOOSEDIRECTORYCHECKING =false\n    à\n    LOOSEDIRECTORYCHECKING=TRUE","This was recommended in the comments of the file twpol.txt\n    \n    Edit and change file: /etc/tripwire/twpol.txt\n    \n    Change:\n    severity = $(SIG_XXX)\n    à\n    severity = $(SIG_XXX),emailto = root@localhost\n    ou\n    severity = $(SIG_XXX),emailto = root@localhost;admin@isp.com\noù XXX is the severity level.\n    This will cause Tripwire to email a report of discrepancies for the\n    rule edited. Set the email address to one appropriate for you.\n    \n    I also added:","&quot;User binaries&quot; rule:  directory /opt/bin\n        \n&quot;Libraries&quot; rule:  directory /opt/lib","I removed/commented out:","the rule &quot;System boot changes&quot; as it reports changes due to system boot.\n        \n    Rule: &quot;Root config files&quot;: Many of the non-existent\nfiles listed under /root were commented out to reduce the number of\nerrors reported. \n    Rule &quot;File System and Disk Administraton Programs&quot;: Many\nof the non-existent binaries listed under /sbin were commented out to\nreduce the number of errors reported.","After configuration files have been edited run the script: /etc/tripwire/twinstall.sh\n    The script will ask for a &quot;passphrase&quot; for the site and local system.\n    This is a similar concept to a password &#8211; remember it!\n    \n    If at any point you want to\n    make configuration/policy changes, edit these files and re-run the\n    configuration script. The script will generate the true configuration\n    files used by Tripwire:","/etc/tripwire/tw.cfg\n        (View with command: twadmin --print-cfgfile)\n    \n/etc/tripwire/tw.pol\n        (View with command: twadmin --print-polfile)\n    \n/etc/tripwire/site.key\n    \n/etc/tripwire/ServerName-a-local.key","These files are binary and not human readable.","Tripwire 1.2-3 (Red Hat 6.2 Powertools): /etc/tw.config","Tripwire initialization:","If at any time you change the configuration file to monitor your system\ndifferently or install an upgrade (changes a whole lot of files which\nwill &quot;trip&quot; tripwire into reporting all changes) you may want to generate\na new database.","Tripwire 2.3.0-58: /usr/sbin/tripwire --init\n    You will be prompted for your &quot;local passphrase&quot;.\n    This will generate a tripwire database file: /var/lib/tripwire/ServerName-a.twd","Tripwire 1.2-3: /usr/sbin/tripwire -initialize\nThis will generate a tripwire database file: ./databases/tw.db_ServerName\n        If you are in root&#39;s home directory, this will create the file  /root/databases/tw.db_ServerName\n        At this point copy it to a usable location:","cp -p /root/databases/tw.db_ServerName  /var/spool/tripwire/tw.db_ServerName\n        \nDon&#39;t change /etc/tw.config\n without first running tripwire -initialize\notherwise it will show differences due to settings in tw.config file rather\nthan true differences.","Cron and tripwire:","Cron runs tripwire:","Tripwire 2.3.0-58:\n    Fichier: /etc/cron.daily/tripwire-check","#!/bin/sh\nHOST_NAME=`uname -n`\nsi [ ! -e /var/lib/tripwire/$HOST_NAME.twd ] ; puis\n        echo &quot;****    Error: Tripwire database for $HOST_NAME not found.    ****&quot;\n        echo &quot;**** Run &quot;/etc/tripwire/twinstall.sh&quot; and/or &quot;tripwire --init&quot;. ****&quot;\nautre\n        test -f /etc/tripwire/tw.cfg &amp;&amp;  /usr/sbin/tripwire --check\nFi","You may move this cron script to the directory /etc/cron.weekly/\n    to reduce reporting from a daily to a weekly event.\n    Tripwire reports will be written to: /var/lib/tripwire/report/HostName-Date.twr","Tripwire 1.2-3:\n    Fichier: /etc/cron.daily/tripwire.verify\nscript which runs the command: /usr/sbin/tripwire -loosedir -q\n        Note: You may want to move the script to /etc/cron.weekly/tripwire.verify\n to reduce email reporting to root.","Read tripwire report:","Tripwire 2.3.0-58: twprint --print-report -r /var/lib/tripwire/report/report-file.twr","Interactive mode:","Tripwire 1.2-3:\n      Update tripwire database &#8211; run:\n        tripwire -interactive\n        This will allow you to respond Y/N to files if they should be permanently\nupdated in the tripwire database. This will still run tripwire against the\nwhole file system.\n I ran it from /root and it updated\n        /root/databases/tw.db_ServerName \nYou must then cp -p to /var/spool/tripwire/\nto update the tripwire database.","Default configuration file:","Tripwire 2.3.0-58: /etc/twcfg.txt\nROOT                   =/usr/sbinPOLFILE                =/etc/tripwire/tw.polDBFILE                 =/var/lib/tripwire/$(HOSTNAME).twdREPORTFILE             =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twrSITEKEYFILE            =/etc/tripwire/site.keyLOCALKEYFILE           =/etc/tripwire/$(HOSTNAME)-local.keyEDITOR                 =/bin/viLATEPROMPTING          =falseLOOSEDIRECTORYCHECKING =falseMAILNOVIOLATIONS       =trueEMAILREPORTLEVEL       =3REPORTLEVEL            =3MAILMETHOD             =SENDMAILSYSLOGREPORTING        =falseMAILPROGRAM            =/usr/sbin/sendmail -oi -t","Tripwire 1.2-3: /etc/tw.config\n# Log file@@define LOGFILEM E+pugn# Config file@@define CONFM E+pinugc# Binary@@define BINM E+pnugsci12# Directory@@define DIRM E+pnug# Data file (same as BIN_M currently)@@define DATAM E+pnugsci12# Device files@@define DEVM E+pnugsc# exclude all of /proc=/proc E#=/dev @@DIRM/dev @@DEVM#=/etc @@DIRM/etc @@CONFM# Binary directories#=/usr/sbin @@DIRM/usr/sbin @@BINM#=/usr/bin @@DIRM/usr/bin @@BINM#=/sbin @@DIRM/sbin @@BINM#=/bin @@DIRM/bin @@BINM#=/lib @@DIRM/lib @@BINM#=/usr/lib @@DIRM/usr/lib @@BINM=/usr/src E=/tmp @@DIRM\nAjouter:\n    \n/var/named @@CONFM                   - If you are running Bind DNS slave","/home/httpd/cgi-bin @@BINM\n        \nDelete/comment out:\n#/dev @@DEVM\nThis eliminated the reporting of too much junk due to a reboot of the system.","Man pages:","Tripwire 2.3.0-58:","tripwire &#8211; a file integrity checker for UNIX systems\n      \ntwintro &#8211; introduction to Tripwire software\n      \ntwadmin &#8211; Tripwire administrative and utility tool\n      \ntwprint &#8211; Tripwire database and report printer\n      \nsiggen &#8211; signature gathering routine for Tripwire\n      \ntwconfig &#8211; Tripwire configuration file reference\n      \ntwpolicy &#8211; Tripwire policy file description reference (For file /etc/tripwire/twpol.txt)\n      \ntwfiles &#8211; Overview of files used by Tripwire and file backup process","Regarde aussi:","CHKROOTKIT: Performing a trojan/worm/virus file scan.","Tripwire will monitor your filesystems for intrusion or addition of a file\nso you may determine what changes have occurred on your system in sensitive\nareas.  Chkrootkit will scan your system for known exploits,\nTrojan commands, and worms used to compromise a system.","Download chkrootkit from http://www.chkrootkit.org. It is a shell script which should be run as root as well as a\nsmall collection of C programs.","Installation:","avoir du sens  (Compile C programs)\n    \n./chkrootkit (Run shell script and call programs.)","Usage:","./chkrootkit\n        OU\n./chkrootkit -h (help)","See the README file for more info.","Remarque:","This software is constantly being upgraded and updated to include\n    scans for new exploits.\n  \nIf running portsentry, chkrootkit may return a false error while performing the bindshell test.","NESSUS: Performing a network vulnerability scan/security assessment of your system.","Let me start by saying that this should only be performed on your own systems.\nIt is considered and attack to run this against the systems of others\nand legal action may be taken against you for performing such an audit.\nThis is not a scan like NMAP. NESSUS will search and locate vulnerabilities\non your system by actively trying to perform known exploits against the\nsystème.","Nessus is amazingly complete and effective. In fact it is awesome!!\nIt will identify services on your system and try to exploit them.\nIf a vulnerability is found it will make recommendations about upgrades,\nconfiguration changes and where to find patches. It will also explain\nany causes for concern in detail and explain why your system is vulnerable.\nAnd that&#39;s not all! It can output reports in various formats including HTML\nwith pie charts and bar charts!! The HTML reports will have hyperlinks to the\nsecurity reports, upgrades and patches. (I&#39;m impressed)\nIt can scan Unix, Linux and Windows systems for vulnerabilities.","Remarque:","Running &quot;Dangerous Plugins&quot; may cause a crash of the system being audited!!","The NESSUS software is available from http://Nessus.org.\nIf compiling source:","Edit file: nessus-core/include/config.h (Set USE_AF_UNIX to define socket type)","It is also available in RPM form: (See http://freshrpms.net)","nessus-client-&#8230;.rpm\n  \nnessus-common-&#8230;.rpm\n  \nnessus-plugins-&#8230;.rpm\n  \nnessus-server-&#8230;.rpm : Nessus plugins which are used to perform\nthe various checks. (Scripts in nasl scripting language) Note that the\nRPM installs an init script which starts nessusd during boot. Disable\navec chkconfig --del nessusd\n  \nnessus-devel-&#8230;.rpm : Nessus development libraries and headers.","Running NESSUS:","Configuration file: /etc/nessus/nessusd.conf","You may also consider a popular branch of Nessus, OpenVAS: Open Vulnerability Assessment System","Useful links and resources:","Livres:","&quot;Linux Firewalls&quot;\n    by Robert L. Ziegler, Carl Constaintine\n    ISBN #0735710996, New Riders 10/2001","This is the newer version. It includes updates on the Linux 2.4 kernel,\n    VPN&#39;s and SSH.","&quot;Linux Firewalls&quot;\n    Robert L. Ziegler\n    ISBN #0-7357-0900-9, New Riders 11/1999","Most complete Linux firewall/security book in publication.\n    Covers ipchains, bind and a complete review of possible firewall configurations.","&quot;Hack Proofing Linux : A Guide to Open Source Security&quot;\n    by James Stanger, Patrick T. Lane\n    ISBN #1928994342, Syngress","&quot;Real World Linux Security: Intrusion Prevention, Detection and Recovery&quot;\n    by Bob Toxen\n    ISBN #0130281875, Prentice Hall","&quot;Hacking Linux Exposed&quot;\n    by Brian Hatch, James B. Lee, George Kurtz\n    ISBN #0072225645, McGraw-Hill (2nd edition)","From the same authors of &quot;Hacking Exposed&quot;.","&quot;Maximum Linux Security: A Hacker&#39;s Guide to Protecting Your Linux Server and Workstation&quot;\n    by Anonymous and John Ray\n    ISBN #0672321343, Sams","Covers not only audit and protection methods but also investigates and\n    explains the attacks and how they work.","&quot;Network Intrusion Detection: An Analyst&#39;s Handbook&quot;\n    by Stephen Northcutt, Donald McLachlan, Judy Novak\n    ISBN #0735710082, New Riders Publishing","&quot;SSH, the Secure Shell : The Definitive Guide&quot;\n    by Daniel J. Barrett, Richard Silverman\n    ISBN #0596000111, O&#39;Reilly &amp; Associates","&quot;Nessus Network Auditing (Jay Beale&#39;s Open Source Security)&quot;\n    by Renaud Deraison, Noam Rathaus, HD Moore, Raven Alder, George Theall, Andy Johnston, Jimmy Alderson\n    ISBN #1931836086, Syngress","&quot;Computer Security Incident Handling Step by Step&quot;\n    by Stephen Northcutt\n    ISBN #0967299217","&quot;Security Assessment: Case Studies for Implementing the NSA IAM&quot;\n    by Russ Rogers, Greg Miles, Ed Fuller, Ted Dykstra\n    ISBN #1932266968, Syngress","&quot;Network Security Assessment&quot;\n    by Chris McNab\n    ISBN #059600611X, O&#39;Reilly","&quot;A Practical Guide to Security Assessment&quot;\n    by Sudhanshu Kairab\n    ISBN #0849317061, Auerbach Publications","&quot;Aggressive Network Self-defense&quot;\n    by NEIL R. WYLER\n    ISBN #1931836205, Syngress Publishing","Security Source Magazine\n Security Source Magazine&#39;s cover story is about keeping\nthe network secure, from the gateway to the desktop. Subscribe now and\ncontinue to learn about valuable security topics and strategies in each\nquarterly issue.","LibreSubscription","Info Security Magazine\n Business and management of information security. C&#39;est un\ninternational magazine, with an European focus. It is published in both\nprint and digital editions, the latter containing the full content of\nthe print publication, accessible via the web. Its experienced\neditorial team delivers stories that deal with the big picture issues\nof information security. Our sources and columnists are the expert\nsecurity researchers and practitioners who define, drive, and lead the\nfield. And our journalists are in demand by the IT trade and broadsheet\npress.","LibreSubscription","Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]"],"content_blocks":[{"id":"text-1","type":"text","heading":"","plain_text":"Étapes de sécurité de base / Vue d&#39;ensemble:","html":"<p>Étapes de sécurité de base / Vue d&#039;ensemble:</p>"},{"id":"text-2","type":"text","heading":"","plain_text":"Effectuez les étapes suivantes pour sécuriser votre site Web:","html":"<p>Effectuez les étapes suivantes pour sécuriser votre site Web:</p>"},{"id":"text-3","type":"text","heading":"","plain_text":"Voir les erratas de distribution et les correctifs de sécurité (voir la page d&#39;accueil de Yolinux pour la liste). [e.g. Red Hat Linux Errata]          Mettez à jour votre système le cas échéant.","html":"<p>Voir les erratas de distribution et les correctifs de sécurité (voir la page d&#039;accueil de Yolinux pour la liste). [e.g. Red Hat Linux Errata]          Mettez à jour votre système le cas échéant.</p>"},{"id":"text-4","type":"text","heading":"","plain_text":"Red Hat / CentOS:","html":"<p>Red Hat / CentOS:</p>"},{"id":"text-5","type":"text","heading":"","plain_text":"yum check-update\n                    (Imprimer la liste des paquets à mettre à jour.)\n                \nmiam mise à jour","html":"<p>yum check-update\n                    (Imprimer la liste des paquets à mettre à jour.)\n                \nmiam mise à jour</p>"},{"id":"text-6","type":"text","heading":"","plain_text":"Notez que cela peut être automatisé en utilisant le /etc/init.d/yum-updatesd service (RHEL / CentOS 5) ou créer un travail cron /etc/cron.daily/yum.cron","html":"<p>Notez que cela peut être automatisé en utilisant le /etc/init.d/yum-updatesd service (RHEL / CentOS 5) ou créer un travail cron /etc/cron.daily/yum.cron</p>"},{"id":"text-7","type":"text","heading":"","plain_text":"#! / bin / sh\n/ usr / bin / yum -R 120 -e 0 -d 0 -y mise à jour yum\n/ usr / bin / yum -R 10 -e 0 -d 0 -y mise à jour","html":"<p>#! / bin / sh\n/ usr / bin / yum -R 120 -e 0 -d 0 -y mise à jour yum\n/ usr / bin / yum -R 10 -e 0 -d 0 -y mise à jour</p>"},{"id":"text-8","type":"text","heading":"","plain_text":"Ubuntu / Debian:","html":"<p>Ubuntu / Debian:</p>"},{"id":"text-9","type":"text","heading":"","plain_text":"apt-get update\n                    (Mettez à jour la liste des packages vers la dernière version associée à cette version du système d&#39;exploitation.)\n                \napt-get upgrade","html":"<p>apt-get update\n                    (Mettez à jour la liste des packages vers la dernière version associée à cette version du système d&#039;exploitation.)\n                \napt-get upgrade</p>"},{"id":"text-10","type":"text","heading":"","plain_text":"Réduisez le nombre de services réseau exposés. Ceux-ci seront lancés par\nscripts en /etc/rc.d/rc*.d/ des répertoires. (Voir la liste complète des services en: /etc/init.d/)\nIl n’est peut-être pas nécessaire d’exécuter sendmail (serveur de messagerie),\nportmap (écouteur RPC requis par NFS),\nlpd (démon du serveur d’imprimante en ligne. Les pirates cherchent constamment à obtenir ce service pour mon système.),\ninnd (serveur de news), linuxconf etc.\nPar exemple, sendmail peut être supprimé du processus de démarrage à l’aide de la commande suivante:\n          chkconfig --del sendmail ou en utilisant l&#39;outil de configuration Ntsysv.\nLe service peut être terminé à l&#39;aide de la commande /etc/rc.d/init.d/sendmail stop.\nÀ tout le moins, vous devez exécuter la commande chkconfig --list\npour voir quels processus sont configurés pour pouvoir être utilisés après le démarrage.\nVoir le tutoriel sur le processus d&#39;initialisation YoLinux","html":"<p>Réduisez le nombre de services réseau exposés. Ceux-ci seront lancés par\nscripts en /etc/rc.d/rc*.d/ des répertoires. (Voir la liste complète des services en: /etc/init.d/)\nIl n’est peut-être pas nécessaire d’exécuter sendmail (serveur de messagerie),\nportmap (écouteur RPC requis par NFS),\nlpd (démon du serveur d’imprimante en ligne. Les pirates cherchent constamment à obtenir ce service pour mon système.),\ninnd (serveur de news), linuxconf etc.\nPar exemple, sendmail peut être supprimé du processus de démarrage à l’aide de la commande suivante:\n          chkconfig --del sendmail ou en utilisant l&#039;outil de configuration Ntsysv.\nLe service peut être terminé à l&#039;aide de la commande /etc/rc.d/init.d/sendmail stop.\nÀ tout le moins, vous devez exécuter la commande chkconfig --list\npour voir quels processus sont configurés pour pouvoir être utilisés après le démarrage.\nVoir le tutoriel sur le processus d&#039;initialisation YoLinux</p>"},{"id":"text-11","type":"text","heading":"","plain_text":"Vérifiez votre configuration. Répertoriez les ports ouverts et les processus qui les contiennent: netstat -punta (Essayez aussi netstat -nlp)\n        \nListe des services RPC: [root]# rpcinfo -p localhost\n    Idéalement, vous NE PAS être en cours d&#39;exécution portmapper donc pas de services RPC\n    serait disponible. Désactivez portmapper: service portmap stop (ou: /etc/init.d/portmap stop) et\n    supprimez-le de la séquence de démarrage du système: chkconfig --del portmap\n    (Portmap est requis par NFS.)\n        \nFTP anonyme (avec wu_ftpd &#8211; Dernière livraison avec RH 8.0. RH 9 et FC utilisent vsftpd):\n    Par défaut, Red Hat est configuré pour le FTP anonyme.\n    Cela permet aux utilisateurs de ftp sur votre serveur et de se connecter avec le login.\n    anonyme et utilisez une adresse email comme mot de passe. Si vous le souhaitez\n    pour désactiver cette fonctionnalité éditer le fichier / etc / ftpaccess et changer:\n    classe tout réel, invité, anonyme *\n    à\n    classe tout réel, invité *\n    Pour plus d&#39;informations sur la configuration FTP, voir: Didacticiel de configuration FTP du serveur Web YoLinux","html":"<p>Vérifiez votre configuration. Répertoriez les ports ouverts et les processus qui les contiennent: netstat -punta (Essayez aussi netstat -nlp)\n        \nListe des services RPC: [root]# rpcinfo -p localhost\n    Idéalement, vous NE PAS être en cours d&#039;exécution portmapper donc pas de services RPC\n    serait disponible. Désactivez portmapper: service portmap stop (ou: /etc/init.d/portmap stop) et\n    supprimez-le de la séquence de démarrage du système: chkconfig --del portmap\n    (Portmap est requis par NFS.)\n        \nFTP anonyme (avec wu_ftpd &#8211; Dernière livraison avec RH 8.0. RH 9 et FC utilisent vsftpd):\n    Par défaut, Red Hat est configuré pour le FTP anonyme.\n    Cela permet aux utilisateurs de ftp sur votre serveur et de se connecter avec le login.\n    anonyme et utilisez une adresse email comme mot de passe. Si vous le souhaitez\n    pour désactiver cette fonctionnalité éditer le fichier / etc / ftpaccess et changer:\n    classe tout réel, invité, anonyme *\n    à\n    classe tout réel, invité *\n    Pour plus d&#039;informations sur la configuration FTP, voir: Didacticiel de configuration FTP du serveur Web YoLinux</p>"},{"id":"text-12","type":"text","heading":"","plain_text":"Utilisez le trouver commande pour localiser les vulnérabilités &#8211; trouver les fichiers suid et guid (pouvant s&#39;exécuter avec les privilèges root), ainsi que les fichiers et les répertoires accessibles en écriture dans le monde entier. Par exemple:","html":"<p>Utilisez le trouver commande pour localiser les vulnérabilités &#8211; trouver les fichiers suid et guid (pouvant s&#039;exécuter avec les privilèges root), ainsi que les fichiers et les répertoires accessibles en écriture dans le monde entier. Par exemple:</p>"},{"id":"text-13","type":"text","heading":"","plain_text":"find / -xdev  (-perm -4000 -o -perm -2000 ) -type f -print\n                Supprimez les privilèges suid sur les programmes exécutables avec la commande: chmod -s nom de fichier\n            \n    find / -xdev  (-nouser -o -nogroup ) -print\n                Rechercher des fichiers n&#39;appartenant pas à un utilisateur ou à un groupe valide.","html":"<p>find / -xdev  (-perm -4000 -o -perm -2000 ) -type f -print\n                Supprimez les privilèges suid sur les programmes exécutables avec la commande: chmod -s nom de fichier\n            \n    find / -xdev  (-nouser -o -nogroup ) -print\n                Rechercher des fichiers n&#039;appartenant pas à un utilisateur ou à un groupe valide.</p>"},{"id":"text-14","type":"text","heading":"","plain_text":"Utilisez la commande chattr\net lsattr\nrendre un fichier de sécurité sensible non modifiable en plus des autorisations habituelles.","html":"<p>Utilisez la commande chattr\net lsattr\nrendre un fichier de sécurité sensible non modifiable en plus des autorisations habituelles.</p>"},{"id":"text-15","type":"text","heading":"","plain_text":"Rendre un fichier non modifiable: chattr + i / bin / ls\n              Rendre les répertoires non modifiables: chattr -R + i / bin / sbin / boot / lib\n              Faire un fichier ajouter seulement: chattr + a / var / log / messages","html":"<p>Rendre un fichier non modifiable: chattr + i / bin / ls\n              Rendre les répertoires non modifiables: chattr -R + i / bin / sbin / boot / lib\n              Faire un fichier ajouter seulement: chattr + a / var / log / messages</p>"},{"id":"text-16","type":"text","heading":"","plain_text":"Utilisez &quot;tripwire&quot;\n[sourceforge: tripwire]\npour la surveillance de la sécurité de votre système à la recherche de traces de fichiers non autorisés\nchangements. Tripwire est proposé dans le cadre des distributions de base Red Hat et Ubuntu.\nLa configuration de Tripwire est décrite ci-dessous.","html":"<p>Utilisez &quot;tripwire&quot;\n[sourceforge: tripwire]\npour la surveillance de la sécurité de votre système à la recherche de traces de fichiers non autorisés\nchangements. Tripwire est proposé dans le cadre des distributions de base Red Hat et Ubuntu.\nLa configuration de Tripwire est décrite ci-dessous.</p>"},{"id":"text-17","type":"text","heading":"","plain_text":"Regardez vos fichiers de journaux en particulier / var / log / messages et\n   / var / log / secure.\n        \nÉvitez les noms de compte génériques tels que client.\n        \nUtilisez les configurations de wrapper réseau de PAM pour interdire les mots de passe pouvant être utilisés.\ntrouvé facilement par crack ou d&#39;autres programmes de piratage.\nL&#39;authentification PAM peut également interdire l&#39;accès à la connexion au réseau racine.\n(Configuration Red Hat par défaut.\nVous devez vous connecter en tant qu&#39;utilisateur régulier et su - pour obtenir un accès root.\nCe n&#39;est PAS la valeur par défaut pour ssh et doit être modifié comme indiqué ci-dessous.)\n          Voir le tutoriel YoLinux Network Admin sur l’utilisation de PAM\n        \nL&#39;accès à distance NE DOIT PAS être effectué avec un texte telnet en texte clair, mais avec une connexion chiffrée utilisant ssh. (Plus tard dans ce tutoriel)\n        \nParamètres du fichier Proc pour la défense contre les attaques. Cela inclut des mesures de protection contre\nUsurpation d&#39;adresse IP, attaques par saturation ou attaques par syncookies.\n        \nDDoS (attaques par déni de service distribué): le seul\nce que vous pouvez faire est d&#39;avoir une bande passante et un traitement gobs\nalimentation / pare-feu. Beaucoup de puissance de traitement ou un pare-feu sont inutiles\nsans bande passante\ncar le réseau peut être surchargé par une attaque distribuée.\nRegarde aussi:\n    \nMalheureusement, les paquets sont généralement usurpés et dans mon cas, le FBI\ns&#39;en fichait. Si le serveur est un serveur distant, utilisez un modem d&#39;accès à distance ou\nune deuxième adresse IP et une route d&#39;accès, car la route attaquée est\nbloqué par le déluge de\nattaques de réseau. Vous pouvez également demander à votre FAI de supprimer le trafic ICMP.\nà\nles adresses IP de vos serveurs. (et UDP si tout ce que vous utilisez est un\nserveur Web. Les serveurs de noms DNS utilisent UDP.)\nPour une lecture très intéressante, voir &quot;The Strange Tale&quot; de l&#39;attaque DDoS de GRC.com. (Très intéressante lecture sur l’anatomie des réseaux de hacker bot.)\n    \nL&#39;accès utilisateur peut être restreint avec les fichiers de configuration suivants:","html":"<p>Regardez vos fichiers de journaux en particulier / var / log / messages et\n   / var / log / secure.\n        \nÉvitez les noms de compte génériques tels que client.\n        \nUtilisez les configurations de wrapper réseau de PAM pour interdire les mots de passe pouvant être utilisés.\ntrouvé facilement par crack ou d&#039;autres programmes de piratage.\nL&#039;authentification PAM peut également interdire l&#039;accès à la connexion au réseau racine.\n(Configuration Red Hat par défaut.\nVous devez vous connecter en tant qu&#039;utilisateur régulier et su - pour obtenir un accès root.\nCe n&#039;est PAS la valeur par défaut pour ssh et doit être modifié comme indiqué ci-dessous.)\n          Voir le tutoriel YoLinux Network Admin sur l’utilisation de PAM\n        \nL&#039;accès à distance NE DOIT PAS être effectué avec un texte telnet en texte clair, mais avec une connexion chiffrée utilisant ssh. (Plus tard dans ce tutoriel)\n        \nParamètres du fichier Proc pour la défense contre les attaques. Cela inclut des mesures de protection contre\nUsurpation d&#039;adresse IP, attaques par saturation ou attaques par syncookies.\n        \nDDoS (attaques par déni de service distribué): le seul\nce que vous pouvez faire est d&#039;avoir une bande passante et un traitement gobs\nalimentation / pare-feu. Beaucoup de puissance de traitement ou un pare-feu sont inutiles\nsans bande passante\ncar le réseau peut être surchargé par une attaque distribuée.\nRegarde aussi:\n    \nMalheureusement, les paquets sont généralement usurpés et dans mon cas, le FBI\ns&#039;en fichait. Si le serveur est un serveur distant, utilisez un modem d&#039;accès à distance ou\nune deuxième adresse IP et une route d&#039;accès, car la route attaquée est\nbloqué par le déluge de\nattaques de réseau. Vous pouvez également demander à votre FAI de supprimer le trafic ICMP.\nà\nles adresses IP de vos serveurs. (et UDP si tout ce que vous utilisez est un\nserveur Web. Les serveurs de noms DNS utilisent UDP.)\nPour une lecture très intéressante, voir &quot;The Strange Tale&quot; de l&#039;attaque DDoS de GRC.com. (Très intéressante lecture sur l’anatomie des réseaux de hacker bot.)\n    \nL&#039;accès utilisateur peut être restreint avec les fichiers de configuration suivants:</p>"},{"id":"text-18","type":"text","heading":"","plain_text":"/etc/security/limits.conf\n    \n/etc/security/group.conf\n    \n/etc/security/time.conf","html":"<p>/etc/security/limits.conf\n    \n/etc/security/group.conf\n    \n/etc/security/time.conf</p>"},{"id":"text-19","type":"text","heading":"","plain_text":"Voir le tutoriel YoLinux SysAdmin &#8211; restreindre les utilisateurs\n        \nSupprimer les utilisateurs inutiles du système. Voir / etc / passwd.\nPar défaut\nLes installations Red Hat ont de nombreux comptes utilisateur créés pour prendre en charge\ndivers processus. Si vous n’avez pas l’intention d’exécuter ces processus, supprimez\nles utilisateurs. c&#39;est-à-dire retirer\nidentifiants utilisateur jeux, uucp, rpc, rpcd, ...","html":"<p>Voir le tutoriel YoLinux SysAdmin &#8211; restreindre les utilisateurs\n        \nSupprimer les utilisateurs inutiles du système. Voir / etc / passwd.\nPar défaut\nLes installations Red Hat ont de nombreux comptes utilisateur créés pour prendre en charge\ndivers processus. Si vous n’avez pas l’intention d’exécuter ces processus, supprimez\nles utilisateurs. c&#039;est-à-dire retirer\nidentifiants utilisateur jeux, uucp, rpc, rpcd, ...</p>"},{"id":"text-20","type":"text","heading":"","plain_text":"Démon de réseau IP:","html":"<p>Démon de réseau IP:</p>"},{"id":"text-21","type":"text","heading":"","plain_text":"Il est préférable, pour des raisons de sécurité, de réduire le nombre\ndes services réseau inetd exposés. Plus vous exposez de services, plus votre\nvulnérabilité. Réduire le nombre de services réseau accessibles via\nle démon xinet ou inet par:","html":"<p>Il est préférable, pour des raisons de sécurité, de réduire le nombre\ndes services réseau inetd exposés. Plus vous exposez de services, plus votre\nvulnérabilité. Réduire le nombre de services réseau accessibles via\nle démon xinet ou inet par:</p>"},{"id":"text-22","type":"text","heading":"","plain_text":"inetd: (ancien chapeau rouge)\n    Commentez les services inutiles dans le /etc/initd.conf fichier.\n    Exemple: (FTP est le seul service que je lance)","html":"<p>inetd: (ancien chapeau rouge)\n    Commentez les services inutiles dans le /etc/initd.conf fichier.\n    Exemple: (FTP est le seul service que je lance)</p>"},{"id":"text-23","type":"text","heading":"","plain_text":"flux ftp tcp maintenant racine / usr / sbin / tcpd in.ftpd -l -a\n    \n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/inetd restart","html":"<p>flux ftp tcp maintenant racine / usr / sbin / tcpd in.ftpd -l -a\n    \n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/inetd restart</p>"},{"id":"text-24","type":"text","heading":"","plain_text":"xinetd: (systèmes actuels)\n    Tous les services réseau sont désactivés par défaut lors d&#39;une mise à niveau. Exemple de fichier: /etc/xinetd.d/wu-ftpd:","html":"<p>xinetd: (systèmes actuels)\n    Tous les services réseau sont désactivés par défaut lors d&#039;une mise à niveau. Exemple de fichier: /etc/xinetd.d/wu-ftpd:</p>"},{"id":"text-25","type":"text","heading":"","plain_text":"service ftp","html":"<p>service ftp</p>"},{"id":"text-26","type":"text","heading":"","plain_text":"     disable = yes - La valeur par défaut est désactivée. Cette ligne contrôle le service xinetd (activé ou non)\n     socket_type = stream\n     attendre = non\n     utilisateur = root\n     serveur = /usr/sbin/in.ftpd\n     server_args = -l -a\n     log_on_success + = DURÉE USERID\n     log_on_failure + = USERID\n     bien = 10","html":"<p>     disable = yes - La valeur par défaut est désactivée. Cette ligne contrôle le service xinetd (activé ou non)\n     socket_type = stream\n     attendre = non\n     utilisateur = root\n     serveur = /usr/sbin/in.ftpd\n     server_args = -l -a\n     log_on_success + = DURÉE USERID\n     log_on_failure + = USERID\n     bien = 10</p>"},{"id":"text-27","type":"text","heading":"","plain_text":"Activer / désactiver un service xinetd:","html":"<p>Activer / désactiver un service xinetd:</p>"},{"id":"text-28","type":"text","heading":"","plain_text":"Editez le fichier: /etc/xinetd.d/Nom du service\n    Changer de ligne &quot;désactiver = oui&quot;désactive un service xinetd.\n    Changer de ligne &quot;désactiver = non&quot;active un service xinetd.\n    La configuration de Xinetd doit être effectuée pour chaque fichier du répertoire.\n    /etc/xinetd.d/ afin de configurer chaque service réseau.\n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/xinetd restart","html":"<p>Editez le fichier: /etc/xinetd.d/Nom du service\n    Changer de ligne &quot;désactiver = oui&quot;désactive un service xinetd.\n    Changer de ligne &quot;désactiver = non&quot;active un service xinetd.\n    La configuration de Xinetd doit être effectuée pour chaque fichier du répertoire.\n    /etc/xinetd.d/ afin de configurer chaque service réseau.\n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/xinetd restart</p>"},{"id":"text-29","type":"text","heading":"","plain_text":"Vous pouvez également utiliser la commande:\n        chkconfig wu-ftpd sur\n        OU\n        chkconfig wu-ftpd off \nCela modifiera le fichier approprié (/etc/xinetd.d/wu-ftpd)\n    et redémarrez le processus xinetd.","html":"<p>Vous pouvez également utiliser la commande:\n        chkconfig wu-ftpd sur\n        OU\n        chkconfig wu-ftpd off \nCela modifiera le fichier approprié (/etc/xinetd.d/wu-ftpd)\n    et redémarrez le processus xinetd.</p>"},{"id":"text-30","type":"text","heading":"","plain_text":"Pointe:","html":"<p>Pointe:</p>"},{"id":"text-31","type":"text","heading":"","plain_text":"Répertoriez les paramètres init, y compris tous les services contrôlés xinetd: chkconfig --list\n    \nÉnumérer le statut des services (systèmes Red Hat / Fedora Core): service - état général","html":"<p>Répertoriez les paramètres init, y compris tous les services contrôlés xinetd: chkconfig --list\n    \nÉnumérer le statut des services (systèmes Red Hat / Fedora Core): service - état général</p>"},{"id":"text-32","type":"text","heading":"","plain_text":"Configuration du noyau:","html":"<p>Configuration du noyau:</p>"},{"id":"text-33","type":"text","heading":"","plain_text":"Utilisation Pare-feu Linux règles de protection contre les attaques. (iptables: noyau 2.4+ ou ipchains: noyau 2.2)\n    Les règles de refus d&#39;accès peuvent également être implémentées à la volée par portsentry.\n    (Lieu à la fin de /etc/rc.d/rc.local à exécuter au démarrage du système, ou un autre script approprié)","html":"<p>Utilisation Pare-feu Linux règles de protection contre les attaques. (iptables: noyau 2.4+ ou ipchains: noyau 2.2)\n    Les règles de refus d&#039;accès peuvent également être implémentées à la volée par portsentry.\n    (Lieu à la fin de /etc/rc.d/rc.local à exécuter au démarrage du système, ou un autre script approprié)</p>"},{"id":"text-34","type":"text","heading":"","plain_text":"script iptables:","html":"<p>script iptables:</p>"},{"id":"text-35","type":"text","heading":"","plain_text":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS","html":"<p>iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS</p>"},{"id":"text-36","type":"text","heading":"","plain_text":"iptables -A INPUT -p udp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS","html":"<p>iptables -A INPUT -p udp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS</p>"},{"id":"text-37","type":"text","heading":"","plain_text":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 6000: 6009 -j DROP  - Bloquer X-Windows","html":"<p>iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 6000: 6009 -j DROP  - Bloquer X-Windows</p>"},{"id":"text-38","type":"text","heading":"","plain_text":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 7100 -j DROP       - Bloquer le serveur de polices X-Windows","html":"<p>iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 7100 -j DROP       - Bloquer le serveur de polices X-Windows</p>"},{"id":"text-39","type":"text","heading":"","plain_text":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante","html":"<p>iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#039;imprimante</p>"},{"id":"text-40","type":"text","heading":"","plain_text":"iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante","html":"<p>iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#039;imprimante</p>"},{"id":"text-41","type":"text","heading":"","plain_text":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS","html":"<p>iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS</p>"},{"id":"text-42","type":"text","heading":"","plain_text":"iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS","html":"<p>iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS</p>"},{"id":"text-43","type":"text","heading":"","plain_text":"iptables -A INPUT -p tout -s localhost -i eth0 -j DROP            - Refuser les paquets extérieurs d’Internet qui\n                                                                          prétendre être de votre interface de bouclage.","html":"<p>iptables -A INPUT -p tout -s localhost -i eth0 -j DROP            - Refuser les paquets extérieurs d’Internet qui\n                                                                          prétendre être de votre interface de bouclage.</p>"},{"id":"text-44","type":"text","heading":"","plain_text":"script ipchains:","html":"<p>script ipchains:</p>"},{"id":"text-45","type":"text","heading":"","plain_text":"# Autoriser l&#39;accès en boucle. Cette règle doit précéder les règles interdisant l&#39;accès au port !!\niptables -A INPUT -i lo -p all -j ACCEPT         - Cette règle est essentielle si vous voulez votre propre ordinateur","html":"<p># Autoriser l&#039;accès en boucle. Cette règle doit précéder les règles interdisant l&#039;accès au port !!\niptables -A INPUT -i lo -p all -j ACCEPT         - Cette règle est essentielle si vous voulez votre propre ordinateur</p>"},{"id":"text-46","type":"text","heading":"","plain_text":"iptables -A OUTPUT -o lo -p all -j ACCEPT                pour pouvoir accéder à lui-même via l&#39;interface de bouclage","html":"<p>iptables -A OUTPUT -o lo -p all -j ACCEPT                pour pouvoir accéder à lui-même via l&#039;interface de bouclage</p>"},{"id":"text-47","type":"text","heading":"","plain_text":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT       - Bloc NFS","html":"<p>ipchains -A entrée -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT       - Bloc NFS</p>"},{"id":"text-48","type":"text","heading":"","plain_text":"ipchains -A entrée -p udp -s 0/0 -d 0/0 2049 -j REJECT          - Bloc NFS","html":"<p>ipchains -A entrée -p udp -s 0/0 -d 0/0 2049 -j REJECT          - Bloc NFS</p>"},{"id":"text-49","type":"text","heading":"","plain_text":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 6000: 6009 -y -j REJECT  - Bloquer X-Windows","html":"<p>ipchains -A entrée -p tcp -s 0/0 -d 0/0 6000: 6009 -y -j REJECT  - Bloquer X-Windows</p>"},{"id":"text-50","type":"text","heading":"","plain_text":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT       - Bloquer le serveur de polices X-Windows","html":"<p>ipchains -A entrée -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT       - Bloquer le serveur de polices X-Windows</p>"},{"id":"text-51","type":"text","heading":"","plain_text":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 515 -y -j REJECT        - Bloquer le port de l&#39;imprimante","html":"<p>ipchains -A entrée -p tcp -s 0/0 -d 0/0 515 -y -j REJECT        - Bloquer le port de l&#039;imprimante</p>"},{"id":"text-52","type":"text","heading":"","plain_text":"ipchains -A entrée -p udp -s 0/0 -d 0/0 515 -j REJECT           - Bloquer le port de l&#39;imprimante","html":"<p>ipchains -A entrée -p udp -s 0/0 -d 0/0 515 -j REJECT           - Bloquer le port de l&#039;imprimante</p>"},{"id":"text-53","type":"text","heading":"","plain_text":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 111 -y -j REJECT        - Bloquer Sun rpc / NFS","html":"<p>ipchains -A entrée -p tcp -s 0/0 -d 0/0 111 -y -j REJECT        - Bloquer Sun rpc / NFS</p>"},{"id":"text-54","type":"text","heading":"","plain_text":"ipchains -A entrée -p udp -s 0/0 -d 0/0 111 -j REJECT           - Bloquer Sun rpc / NFS","html":"<p>ipchains -A entrée -p udp -s 0/0 -d 0/0 111 -j REJECT           - Bloquer Sun rpc / NFS</p>"},{"id":"text-55","type":"text","heading":"","plain_text":"ipchains -A entrée -j REJECT -p tout -s localhost -i eth0 -l    - Refuser et consigner (&quot;-l&quot;) les paquets extérieurs à Internet\n                                                                       qui prétendent être de votre interface de bouclage.","html":"<p>ipchains -A entrée -j REJECT -p tout -s localhost -i eth0 -l    - Refuser et consigner (&quot;-l&quot;) les paquets extérieurs à Internet\n                                                                       qui prétendent être de votre interface de bouclage.</p>"},{"id":"text-56","type":"text","heading":"","plain_text":"Remarque:","html":"<p>Remarque:</p>"},{"id":"text-57","type":"text","heading":"","plain_text":"iptables utilise la règle de chaîne &quot;INPUT&quot; et ipchains utilise la minuscule\n    descripteur &quot;entrée&quot;.\n    \nVoir les règles avec iptables -L ou ipchains -L commander.\n    \nPage de manuel d&#39;iptables\n    \n    Lorsque vous utilisez un serveur Web Internet, il est préférable que votre ordinateur soit sécurisé.\n        vue, qu’on ne lance PAS l’impression, X-Window, NFS ou d’autres services pouvant\n        être exploité si une vulnérabilité est découverte ou si elle est mal configurée\n        indépendamment des règles de pare-feu.","html":"<p>iptables utilise la règle de chaîne &quot;INPUT&quot; et ipchains utilise la minuscule\n    descripteur &quot;entrée&quot;.\n    \nVoir les règles avec iptables -L ou ipchains -L commander.\n    \nPage de manuel d&#039;iptables\n    \n    Lorsque vous utilisez un serveur Web Internet, il est préférable que votre ordinateur soit sécurisé.\n        vue, qu’on ne lance PAS l’impression, X-Window, NFS ou d’autres services pouvant\n        être exploité si une vulnérabilité est découverte ou si elle est mal configurée\n        indépendamment des règles de pare-feu.</p>"},{"id":"text-58","type":"text","heading":"","plain_text":"Regarde aussi:","html":"<p>Regarde aussi:</p>"},{"id":"text-59","type":"text","heading":"","plain_text":"Utilisation portsentry pour surveiller les attaques de pirates réseau et affecter dynamiquement des règles de pare-feu pour contrecarrer les attaquants. (Plus tard dans ce tutoriel)","html":"<p>Utilisation portsentry pour surveiller les attaques de pirates réseau et affecter dynamiquement des règles de pare-feu pour contrecarrer les attaquants. (Plus tard dans ce tutoriel)</p>"},{"id":"text-60","type":"text","heading":"","plain_text":"Un monolithique et noyau minimal pourrait également fournir un petit peu de\nprotection (éviter les modules Trojan) et exécution sur du matériel moins courant\n(MIPS, Alpha, etc &#8230; afin que les instructions de débordement de tampon ne s&#39;exécutent pas.)","html":"<p>Un monolithique et noyau minimal pourrait également fournir un petit peu de\nprotection (éviter les modules Trojan) et exécution sur du matériel moins courant\n(MIPS, Alpha, etc &#8230; afin que les instructions de débordement de tampon ne s&#039;exécutent pas.)</p>"},{"id":"text-61","type":"text","heading":"","plain_text":"Améliorations de la sécurité du noyau:","html":"<p>Améliorations de la sécurité du noyau:</p>"},{"id":"text-62","type":"text","heading":"","plain_text":"Activer ExecShield: Ceci est activé par défaut sur Red Hat EL 5 / CentOS 5.\n            ExecShield est une fonctionnalité du noyau Linux qui protège le système contre les exploits de débordement de mémoire tampon.\n            Cette fonctionnalité est réalisée par un placement aléatoire de la mémoire de pile, une prévention de l&#39;exécution de la mémoire utilisée pour la gestion de la mémoire tampon de données et de texte.\n            ExecShield peut être activé dans le fichier de configuration Red Hat / CentOS /etc/sysctl.conf en ajoutant les deux lignes suivantes:","html":"<p>Activer ExecShield: Ceci est activé par défaut sur Red Hat EL 5 / CentOS 5.\n            ExecShield est une fonctionnalité du noyau Linux qui protège le système contre les exploits de débordement de mémoire tampon.\n            Cette fonctionnalité est réalisée par un placement aléatoire de la mémoire de pile, une prévention de l&#039;exécution de la mémoire utilisée pour la gestion de la mémoire tampon de données et de texte.\n            ExecShield peut être activé dans le fichier de configuration Red Hat / CentOS /etc/sysctl.conf en ajoutant les deux lignes suivantes:</p>"},{"id":"text-63","type":"text","heading":"","plain_text":"kernel.exec-shield = 1\nkernel.randomize_va_space = 1\n            \n            La configuration actuelle du système peut être vérifiée:","html":"<p>kernel.exec-shield = 1\nkernel.randomize_va_space = 1\n            \n            La configuration actuelle du système peut être vérifiée:</p>"},{"id":"text-64","type":"text","heading":"","plain_text":"cat / proc / sys / kernel / exec-shield\n            \ncat / proc / sys / kernel / randomize_va_space","html":"<p>cat / proc / sys / kernel / exec-shield\n            \ncat / proc / sys / kernel / randomize_va_space</p>"},{"id":"text-65","type":"text","heading":"","plain_text":"Les deux devraient être &quot;1&quot;. (Défaillance du système)","html":"<p>Les deux devraient être &quot;1&quot;. (Défaillance du système)</p>"},{"id":"text-66","type":"text","heading":"","plain_text":"Remarque: processeurs Intel XD / AMD NX 32 bits uniquement x 32 (pas x86_64 pouvant traiter plus de 4 Go):\n            Activez la prise en charge d’AMD NX ou d’Intel XD à l’aide du noyau PAE (Physical Address Extension). L&#39;extension de mémoire PAE est nécessaire pour accéder au bit XD / NX.\n            Pour savoir si votre processeur prend en charge NX ou XD PAE, utilisez la commande suivante: cat / proc / cpuinfo | drapeaux grep pour afficher un champ avec &quot;pae&quot; et &quot;nx&quot;.\n            Installez un noyau Linux (2.6.8+) avec support PAE avec la commande miam installer le noyau-PAE. Le chargeur de démarrage devra également spécifier le noyau PAE pour le démarrage.\n            Le BIOS devra également être configuré pour le prendre en charge.\n            Ce noyau ne doit être installé que sur un système doté d’un processeur x86 32 bits offrant cette prise en charge. Les processeurs x86_64 64 bits pouvant interagir de manière native avec le bit XD / NX n&#39;ont pas besoin du noyau PAE.","html":"<p>Remarque: processeurs Intel XD / AMD NX 32 bits uniquement x 32 (pas x86_64 pouvant traiter plus de 4 Go):\n            Activez la prise en charge d’AMD NX ou d’Intel XD à l’aide du noyau PAE (Physical Address Extension). L&#039;extension de mémoire PAE est nécessaire pour accéder au bit XD / NX.\n            Pour savoir si votre processeur prend en charge NX ou XD PAE, utilisez la commande suivante: cat / proc / cpuinfo | drapeaux grep pour afficher un champ avec &quot;pae&quot; et &quot;nx&quot;.\n            Installez un noyau Linux (2.6.8+) avec support PAE avec la commande miam installer le noyau-PAE. Le chargeur de démarrage devra également spécifier le noyau PAE pour le démarrage.\n            Le BIOS devra également être configuré pour le prendre en charge.\n            Ce noyau ne doit être installé que sur un système doté d’un processeur x86 32 bits offrant cette prise en charge. Les processeurs x86_64 64 bits pouvant interagir de manière native avec le bit XD / NX n&#039;ont pas besoin du noyau PAE.</p>"},{"id":"text-67","type":"text","heading":"","plain_text":"Règles de pare-feu pour bloquer les blocs IP incorrects:","html":"<p>Règles de pare-feu pour bloquer les blocs IP incorrects:</p>"},{"id":"text-68","type":"text","heading":"","plain_text":"Il est bien connu qu’il existe différents blocs d’adresses IP où résident des pirates informatiques et des robots anti-spam. Ces blocs de propriété intellectuelle appartenaient souvent à des sociétés et à des organisations légitimes, mais sont tombés dans un royaume non surveillé ou ont été détournés et vendus à des spammeurs criminels.\nCes blocs IP doivent être bloqués par des règles de pare-feu.","html":"<p>Il est bien connu qu’il existe différents blocs d’adresses IP où résident des pirates informatiques et des robots anti-spam. Ces blocs de propriété intellectuelle appartenaient souvent à des sociétés et à des organisations légitimes, mais sont tombés dans un royaume non surveillé ou ont été détournés et vendus à des spammeurs criminels.\nCes blocs IP doivent être bloqués par des règles de pare-feu.</p>"},{"id":"text-69","type":"text","heading":"","plain_text":"Il existe divers services conviviaux qui recherchent et découvrent ces blocs IP de pare-feu et les refusent, et ils partagent cette information avec nous. Merci!","html":"<p>Il existe divers services conviviaux qui recherchent et découvrent ces blocs IP de pare-feu et les refusent, et ils partagent cette information avec nous. Merci!</p>"},{"id":"text-70","type":"text","heading":"","plain_text":"La liste déroulante Spamhaus: Il s&#39;agit d&#39;un script permettant de télécharger la liste déroulante totale et de générer un script de filtrage iptables pour bloquer ces adresses IP mêmes:","html":"<p>La liste déroulante Spamhaus: Il s&#039;agit d&#039;un script permettant de télécharger la liste déroulante totale et de générer un script de filtrage iptables pour bloquer ces adresses IP mêmes:</p>"},{"id":"text-71","type":"text","heading":"","plain_text":"#! / bin / bash\n# Liste noire des zones de hackers et des domaines défectueux de spamhaus.org\nFILE = drop.lasso\n/ bin / rm -f $ FILE\nwget http://www.spamhaus.org/drop/drop.lasso\nblocks = $ (cat $ FILE | egrep -v &#39;^;&#39; | awk &#39;print $ 1&#39;)\necho &quot;#! / bin / bash&quot;&gt; Spamhaus-drop.lasso.sh\npour ipblock dans les blocs $\nfaire\n echo &quot;iptables -I INPUT -s $ ipblock -j DROP&quot; &gt;&gt; Spamhaus-drop.lasso.sh\nterminé\nchmod ugo + x Spamhaus-drop.lasso.sh\necho &quot;... fait&quot;","html":"<p>#! / bin / bash\n# Liste noire des zones de hackers et des domaines défectueux de spamhaus.org\nFILE = drop.lasso\n/ bin / rm -f $ FILE\nwget http://www.spamhaus.org/drop/drop.lasso\nblocks = $ (cat $ FILE | egrep -v &#039;^;&#039; | awk &#039;print $ 1&#039;)\necho &quot;#! / bin / bash&quot;&gt; Spamhaus-drop.lasso.sh\npour ipblock dans les blocs $\nfaire\n echo &quot;iptables -I INPUT -s $ ipblock -j DROP&quot; &gt;&gt; Spamhaus-drop.lasso.sh\nterminé\nchmod ugo + x Spamhaus-drop.lasso.sh\necho &quot;... fait&quot;</p>"},{"id":"text-72","type":"text","heading":"","plain_text":"Pour bloquer les adresses IP, exécutez simplement le script sur chacun de vos serveurs: ./Spamhaus-drop.lasso.sh\nAu minimum, ces blocs d&#39;adresses IP devraient être refusés par tous les serveurs.","html":"<p>Pour bloquer les adresses IP, exécutez simplement le script sur chacun de vos serveurs: ./Spamhaus-drop.lasso.sh\nAu minimum, ces blocs d&#039;adresses IP devraient être refusés par tous les serveurs.</p>"},{"id":"text-73","type":"text","heading":"","plain_text":"Bloquer ou autoriser par pays: On peut refuser l&#39;accès de certains pays ou l&#39;inverse, n&#39;autoriser que certains pays à accéder à votre serveur.","html":"<p>Bloquer ou autoriser par pays: On peut refuser l&#039;accès de certains pays ou l&#039;inverse, n&#039;autoriser que certains pays à accéder à votre serveur.</p>"},{"id":"text-74","type":"text","heading":"","plain_text":"Voir ces sites pour générer des listes:","html":"<p>Voir ces sites pour générer des listes:</p>"},{"id":"text-75","type":"text","heading":"","plain_text":"Bloquer le forum et les spammeurs de la liste de commentaires: Utilisez la liste générée à partir de pots de miel exploités par StopForumSpam.com","html":"<p>Bloquer le forum et les spammeurs de la liste de commentaires: Utilisez la liste générée à partir de pots de miel exploités par StopForumSpam.com</p>"},{"id":"text-76","type":"text","heading":"","plain_text":"#! / bin / bash\n# Grande liste d&#39;adresses IP à bloquer\nNombre d&#39;adresses IP recueillies au cours des 30 derniers jours\n# Plus de 100 000 adresses IP","html":"<p>#! / bin / bash\n# Grande liste d&#039;adresses IP à bloquer\nNombre d&#039;adresses IP recueillies au cours des 30 derniers jours\n# Plus de 100 000 adresses IP</p>"},{"id":"text-77","type":"text","heading":"","plain_text":"rm -f Listed_ip_30.zip\nwget http://www.stopforumspam.com/downloads/listed_ip_30.zip","html":"<p>rm -f Listed_ip_30.zip\nwget http://www.stopforumspam.com/downloads/listed_ip_30.zip</p>"},{"id":"text-78","type":"text","heading":"","plain_text":"rm -f Listed_ip_30.txt\nDécompressez listing_ip_30.zip","html":"<p>rm -f Listed_ip_30.txt\nDécompressez listing_ip_30.zip</p>"},{"id":"text-79","type":"text","heading":"","plain_text":"echo &quot;#! / bin / bash&quot;&gt; Stopforumspam-listed_ip_30.sh\ncat ./listed_ip_30.txt | awk &#39;print &quot;/ sbin / iptables -I INPUT -s&quot; $ 1 &quot;-j DROP&quot;&#39; &gt;&gt; Stopforumspam-listed_ip_30.sh","html":"<p>echo &quot;#! / bin / bash&quot;&gt; Stopforumspam-listed_ip_30.sh\ncat ./listed_ip_30.txt | awk &#039;print &quot;/ sbin / iptables -I INPUT -s&quot; $ 1 &quot;-j DROP&quot;&#039; &gt;&gt; Stopforumspam-listed_ip_30.sh</p>"},{"id":"text-80","type":"text","heading":"","plain_text":"chmod ugo + x Stopforumspam-listed_ip_30.sh","html":"<p>chmod ugo + x Stopforumspam-listed_ip_30.sh</p>"},{"id":"text-81","type":"text","heading":"","plain_text":"Pour bloquer les adresses IP, exécutez simplement le script: ./Stopforumspam-listed_ip_30.sh","html":"<p>Pour bloquer les adresses IP, exécutez simplement le script: ./Stopforumspam-listed_ip_30.sh</p>"},{"id":"text-82","type":"text","heading":"","plain_text":"Sachez qu&#39;il s&#39;agit d&#39;une liste extrêmement longue et que son exécution peut prendre des heures.\nC&#39;est aussi une liste qui change rapidement et qui est constamment mise à jour.","html":"<p>Sachez qu&#039;il s&#039;agit d&#039;une liste extrêmement longue et que son exécution peut prendre des heures.\nC&#039;est aussi une liste qui change rapidement et qui est constamment mise à jour.</p>"},{"id":"text-83","type":"text","heading":"","plain_text":"[Potential Pitfall]: Vous pouvez obtenir l&#39;erreur suivante:","html":"<p>[Potential Pitfall]: Vous pouvez obtenir l&#039;erreur suivante:</p>"},{"id":"text-84","type":"text","heading":"","plain_text":"iptables: erreur inconnue 18446744073709551615","html":"<p>iptables: erreur inconnue 18446744073709551615</p>"},{"id":"text-85","type":"text","heading":"","plain_text":"J&#39;ai constaté qu&#39;en ralentissant l&#39;exécution du script, je pouvais éviter cette erreur.\nJ&#39;ai ajouté un écho bash pour écrire chaque ligne à l&#39;écran et elle s&#39;est bien mieux comportée bien que beaucoup plus lente.","html":"<p>J&#039;ai constaté qu&#039;en ralentissant l&#039;exécution du script, je pouvais éviter cette erreur.\nJ&#039;ai ajouté un écho bash pour écrire chaque ligne à l&#039;écran et elle s&#039;est bien mieux comportée bien que beaucoup plus lente.</p>"},{"id":"text-86","type":"text","heading":"","plain_text":"#! / bin / bash\nset -x verbose\n/ sbin / iptables -I INPUT -s XX.XX.XX.XX -j DROP\n...","html":"<p>#! / bin / bash\nset -x verbose\n/ sbin / iptables -I INPUT -s XX.XX.XX.XX -j DROP\n...</p>"},{"id":"text-87","type":"text","heading":"","plain_text":"Identifiez l&#39;ennemi:\nUtilisez ce qui suit pour identifier et géolocaliser une adresse IP (InfoSniper.net):","html":"<p>Identifiez l&#039;ennemi:\nUtilisez ce qui suit pour identifier et géolocaliser une adresse IP (InfoSniper.net):</p>"},{"id":"text-88","type":"text","heading":"","plain_text":"Serveur Web Apache:","html":"<p>Serveur Web Apache:</p>"},{"id":"text-89","type":"text","heading":"","plain_text":"Modules Apache: Désactivez les modules que vous n&#39;allez pas utiliser. Si votre site Web ne dessert pas https, désactivez-le.\n    Avec les exploits antérieurs de SSL, ceux qui ont utilisé cette philosophie n’ont pas été brûlés.\n    \nApache version exposition: (Version 1.3+) N&#39;autorisez pas les pirates informatiques à déterminer la version du logiciel de serveur Web que vous exécutez en induisant une erreur et donc une réponse automatique du serveur. Les attaques sont souvent spécifiques à la version. Les spammeurs déclenchent également des erreurs pour trouver des adresses électroniques.","html":"<p>Modules Apache: Désactivez les modules que vous n&#039;allez pas utiliser. Si votre site Web ne dessert pas https, désactivez-le.\n    Avec les exploits antérieurs de SSL, ceux qui ont utilisé cette philosophie n’ont pas été brûlés.\n    \nApache version exposition: (Version 1.3+) N&#039;autorisez pas les pirates informatiques à déterminer la version du logiciel de serveur Web que vous exécutez en induisant une erreur et donc une réponse automatique du serveur. Les attaques sont souvent spécifiques à la version. Les spammeurs déclenchent également des erreurs pour trouver des adresses électroniques.</p>"},{"id":"text-90","type":"text","heading":"","plain_text":"...","html":"<p>...</p>"},{"id":"text-91","type":"text","heading":"","plain_text":"Webmaster ServerAdmin chez megacorp dot com\nServerSignature Off","html":"<p>Webmaster ServerAdmin chez megacorp dot com\nServerSignature Off</p>"},{"id":"text-92","type":"text","heading":"","plain_text":"...","html":"<p>...</p>"},{"id":"text-93","type":"text","heading":"","plain_text":"De toute façon, la réponse risque d’être dénuée de sens si vous utilisez le serveur Web en tant que proxy pour un autre.","html":"<p>De toute façon, la réponse risque d’être dénuée de sens si vous utilisez le serveur Web en tant que proxy pour un autre.</p>"},{"id":"text-94","type":"text","heading":"","plain_text":"Bloquez les pirates et les pays qui n&#39;utiliseront jamais votre site Web.\n        Utilisez la directive Apache Refuser de bloquer l&#39;accès.","html":"<p>Bloquez les pirates et les pays qui n&#039;utiliseront jamais votre site Web.\n        Utilisez la directive Apache Refuser de bloquer l&#039;accès.</p>"},{"id":"text-95","type":"text","heading":"","plain_text":"...\n    ...\n    ...\n    Ordre permettre, refuser\n    # Bots en forme de bloc\n    Refuser à partir de 88.191.0.0/16 193.200.193.0/24 194.8.74.0/23\n    permettre à tous","html":"<p>...\n    ...\n    ...\n    Ordre permettre, refuser\n    # Bots en forme de bloc\n    Refuser à partir de 88.191.0.0/16 193.200.193.0/24 194.8.74.0/23\n    permettre à tous</p>"},{"id":"text-96","type":"text","heading":"","plain_text":"Pour une liste exhaustive des adresses IP à bloquer, voir la\n        Liste de blocage de Wizcrafts.net","html":"<p>Pour une liste exhaustive des adresses IP à bloquer, voir la\n        Liste de blocage de Wizcrafts.net</p>"},{"id":"text-97","type":"text","heading":"","plain_text":"SSH: (shell sécurisé)","html":"<p>SSH: (shell sécurisé)</p>"},{"id":"text-98","type":"text","heading":"","plain_text":"Protocole SSH suite d&#39;outils de connectivité réseau sont utilisés pour chiffrer\nconnexions sur Internet. SSH chiffre tout le trafic, y compris\nidentifiants et mots de passe pour éliminer efficacement le sniffing sur le réseau,\ndétournement de connexion et autres attaques au niveau du réseau.\nDans une session telnet classique, le mot de passe est transmis via Internet.\nnon chiffré.\n      \nSSH sur Linux fait référence à OpenSSH Secure Shell Terminal et aux connexions de transfert de fichiers sftp / scp. SSH est également un produit commercial mais disponible librement pour un usage non commercial\nde SSH Communications Security à\n      http://www.ssh.com/.\nDeux versions sont disponibles, SSH1 (maintenant très ancien) et SSH2 (actuel).\nLa version commerciale de SSH peut être achetée et / ou téléchargée à partir de leur\nsite Internet.\nNotez que SSH1 présente un problème de vulnérabilité majeur.\nLe groupe de craquage et de défiguration du site Web &quot;woot-project&quot; utilise cette vulnérabilité.\n      NE PAS UTILISER LE PROTOCOLE SSH1 !!!!!\n(&quot;woot-project&quot; exploit / attaque description / récupération)\n      \nOpenSSH a été développé par le\n      OpenBSD Project et est disponible gratuitement.\nOpenSSH est compatible avec SSH1 et SSH2.\nOpenSSH s&#39;appuie sur le projet OpenSSL pour la couche de communication cryptée.\nLes versions actuelles de Linux sont fournies avec OpenSSH / OpenSSL.","html":"<p>Protocole SSH suite d&#039;outils de connectivité réseau sont utilisés pour chiffrer\nconnexions sur Internet. SSH chiffre tout le trafic, y compris\nidentifiants et mots de passe pour éliminer efficacement le sniffing sur le réseau,\ndétournement de connexion et autres attaques au niveau du réseau.\nDans une session telnet classique, le mot de passe est transmis via Internet.\nnon chiffré.\n      \nSSH sur Linux fait référence à OpenSSH Secure Shell Terminal et aux connexions de transfert de fichiers sftp / scp. SSH est également un produit commercial mais disponible librement pour un usage non commercial\nde SSH Communications Security à\n      http://www.ssh.com/.\nDeux versions sont disponibles, SSH1 (maintenant très ancien) et SSH2 (actuel).\nLa version commerciale de SSH peut être achetée et / ou téléchargée à partir de leur\nsite Internet.\nNotez que SSH1 présente un problème de vulnérabilité majeur.\nLe groupe de craquage et de défiguration du site Web &quot;woot-project&quot; utilise cette vulnérabilité.\n      NE PAS UTILISER LE PROTOCOLE SSH1 !!!!!\n(&quot;woot-project&quot; exploit / attaque description / récupération)\n      \nOpenSSH a été développé par le\n      OpenBSD Project et est disponible gratuitement.\nOpenSSH est compatible avec SSH1 et SSH2.\nOpenSSH s&#039;appuie sur le projet OpenSSL pour la couche de communication cryptée.\nLes versions actuelles de Linux sont fournies avec OpenSSH / OpenSSL.</p>"},{"id":"text-99","type":"text","heading":"","plain_text":"Liens:","html":"<p>Liens:</p>"},{"id":"text-100","type":"text","heading":"","plain_text":"OpenSSH:","html":"<p>OpenSSH:</p>"},{"id":"text-101","type":"text","heading":"","plain_text":"Télécharger:\n          \n    Remarque: SSH et SSL sont inclus dans Red Hat Linux 7.0+.","html":"<p>Télécharger:\n          \n    Remarque: SSH et SSL sont inclus dans Red Hat Linux 7.0+.</p>"},{"id":"text-102","type":"text","heading":"","plain_text":"Installation:","html":"<p>Installation:</p>"},{"id":"text-103","type":"text","heading":"","plain_text":"Commun au client et au serveur:\n              \nClient:","html":"<p>Commun au client et au serveur:\n              \nClient:</p>"},{"id":"text-104","type":"text","heading":"","plain_text":"Red Hat / Fedora / CentOS:","html":"<p>Red Hat / Fedora / CentOS:</p>"},{"id":"text-105","type":"text","heading":"","plain_text":"rpm -ivh openssh-askpass-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-clients-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-askpass-gnome-2.xxx-x.x.x86.rpm    - Utilisateurs de bureau Gnome","html":"<p>rpm -ivh openssh-askpass-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-clients-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-askpass-gnome-2.xxx-x.x.x86.rpm    - Utilisateurs de bureau Gnome</p>"},{"id":"text-106","type":"text","heading":"","plain_text":"Ubuntu / Debian:","html":"<p>Ubuntu / Debian:</p>"},{"id":"text-107","type":"text","heading":"","plain_text":"apt-get installer openssh-client ssh-askpass-gnome","html":"<p>apt-get installer openssh-client ssh-askpass-gnome</p>"},{"id":"text-108","type":"text","heading":"","plain_text":"Serveur:","html":"<p>Serveur:</p>"},{"id":"text-109","type":"text","heading":"","plain_text":"Si vous mettez à niveau à partir de SSH1, vous devrez peut-être utiliser l&#39;option RPM --Obliger.","html":"<p>Si vous mettez à niveau à partir de SSH1, vous devrez peut-être utiliser l&#039;option RPM --Obliger.</p>"},{"id":"text-110","type":"text","heading":"","plain_text":"Le rpm installera les fichiers binaires, les fichiers de configuration et les\n    openssh-server va installer le script d&#39;initialisation /etc/rc.d/init.d/sshd\n    pour que sshd commencera au démarrage du système.","html":"<p>Le rpm installera les fichiers binaires, les fichiers de configuration et les\n    openssh-server va installer le script d&#039;initialisation /etc/rc.d/init.d/sshd\n    pour que sshd commencera au démarrage du système.</p>"},{"id":"text-111","type":"text","heading":"","plain_text":"Configuration:","html":"<p>Configuration:</p>"},{"id":"text-112","type":"text","heading":"","plain_text":"Fichier de configuration du client / etc / ssh / ssh_config: (Défaut)","html":"<p>Fichier de configuration du client / etc / ssh / ssh_config: (Défaut)</p>"},{"id":"text-113","type":"text","heading":"","plain_text":"# $ OpenBSD: ssh_config, v 1.9 2001/03/10 12:53:51 deraadt Exp $","html":"<p># $ OpenBSD: ssh_config, v 1.9 2001/03/10 12:53:51 deraadt Exp $</p>"},{"id":"text-114","type":"text","heading":"","plain_text":"# Ceci est un fichier de configuration système client ssh. Voir ssh (1) pour plus\n# information. Ce fichier fournit des valeurs par défaut aux utilisateurs et les valeurs peuvent\n# être modifié dans les fichiers de configuration par utilisateur ou sur la ligne de commande.","html":"<p># Ceci est un fichier de configuration système client ssh. Voir ssh (1) pour plus\n# information. Ce fichier fournit des valeurs par défaut aux utilisateurs et les valeurs peuvent\n# être modifié dans les fichiers de configuration par utilisateur ou sur la ligne de commande.</p>"},{"id":"text-115","type":"text","heading":"","plain_text":"# Les données de configuration sont analysées comme suit:\n# 1. options de ligne de commande\n# 2. Fichier spécifique à l&#39;utilisateur\n# 3. fichier du système\n# Toute valeur de configuration n&#39;est modifiée que la première fois qu&#39;elle est définie.\n# Ainsi, les définitions spécifiques à l’hôte doivent figurer au début de la\n# fichier de configuration, et les valeurs par défaut à la fin.","html":"<p># Les données de configuration sont analysées comme suit:\n# 1. options de ligne de commande\n# 2. Fichier spécifique à l&#039;utilisateur\n# 3. fichier du système\n# Toute valeur de configuration n&#039;est modifiée que la première fois qu&#039;elle est définie.\n# Ainsi, les définitions spécifiques à l’hôte doivent figurer au début de la\n# fichier de configuration, et les valeurs par défaut à la fin.</p>"},{"id":"text-116","type":"text","heading":"","plain_text":"# Valeurs par défaut pour l&#39;ensemble du site pour diverses options","html":"<p># Valeurs par défaut pour l&#039;ensemble du site pour diverses options</p>"},{"id":"text-117","type":"text","heading":"","plain_text":"# Hôte *\n# ForwardAgent no\n# ForwardX11 non\n# RhostsAuthentication no\n# RhostsRSAAuthentication oui\n# RSAAuthentication oui\n# Password Authentification oui\n# FallBackToRsh no\n# UseRsh no\n# BatchMode no\n# CheckHostIP yes\n# StrictHostKeyChecking oui\n# IdentityFile ~ / .ssh / identity\n# IdentityFile ~ / .ssh / id_rsa\n# IdentityFile ~ / .ssh / id_dsa\n# Port 22\n# Protocole 2.1 - Remplacez cette ligne par: Protocole 2\n# Cipher 3des\n# Chiffres aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour, aes192-cbc, aes256-cbc\n# EscapeChar ~\nHôte *\n        ForwardX11 oui","html":"<p># Hôte *\n# ForwardAgent no\n# ForwardX11 non\n# RhostsAuthentication no\n# RhostsRSAAuthentication oui\n# RSAAuthentication oui\n# Password Authentification oui\n# FallBackToRsh no\n# UseRsh no\n# BatchMode no\n# CheckHostIP yes\n# StrictHostKeyChecking oui\n# IdentityFile ~ / .ssh / identity\n# IdentityFile ~ / .ssh / id_rsa\n# IdentityFile ~ / .ssh / id_dsa\n# Port 22\n# Protocole 2.1 - Remplacez cette ligne par: Protocole 2\n# Cipher 3des\n# Chiffres aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour, aes192-cbc, aes256-cbc\n# EscapeChar ~\nHôte *\n        ForwardX11 oui</p>"},{"id":"text-118","type":"text","heading":"","plain_text":"Changer la ligne: # Protocole 2,1\n    à:     Protocole 2\n    Cela éliminera l&#39;utilisation du protocole SSH1.","html":"<p>Changer la ligne: # Protocole 2,1\n    à:     Protocole 2\n    Cela éliminera l&#039;utilisation du protocole SSH1.</p>"},{"id":"text-119","type":"text","heading":"","plain_text":"Décommentez les options requises ou acceptez les valeurs par défaut codées en dur.\n    Les valeurs par défaut codées en dur pour le client OpenSSH sont compatibles avec SSH1\n    fichiers client et serveur sshd. Une mise à niveau vers le client OpenSSH\n    ne nécessite aucune modification des fichiers $ HOME / .ssh /.","html":"<p>Décommentez les options requises ou acceptez les valeurs par défaut codées en dur.\n    Les valeurs par défaut codées en dur pour le client OpenSSH sont compatibles avec SSH1\n    fichiers client et serveur sshd. Une mise à niveau vers le client OpenSSH\n    ne nécessite aucune modification des fichiers $ HOME / .ssh /.</p>"},{"id":"text-120","type":"text","heading":"","plain_text":"Fichier de configuration du serveur / etc / ssh / sshd_config:\n        Défaut:","html":"<p>Fichier de configuration du serveur / etc / ssh / sshd_config:\n        Défaut:</p>"},{"id":"text-121","type":"text","heading":"","plain_text":"# $ OpenBSD: sshd_config, v 1.38 2001/04/15 21:41:29 deraadt Exp $","html":"<p># $ OpenBSD: sshd_config, v 1.38 2001/04/15 21:41:29 deraadt Exp $</p>"},{"id":"text-122","type":"text","heading":"","plain_text":"# Ce sshd a été compilé avec PATH = / usr / bin: / bin: / usr / sbin: / sbin","html":"<p># Ce sshd a été compilé avec PATH = / usr / bin: / bin: / usr / sbin: / sbin</p>"},{"id":"text-123","type":"text","heading":"","plain_text":"# Ceci est le fichier de configuration système du serveur sshd. Voir sshd (8)\n# pour plus d&#39;informations.","html":"<p># Ceci est le fichier de configuration système du serveur sshd. Voir sshd (8)\n# pour plus d&#039;informations.</p>"},{"id":"text-124","type":"text","heading":"","plain_text":"Port 22\n#Protocole 2,1                             - Changer en: Protocole 2\n#ListenAddress 0.0.0.0\n#ListenAddress ::\nClé de l&#39;hôte / etc / ssh / ssh_host_key\nClé de l&#39;hôte / etc / ssh / ssh_host_rsa_key\nHostKey / etc / ssh / ssh_host_dsa_key\nServerKeyBits 768\nLoginGraceTime 600                        - Changer en: LoginGraceTime 120\nKeyRegenerationInterval 3600\nPermitRootLogin oui                       - Changer en: PermitRootLogin no\n#\n# Ne pas lire les fichiers ~ / .rhosts et ~ / .shosts\nIgnoreRhosts oui\n# Supprimer le commentaire si vous ne faites pas confiance à ~ / .ssh / known_hosts pour RhostsRSAAuthentication\n#IgnoreUserKnownHosts oui\nStrictModes oui\nX11Forwarding oui\nX11DisplayOffset 10\nPrintMotd oui\n#PrintLastLog no\nKeepAlive oui","html":"<p>Port 22\n#Protocole 2,1                             - Changer en: Protocole 2\n#ListenAddress 0.0.0.0\n#ListenAddress ::\nClé de l&#039;hôte / etc / ssh / ssh_host_key\nClé de l&#039;hôte / etc / ssh / ssh_host_rsa_key\nHostKey / etc / ssh / ssh_host_dsa_key\nServerKeyBits 768\nLoginGraceTime 600                        - Changer en: LoginGraceTime 120\nKeyRegenerationInterval 3600\nPermitRootLogin oui                       - Changer en: PermitRootLogin no\n#\n# Ne pas lire les fichiers ~ / .rhosts et ~ / .shosts\nIgnoreRhosts oui\n# Supprimer le commentaire si vous ne faites pas confiance à ~ / .ssh / known_hosts pour RhostsRSAAuthentication\n#IgnoreUserKnownHosts oui\nStrictModes oui\nX11Forwarding oui\nX11DisplayOffset 10\nPrintMotd oui\n#PrintLastLog no\nKeepAlive oui</p>"},{"id":"text-125","type":"text","heading":"","plain_text":"# Enregistrement\nSyslogFacility AUTHPRIV\nLogLevel INFO\n#obsoletes QuietMode et FascistLogging","html":"<p># Enregistrement\nSyslogFacility AUTHPRIV\nLogLevel INFO\n#obsoletes QuietMode et FascistLogging</p>"},{"id":"text-126","type":"text","heading":"","plain_text":"RhostsAuthentication non\n#\n# Pour que cela fonctionne, vous aurez également besoin de clés d&#39;hôte dans / etc / ssh / ssh_known_hosts\nRhostsRSAAuthentication non\n# similaire pour la version 2 du protocole\nAuthentification par l&#39;hôte non\n#\nAuthentification RSAA oui","html":"<p>RhostsAuthentication non\n#\n# Pour que cela fonctionne, vous aurez également besoin de clés d&#039;hôte dans / etc / ssh / ssh_known_hosts\nRhostsRSAAuthentication non\n# similaire pour la version 2 du protocole\nAuthentification par l&#039;hôte non\n#\nAuthentification RSAA oui</p>"},{"id":"text-127","type":"text","heading":"","plain_text":"# Pour désactiver les mots de passe en texte clair tunnelés, choisissez non ici!\nAuthentification par mot de passe oui\nPermitEmptyPasswords no","html":"<p># Pour désactiver les mots de passe en texte clair tunnelés, choisissez non ici!\nAuthentification par mot de passe oui\nPermitEmptyPasswords no</p>"},{"id":"text-128","type":"text","heading":"","plain_text":"# Un-comment pour désactiver les mots de passe s / key\n#ChallengeResponseAuthentication no","html":"<p># Un-comment pour désactiver les mots de passe s / key\n#ChallengeResponseAuthentication no</p>"},{"id":"text-129","type":"text","heading":"","plain_text":"# Supprimer le commentaire pour activer l&#39;authentification interactive au clavier PAM\n# Avertissement: l&#39;activation de cette option peut contourner le paramètre &#39;PasswordAuthentication&#39;\n#PAMAuthenticationViaKbdInt yes","html":"<p># Supprimer le commentaire pour activer l&#039;authentification interactive au clavier PAM\n# Avertissement: l&#039;activation de cette option peut contourner le paramètre &#039;PasswordAuthentication&#039;\n#PAMAuthenticationViaKbdInt yes</p>"},{"id":"text-130","type":"text","heading":"","plain_text":"# Pour changer les options de Kerberos\n#KerberosAuthentication no\n#KerberosOrLocalPasswd oui\n#AFSTokenPassing no\n#KerberosTicketCleanup no","html":"<p># Pour changer les options de Kerberos\n#KerberosAuthentication no\n#KerberosOrLocalPasswd oui\n#AFSTokenPassing no\n#KerberosTicketCleanup no</p>"},{"id":"text-131","type":"text","heading":"","plain_text":"# Kerberos TGT Passing ne fonctionne qu&#39;avec le kaserver AFS\n#KerberosTgtPassing oui","html":"<p># Kerberos TGT Passing ne fonctionne qu&#039;avec le kaserver AFS\n#KerberosTgtPassing oui</p>"},{"id":"text-132","type":"text","heading":"","plain_text":"#CheckMail oui\n#UseLogin no","html":"<p>#CheckMail oui\n#UseLogin no</p>"},{"id":"text-133","type":"text","heading":"","plain_text":"#MaxStartups 10:30:60\n#Banner /etc/issue.net\n#ReverseMappingCheck Oui","html":"<p>#MaxStartups 10:30:60\n#Banner /etc/issue.net\n#ReverseMappingCheck Oui</p>"},{"id":"text-134","type":"text","heading":"","plain_text":"Sous-système sftp / usr / libexec / openssh / sftp-server","html":"<p>Sous-système sftp / usr / libexec / openssh / sftp-server</p>"},{"id":"text-135","type":"text","heading":"","plain_text":"Générer des clés système: / etc / ssh /","html":"<p>Générer des clés système: / etc / ssh /</p>"},{"id":"text-136","type":"text","heading":"","plain_text":"ssh-keygen -q -t rsa -f / etc / ssh / ssh_host_rsa_key -C &#39;&#39; -N &#39;&#39;\nssh-keygen -q -t dsa -f / etc / ssh / ssh_host_dsa_key -C &#39;&#39; -N &#39;&#39;\nClés privées générées: chmod 600 / etc / ssh / ssh_host_dsa_key / etc / ssh / ssh_host_rsa_key\nClés publiques générées: chmod 644 /etc/ssh/ssh_host_dsa_key.pub /etc/ssh/ssh_host_rsa_key.pub\nPour SELinux:","html":"<p>ssh-keygen -q -t rsa -f / etc / ssh / ssh_host_rsa_key -C &#039;&#039; -N &#039;&#039;\nssh-keygen -q -t dsa -f / etc / ssh / ssh_host_dsa_key -C &#039;&#039; -N &#039;&#039;\nClés privées générées: chmod 600 / etc / ssh / ssh_host_dsa_key / etc / ssh / ssh_host_rsa_key\nClés publiques générées: chmod 644 /etc/ssh/ssh_host_dsa_key.pub /etc/ssh/ssh_host_rsa_key.pub\nPour SELinux:</p>"},{"id":"text-137","type":"text","heading":"","plain_text":"/ sbin / restorecon /etc/ssh/ssh_host_rsa_key.pub\n / sbin / restorecon /etc/ssh/ssh_host_dsa_key.pub","html":"<p>/ sbin / restorecon /etc/ssh/ssh_host_rsa_key.pub\n / sbin / restorecon /etc/ssh/ssh_host_dsa_key.pub</p>"},{"id":"text-138","type":"text","heading":"","plain_text":"Générer des clés utilisateur:","html":"<p>Générer des clés utilisateur:</p>"},{"id":"text-139","type":"text","heading":"","plain_text":"Client:\n           Utilisez la commande: / usr / bin / ssh-keygen -t rsa","html":"<p>Client:\n           Utilisez la commande: / usr / bin / ssh-keygen -t rsa</p>"},{"id":"text-140","type":"text","heading":"","plain_text":"Génération d&#39;une paire de clés rsa publique / privée.\nEntrez le fichier dans lequel enregistrer la clé (/ home /identifiant d&#39;utilisateur/.ssh/id_rsa):\nEntrez mot de passe (vide pour aucun mot de passe):\nEntrez à nouveau le même mot de passe:\nVotre identification a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.\nVotre clé publique a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.pub.\nL&#39;empreinte digitale clé est:\nXX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX: XX user-id@nom de noeud\n        \n        Fichiers générés:","html":"<p>Génération d&#039;une paire de clés rsa publique / privée.\nEntrez le fichier dans lequel enregistrer la clé (/ home /identifiant d&#039;utilisateur/.ssh/id_rsa):\nEntrez mot de passe (vide pour aucun mot de passe):\nEntrez à nouveau le même mot de passe:\nVotre identification a été enregistrée dans / home /identifiant d&#039;utilisateur/.ssh/id_rsa.\nVotre clé publique a été enregistrée dans / home /identifiant d&#039;utilisateur/.ssh/id_rsa.pub.\nL&#039;empreinte digitale clé est:\nXX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX: XX user-id@nom de noeud\n        \n        Fichiers générés:</p>"},{"id":"text-141","type":"text","heading":"","plain_text":"$ HOME / .ssh / id_rsa            - binaire \n$ HOME / .ssh / id_rsa.pub        - ssh-rsa ... 223564257432 adresse électronique\n                             - Plusieurs clés / lignes autorisées.\n        \n        Options de commande:","html":"<p>$ HOME / .ssh / id_rsa            - binaire \n$ HOME / .ssh / id_rsa.pub        - ssh-rsa ... 223564257432 adresse électronique\n                             - Plusieurs clés / lignes autorisées.\n        \n        Options de commande:</p>"},{"id":"text-142","type":"text","heading":"","plain_text":"-t rsa (pour la version 2 du protocole)\n        \n-t dsa (pour la version 2 du protocole)\n        \n-t rsa1 (pour la version 1 du protocole)\n        \n-b 2048 (spécifie la longueur de la clé en bits)","html":"<p>-t rsa (pour la version 2 du protocole)\n        \n-t dsa (pour la version 2 du protocole)\n        \n-t rsa1 (pour la version 1 du protocole)\n        \n-b 2048 (spécifie la longueur de la clé en bits)</p>"},{"id":"text-143","type":"text","heading":"","plain_text":"Serveur:","html":"<p>Serveur:</p>"},{"id":"text-144","type":"text","heading":"","plain_text":"FTP le fichier $ HOME/.ssh/id_rsa.pub au serveur\n           \ncd $ HOME / .ssh /\n           \ncat id_rsa.pub &gt;&gt; registered_keys2","html":"<p>FTP le fichier $ HOME/.ssh/id_rsa.pub au serveur\n           \ncd $ HOME / .ssh /\n           \ncat id_rsa.pub &gt;&gt; registered_keys2</p>"},{"id":"text-145","type":"text","heading":"","plain_text":"Utilisation de ssh: sur le client, utilisez la commande suivante\n    et connectez-vous comme vous le feriez normalement avec une session telnet:\n          ssh nom-du serveur \n          La première fois que vous utilisez ssh, le message suivant sera envoyé:","html":"<p>Utilisation de ssh: sur le client, utilisez la commande suivante\n    et connectez-vous comme vous le feriez normalement avec une session telnet:\n          ssh nom-du serveur \n          La première fois que vous utilisez ssh, le message suivant sera envoyé:</p>"},{"id":"text-146","type":"text","heading":"","plain_text":"L&#39;authenticité de l&#39;hôte &#39;node.your-domain.com (XXX.XXX.XXX.XXX) &#39;ne peut être établi.\nL&#39;empreinte de la clé RSA est XX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX.\nÊtes-vous sûr de vouloir continuer à vous connecter (oui / non)? Oui\nAttention: ajouté en permanence &#39;node.your-domain.com,XXX.XXX.XXX.XXX&#39;(RSA) à la liste des hôtes connus.\nutilisateur@node.your-domainMot de passe .com:\n    \n    Répondez oui. Il ne demandera plus.","html":"<p>L&#039;authenticité de l&#039;hôte &#039;node.your-domain.com (XXX.XXX.XXX.XXX) &#039;ne peut être établi.\nL&#039;empreinte de la clé RSA est XX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX.\nÊtes-vous sûr de vouloir continuer à vous connecter (oui / non)? Oui\nAttention: ajouté en permanence &#039;node.your-domain.com,XXX.XXX.XXX.XXX&#039;(RSA) à la liste des hôtes connus.\nutilisateur@node.your-domainMot de passe .com:\n    \n    Répondez oui. Il ne demandera plus.</p>"},{"id":"text-147","type":"text","heading":"","plain_text":"Pour utiliser un nom d&#39;utilisateur différent pour la connexion, indiquez-le sur la ligne de commande:\n    ssh -l nom d&#39;utilisateur nom du serveur","html":"<p>Pour utiliser un nom d&#039;utilisateur différent pour la connexion, indiquez-le sur la ligne de commande:\n    ssh -l nom d&#039;utilisateur nom du serveur</p>"},{"id":"text-148","type":"text","heading":"","plain_text":"Note: Vous pouvez maintenant aussi utiliser la commande sftp pour des transferts de fichiers ftp sécurisés avec ssh.","html":"<p>Note: Vous pouvez maintenant aussi utiliser la commande sftp pour des transferts de fichiers ftp sécurisés avec ssh.</p>"},{"id":"text-149","type":"text","heading":"","plain_text":"OpenSSH Man Pages:","html":"<p>OpenSSH Man Pages:</p>"},{"id":"text-150","type":"text","heading":"","plain_text":"ssh &#8211; Client OpenSSH SSH (programme de connexion à distance)\n        \nsshd &#8211; démon OpenSSH ssh\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh_config &#8211; Fichier de configuration du client OpenSSH SSH\n        \nsshd_config &#8211; Fichier de configuration du démon OpenSSH SSH\n        \nssh-add &#8211; ajoute les identités RSA ou DSA pour l&#39;agent d&#39;authentification. Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nssh-agent &#8211; agent d&#39;authentification\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \nsftp &#8211; Programme de transfert de fichiers sécurisé\n        \nsftp-server &#8211; sous-système de serveur SFTP","html":"<p>ssh &#8211; Client OpenSSH SSH (programme de connexion à distance)\n        \nsshd &#8211; démon OpenSSH ssh\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#039;hôte et clés d&#039;authentification d&#039;utilisateur)\n        \nssh_config &#8211; Fichier de configuration du client OpenSSH SSH\n        \nsshd_config &#8211; Fichier de configuration du démon OpenSSH SSH\n        \nssh-add &#8211; ajoute les identités RSA ou DSA pour l&#039;agent d&#039;authentification. Utilisé pour enregistrer de nouvelles clés avec l&#039;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nssh-agent &#8211; agent d&#039;authentification\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#039;authentification.\n        \nsftp &#8211; Programme de transfert de fichiers sécurisé\n        \nsftp-server &#8211; sous-système de serveur SFTP</p>"},{"id":"text-151","type":"text","heading":"","plain_text":"Autres liens OpenSSH:\n      \nSSH pour les liens MS / Windows:\n      \nNotes SSH:","html":"<p>Autres liens OpenSSH:\n      \nSSH pour les liens MS / Windows:\n      \nNotes SSH:</p>"},{"id":"text-152","type":"text","heading":"","plain_text":"Le sshd ne doit pas être démarré avec xinetd / inetd en raison du temps nécessaire pour effectuer\n    calculs quand il est initialisé.\n        \nLe client ssh va rechercher la racine. sshd sur le serveur est exécuté en tant que root.\n    Les privilèges root sont nécessaires pour communiquer sur les ports inférieurs à 1024.\n    L&#39;option -p peut être utilisée pour exécuter SSH sur un autre port.\n        \n    RSA est utilisé pour l&#39;échange de clés et un chiffrement conventionnel (Blowfish par défaut)\n    est utilisé pour chiffrer la session.\n        \nLe cryptage est démarré avant l’authentification, et aucun mot de passe ou autre\n    l&#39;information est transmise en clair.\n        \nAuthentification:","html":"<p>Le sshd ne doit pas être démarré avec xinetd / inetd en raison du temps nécessaire pour effectuer\n    calculs quand il est initialisé.\n        \nLe client ssh va rechercher la racine. sshd sur le serveur est exécuté en tant que root.\n    Les privilèges root sont nécessaires pour communiquer sur les ports inférieurs à 1024.\n    L&#039;option -p peut être utilisée pour exécuter SSH sur un autre port.\n        \n    RSA est utilisé pour l&#039;échange de clés et un chiffrement conventionnel (Blowfish par défaut)\n    est utilisé pour chiffrer la session.\n        \nLe cryptage est démarré avant l’authentification, et aucun mot de passe ou autre\n    l&#039;information est transmise en clair.\n        \nAuthentification:</p>"},{"id":"text-153","type":"text","heading":"","plain_text":"La connexion est appelée par l&#39;utilisateur.\n              Le client indique au serveur la clé publique que l&#39;utilisateur souhaite utiliser.\n              utiliser pour l&#39;authentification.\n          \nLe serveur vérifie ensuite si cette clé publique est admissible.\n               Si oui, un nombre aléatoire est généré et crypté avec le public\n               clé et envoie la valeur au client.\n           \nLe client déchiffre ensuite le numéro avec sa clé privée et calcule une\n               somme de contrôle. La somme de contrôle est renvoyée au serveur\n           \nLe serveur calcule une somme de contrôle à partir des données et compare les sommes de contrôle.\n           \n    L&#39;authentification est acceptée si les sommes de contrôle correspondent.","html":"<p>La connexion est appelée par l&#039;utilisateur.\n              Le client indique au serveur la clé publique que l&#039;utilisateur souhaite utiliser.\n              utiliser pour l&#039;authentification.\n          \nLe serveur vérifie ensuite si cette clé publique est admissible.\n               Si oui, un nombre aléatoire est généré et crypté avec le public\n               clé et envoie la valeur au client.\n           \nLe client déchiffre ensuite le numéro avec sa clé privée et calcule une\n               somme de contrôle. La somme de contrôle est renvoyée au serveur\n           \nLe serveur calcule une somme de contrôle à partir des données et compare les sommes de contrôle.\n           \n    L&#039;authentification est acceptée si les sommes de contrôle correspondent.</p>"},{"id":"text-154","type":"text","heading":"","plain_text":"SSH utilisera $ HOME / .rhosts (ou $ HOME / .shosts)\n        \nPour établir une connexion réseau sécurisée sur un autre port TCP, utilisez\n            Options &quot;tunneling&quot; avec la commande ssh:","html":"<p>SSH utilisera $ HOME / .rhosts (ou $ HOME / .shosts)\n        \nPour établir une connexion réseau sécurisée sur un autre port TCP, utilisez\n            Options &quot;tunneling&quot; avec la commande ssh:</p>"},{"id":"text-155","type":"text","heading":"","plain_text":"Transférer le port local TCP vers hostport sur l&#39;hôte distant:\n              ssh hôte distant -L Port: localhost:commande hostport","html":"<p>Transférer le port local TCP vers hostport sur l&#039;hôte distant:\n              ssh hôte distant -L Port: localhost:commande hostport</p>"},{"id":"text-156","type":"text","heading":"","plain_text":"Spécifier des ports inférieurs à 1024 nécessitera un accès root.\n          FTP ouvre plusieurs ports et n’est donc pas un bon candidat. Le port 21 est seulement\n          utilisé pour établir la connexion.","html":"<p>Spécifier des ports inférieurs à 1024 nécessitera un accès root.\n          FTP ouvre plusieurs ports et n’est donc pas un bon candidat. Le port 21 est seulement\n          utilisé pour établir la connexion.</p>"},{"id":"text-157","type":"text","heading":"","plain_text":"Pages de manuel:","html":"<p>Pages de manuel:</p>"},{"id":"text-158","type":"text","heading":"","plain_text":"ssh &#8211; client shell sécurisé (programme de connexion à distance)\n        \nsshd &#8211; démon shell sécurisé (serveur)\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh-keyscan &#8211; récupère les clés publiques ssh\n        \nssh-add &#8211; ajoute des identités pour l&#39;agent d&#39;authentification Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nslogin\n        \nsftp &#8211; client du programme de transfert de fichiers sécurisé.\n        \nsftp-server &#8211; serveur de programme de transfert de fichiers sécurisé.\n        \nssh-agent &#8211; Agent d&#39;authentification.\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \ntelnet &#8211; interface utilisateur avec le protocole TELNET","html":"<p>ssh &#8211; client shell sécurisé (programme de connexion à distance)\n        \nsshd &#8211; démon shell sécurisé (serveur)\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#039;hôte et clés d&#039;authentification d&#039;utilisateur)\n        \nssh-keyscan &#8211; récupère les clés publiques ssh\n        \nssh-add &#8211; ajoute des identités pour l&#039;agent d&#039;authentification Utilisé pour enregistrer de nouvelles clés avec l&#039;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nslogin\n        \nsftp &#8211; client du programme de transfert de fichiers sécurisé.\n        \nsftp-server &#8211; serveur de programme de transfert de fichiers sécurisé.\n        \nssh-agent &#8211; Agent d&#039;authentification.\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#039;authentification.\n        \ntelnet &#8211; interface utilisateur avec le protocole TELNET</p>"},{"id":"text-159","type":"text","heading":"","plain_text":"Documentation:","html":"<p>Documentation:</p>"},{"id":"text-160","type":"text","heading":"","plain_text":"/ usr / share / doc / openssh-XXX /\n        \n/ usr / share / doc / openssh-askpass-XXX /\n        \n/usr/share/doc/openssl-0.XXX/","html":"<p>/ usr / share / doc / openssh-XXX /\n        \n/ usr / share / doc / openssh-askpass-XXX /\n        \n/usr/share/doc/openssl-0.XXX/</p>"},{"id":"text-161","type":"text","heading":"","plain_text":"Tester:\n      \nLe renifleur de réseau Ethereal (maintenant Wireshark) était utilisé pour renifler les transmissions réseau\nentre le client et le serveur pour telnet et ssh\navec les résultats suivants:","html":"<p>Tester:\n      \nLe renifleur de réseau Ethereal (maintenant Wireshark) était utilisé pour renifler les transmissions réseau\nentre le client et le serveur pour telnet et ssh\navec les résultats suivants:</p>"},{"id":"text-162","type":"text","heading":"","plain_text":"Testez la connexion telnet en texte clair: (port 23)\n             Le texte envoyé par le client est un texte vert sur fond noir.\n             Le reste du texte a été transmis par le serveur.\n             Notez que l&#39;identifiant (&quot;JoeUser&quot;) et le mot de passe (&quot;super-secret-password&quot;) ont été capturés.","html":"<p>Testez la connexion telnet en texte clair: (port 23)\n             Le texte envoyé par le client est un texte vert sur fond noir.\n             Le reste du texte a été transmis par le serveur.\n             Notez que l&#039;identifiant (&quot;JoeUser&quot;) et le mot de passe (&quot;super-secret-password&quot;) ont été capturés.</p>"},{"id":"text-163","type":"text","heading":"","plain_text":"Testez la connexion cryptée ssh: (port 22)\n            Notez que tout l’échange de login et de mot de passe était crypté.","html":"<p>Testez la connexion cryptée ssh: (port 22)\n            Notez que tout l’échange de login et de mot de passe était crypté.</p>"},{"id":"text-164","type":"text","heading":"","plain_text":"Fail2ban: bloquer les connexions échouées répétées","html":"<p>Fail2ban: bloquer les connexions échouées répétées</p>"},{"id":"text-165","type":"text","heading":"","plain_text":"Tout site sur Internet public sera soumis à des attaques par mots de passe dictionnaires, essayant constamment de nouveaux mots, séquences de mots et séquences ASCII à partir de programmes d&#39;attaque automatisés provenant de serveurs compromis.\nUtilisez fail2ban pour bloquer ces tentatives.\nFail2ban examinera les fichiers journaux pour rechercher les tentatives de connexion infructueuses répétées et bloquera de manière temporaire ou permanente les adresses IP du système attaquant.\nLa configuration par défaut de fail2ban examine le fichier journal sshd. / var / log / secure pour trouver le système attaquant et autorisera 5 tentatives de connexion infructueuses avant le blocage pendant 600 secondes (10 minutes).","html":"<p>Tout site sur Internet public sera soumis à des attaques par mots de passe dictionnaires, essayant constamment de nouveaux mots, séquences de mots et séquences ASCII à partir de programmes d&#039;attaque automatisés provenant de serveurs compromis.\nUtilisez fail2ban pour bloquer ces tentatives.\nFail2ban examinera les fichiers journaux pour rechercher les tentatives de connexion infructueuses répétées et bloquera de manière temporaire ou permanente les adresses IP du système attaquant.\nLa configuration par défaut de fail2ban examine le fichier journal sshd. / var / log / secure pour trouver le système attaquant et autorisera 5 tentatives de connexion infructueuses avant le blocage pendant 600 secondes (10 minutes).</p>"},{"id":"text-166","type":"text","heading":"","plain_text":"Fail2ban peut être configuré pour surveiller les processus suivants:","html":"<p>Fail2ban peut être configuré pour surveiller les processus suivants:</p>"},{"id":"text-167","type":"text","heading":"","plain_text":"sshd","html":"<p>sshd</p>"},{"id":"text-168","type":"text","heading":"","plain_text":"smtp","html":"<p>smtp</p>"},{"id":"text-169","type":"text","heading":"","plain_text":"Apache httpd","html":"<p>Apache httpd</p>"},{"id":"text-170","type":"text","heading":"","plain_text":"lumière","html":"<p>lumière</p>"},{"id":"text-171","type":"text","heading":"","plain_text":"vsftpd","html":"<p>vsftpd</p>"},{"id":"text-172","type":"text","heading":"","plain_text":"postfix","html":"<p>postfix</p>"},{"id":"text-173","type":"text","heading":"","plain_text":"bind9 nommé","html":"<p>bind9 nommé</p>"},{"id":"text-174","type":"text","heading":"","plain_text":"mysqld","html":"<p>mysqld</p>"},{"id":"text-175","type":"text","heading":"","plain_text":"astérisque","html":"<p>astérisque</p>"},{"id":"text-176","type":"text","heading":"","plain_text":"&#8230;","html":"<p>&#8230;</p>"},{"id":"text-177","type":"text","heading":"","plain_text":"Installation:","html":"<p>Installation:</p>"},{"id":"text-178","type":"text","heading":"","plain_text":"Chapeau rouge: yum installer fail2ban","html":"<p>Chapeau rouge: yum installer fail2ban</p>"},{"id":"text-179","type":"text","heading":"","plain_text":"Ubuntu: sudo apt-get install fail2ban","html":"<p>Ubuntu: sudo apt-get install fail2ban</p>"},{"id":"text-180","type":"text","heading":"","plain_text":"Configuration:","html":"<p>Configuration:</p>"},{"id":"text-181","type":"text","heading":"","plain_text":"/etc/fail2ban/fail2ban.conf","html":"<p>/etc/fail2ban/fail2ban.conf</p>"},{"id":"text-182","type":"text","heading":"","plain_text":"[Definition]","html":"<p>[Definition]</p>"},{"id":"text-183","type":"text","heading":"","plain_text":"# 1 = ERREUR\n# 2 = WARN\n# 3 = INFO\n# 4 = DEBUG\nloglevel = 3","html":"<p># 1 = ERREUR\n# 2 = WARN\n# 3 = INFO\n# 4 = DEBUG\nloglevel = 3</p>"},{"id":"text-184","type":"text","heading":"","plain_text":"# Values: fichier STDOUT STDERR SYSLOG Par défaut: /var/log/fail2ban.log\n# Une seule cible de journal peut être spécifiée.\nlogtarget = SYSLOG","html":"<p># Values: fichier STDOUT STDERR SYSLOG Par défaut: /var/log/fail2ban.log\n# Une seule cible de journal peut être spécifiée.\nlogtarget = SYSLOG</p>"},{"id":"text-185","type":"text","heading":"","plain_text":"socket = /var/run/fail2ban/fail2ban.sock\npidfile = /var/run/fail2ban/fail2ban.pid","html":"<p>socket = /var/run/fail2ban/fail2ban.sock\npidfile = /var/run/fail2ban/fail2ban.pid</p>"},{"id":"text-186","type":"text","heading":"","plain_text":"/etc/fail2ban/jail.conf (souvent copié dans jail.local et édité pour les directives locales)","html":"<p>/etc/fail2ban/jail.conf (souvent copié dans jail.local et édité pour les directives locales)</p>"},{"id":"text-187","type":"text","heading":"","plain_text":"[DEFAULT]","html":"<p>[DEFAULT]</p>"},{"id":"text-188","type":"text","heading":"","plain_text":"ignoreip = 127.0.0.1/8\nbantime = 3600\nfindtime = 600\nmaxretry = 3\nbackend = auto\nusedns = non","html":"<p>ignoreip = 127.0.0.1/8\nbantime = 3600\nfindtime = 600\nmaxretry = 3\nbackend = auto\nusedns = non</p>"},{"id":"text-189","type":"text","heading":"","plain_text":"[ssh-iptables]\nenabled = true\nfiltre = sshd\naction = iptables[name=SSH, port=ssh, protocol=tcp]\n           sendmail-whois[name=SSH, dest=root, sender=user@megacorp.com]\nlogpath = / var / log / secure\nmaxretry = 3","html":"<p>[ssh-iptables]\nenabled = true\nfiltre = sshd\naction = iptables[name=SSH, port=ssh, protocol=tcp]\n           sendmail-whois[name=SSH, dest=root, sender=user@megacorp.com]\nlogpath = / var / log / secure\nmaxretry = 3</p>"},{"id":"text-190","type":"text","heading":"","plain_text":"Remarque: si votre serveur est attaqué, fail2ban peut livrer beaucoup de courrier électronique. Vous voudrez peut-être enlever le sendmail-whois déclaration.\n    [DEFAULT]    directives:","html":"<p>Remarque: si votre serveur est attaqué, fail2ban peut livrer beaucoup de courrier électronique. Vous voudrez peut-être enlever le sendmail-whois déclaration.\n    [DEFAULT]    directives:</p>"},{"id":"text-191","type":"text","heading":"","plain_text":"Directif\nLa description","html":"<p>Directif\nLa description</p>"},{"id":"text-192","type":"text","heading":"","plain_text":"ignorer\nLes adresses IP à ne jamais interdire, comme votre système de passerelle. Plusieurs IP sont séparées par un espace. Ceci est votre liste blanche. Valeur par défaut 127.0.0.1 (localhost)","html":"<p>ignorer\nLes adresses IP à ne jamais interdire, comme votre système de passerelle. Plusieurs IP sont séparées par un espace. Ceci est votre liste blanche. Valeur par défaut 127.0.0.1 (localhost)</p>"},{"id":"text-193","type":"text","heading":"","plain_text":"trouver le temps\npériode au cours de laquelle l&#39;échec se produit. Par exemple, 600 fait référence au nombre maximal d&#39;échecs survenant pendant cette période de recherche sera banni. 600 secondes par défaut","html":"<p>trouver le temps\npériode au cours de laquelle l&#039;échec se produit. Par exemple, 600 fait référence au nombre maximal d&#039;échecs survenant pendant cette période de recherche sera banni. 600 secondes par défaut</p>"},{"id":"text-194","type":"text","heading":"","plain_text":"maxretry\nspécifier le nombre d&#39;échecs avant qu&#39;une adresse IP ne soit bannie. Par défaut 3","html":"<p>maxretry\nspécifier le nombre d&#039;échecs avant qu&#039;une adresse IP ne soit bannie. Par défaut 3</p>"},{"id":"text-195","type":"text","heading":"","plain_text":"bantime\nnombre de secondes qu&#39;une adresse IP est bannie","html":"<p>bantime\nnombre de secondes qu&#039;une adresse IP est bannie</p>"},{"id":"text-196","type":"text","heading":"","plain_text":"activée\ntrue = surveiller le processus spécifié. false pour aucune surveillance. La valeur par défaut n&#39;est vraie que pour sshd","html":"<p>activée\ntrue = surveiller le processus spécifié. false pour aucune surveillance. La valeur par défaut n&#039;est vraie que pour sshd</p>"},{"id":"text-197","type":"text","heading":"","plain_text":"Redémarrez après avoir modifié la configuration: service sudo fail2ban redémarrer","html":"<p>Redémarrez après avoir modifié la configuration: service sudo fail2ban redémarrer</p>"},{"id":"text-198","type":"text","heading":"","plain_text":"Configurez init pour démarrer fail2ban au démarrage: sudo chkconfig --level 345 fail2ban on","html":"<p>Configurez init pour démarrer fail2ban au démarrage: sudo chkconfig --level 345 fail2ban on</p>"},{"id":"text-199","type":"text","heading":"","plain_text":"Voir aussi le fichier journal: / var / log / messages","html":"<p>Voir aussi le fichier journal: / var / log / messages</p>"},{"id":"text-200","type":"text","heading":"","plain_text":"Vérifiez le blocage des pirates informatiques:\nAffichez les règles de pare-feu générées par les connexions ayant échoué:","html":"<p>Vérifiez le blocage des pirates informatiques:\nAffichez les règles de pare-feu générées par les connexions ayant échoué:</p>"},{"id":"text-201","type":"text","heading":"","plain_text":"[host]# iptables -L\nChaîne INPUT (politique ACCEPT)\ncible cible source opt opt\nfail2ban-SSH tcp - n&#39;importe où n&#39;importe où tcp dpt: ssh","html":"<p>[host]# iptables -L\nChaîne INPUT (politique ACCEPT)\ncible cible source opt opt\nfail2ban-SSH tcp - n&#039;importe où n&#039;importe où tcp dpt: ssh</p>"},{"id":"text-202","type":"text","heading":"","plain_text":"Chaîne À SUIVRE (politique ACCEPTER)\ncible cible source opt opt","html":"<p>Chaîne À SUIVRE (politique ACCEPTER)\ncible cible source opt opt</p>"},{"id":"text-203","type":"text","heading":"","plain_text":"Chaîne OUTPUT (politique ACCEPT)\ncible cible source opt opt","html":"<p>Chaîne OUTPUT (politique ACCEPT)\ncible cible source opt opt</p>"},{"id":"text-204","type":"text","heading":"","plain_text":"Chain fail2ban-SSH (1 références)\ncible cible source opt opt\nREJETTEZ tous - 122.189.194.238 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJET tout - 183.94.11.208 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJETER tout - 58.218.204.132 n&#39;importe où rejetez-avec icmp-port-inaccessible\nRETOURNEZ tout - n&#39;importe où","html":"<p>Chain fail2ban-SSH (1 références)\ncible cible source opt opt\nREJETTEZ tous - 122.189.194.238 n&#039;importe où rejetez-avec icmp-port-inaccessible\nREJET tout - 183.94.11.208 n&#039;importe où rejetez-avec icmp-port-inaccessible\nREJETER tout - 58.218.204.132 n&#039;importe où rejetez-avec icmp-port-inaccessible\nRETOURNEZ tout - n&#039;importe où</p>"},{"id":"text-205","type":"text","heading":"","plain_text":"Vérifier le statut fail2ban:\nAfficher le statut de sshd fail2ban:","html":"<p>Vérifier le statut fail2ban:\nAfficher le statut de sshd fail2ban:</p>"},{"id":"text-206","type":"text","heading":"","plain_text":"[host]# fail2ban-client status\nStatut\n| - Nombre de prison: 1\n`- Liste de prison: ssh-iptables","html":"<p>[host]# fail2ban-client status\nStatut\n| - Nombre de prison: 1\n`- Liste de prison: ssh-iptables</p>"},{"id":"text-207","type":"text","heading":"","plain_text":"[host]# fail2ban-client status ssh-iptables\nStatut de la prison: ssh-iptables\n| - filtre\n| | - Liste de fichiers: / var / log / secure\n| | - Échec actuel: 0\n| `- Total échoué: 102\n`- action\n   | - Actuellement banni: 3\n   | `- Liste IP: 122.189.194.238 183.94.11.208 58.218.204.132\n   `- Total interdit: 26","html":"<p>[host]# fail2ban-client status ssh-iptables\nStatut de la prison: ssh-iptables\n| - filtre\n| | - Liste de fichiers: / var / log / secure\n| | - Échec actuel: 0\n| `- Total échoué: 102\n`- action\n   | - Actuellement banni: 3\n   | `- Liste IP: 122.189.194.238 183.94.11.208 58.218.204.132\n   `- Total interdit: 26</p>"},{"id":"text-208","type":"text","heading":"","plain_text":"Liens:\nrssh: shell restreint à utiliser avec OpenSSH sftp","html":"<p>Liens:\nrssh: shell restreint à utiliser avec OpenSSH sftp</p>"},{"id":"text-209","type":"text","heading":"","plain_text":"FTP utilise un accès en texte clair à votre serveur. Cela convient si tous les systèmes du centre de données sont sécurisés et que personne ne peut renifler le réseau.\nLes configurations de routeur et de commutateur rendent pratiquement impossible le reniflage de la plupart des réseaux de nos jours, mais des problèmes de sécurité au niveau du centre de données sur un autre serveur peuvent entraîner des problèmes pour vos serveurs si vous autorisez les mots de passe non chiffrés utilisés par FTP.","html":"<p>FTP utilise un accès en texte clair à votre serveur. Cela convient si tous les systèmes du centre de données sont sécurisés et que personne ne peut renifler le réseau.\nLes configurations de routeur et de commutateur rendent pratiquement impossible le reniflage de la plupart des réseaux de nos jours, mais des problèmes de sécurité au niveau du centre de données sur un autre serveur peuvent entraîner des problèmes pour vos serveurs si vous autorisez les mots de passe non chiffrés utilisés par FTP.</p>"},{"id":"text-210","type":"text","heading":"","plain_text":"VsFTPd permet également de limiter la vue du système de fichiers à ses propres répertoires.\nC&#39;est bon. OpenSSH &quot;sftp&quot; ne fournit pas cette fonctionnalité (jusqu&#39;à la version 4.9. RHEL / CentOS 5 utilisait OpenSSH 4.3).\nLe transfert de fichier &quot;sftp&quot; crypte les mots de passe (bien) mais nécessite également un accès shell (bash, csh, &#8230;) pour le compte permettant un accès complet au système de fichiers (mauvais).\nle rssh shell peut être utilisé avec sftp, scp, cvs, rsync, et rédiger et peuvent chrooter les utilisateurs vers leurs propres répertoires et limiter la fonction à un accès sftp uniquement (refuser l&#39;accès au shell complet).","html":"<p>VsFTPd permet également de limiter la vue du système de fichiers à ses propres répertoires.\nC&#039;est bon. OpenSSH &quot;sftp&quot; ne fournit pas cette fonctionnalité (jusqu&#039;à la version 4.9. RHEL / CentOS 5 utilisait OpenSSH 4.3).\nLe transfert de fichier &quot;sftp&quot; crypte les mots de passe (bien) mais nécessite également un accès shell (bash, csh, &#8230;) pour le compte permettant un accès complet au système de fichiers (mauvais).\nle rssh shell peut être utilisé avec sftp, scp, cvs, rsync, et rédiger et peuvent chrooter les utilisateurs vers leurs propres répertoires et limiter la fonction à un accès sftp uniquement (refuser l&#039;accès au shell complet).</p>"},{"id":"text-211","type":"text","heading":"","plain_text":"Pour les systèmes plus récents (RHEL6 / CentOS6 / Fedora 11) avec OpenSSH 4.9+, voir la configuration sftp chrootée préférée pour OpenSSH 4.9+.","html":"<p>Pour les systèmes plus récents (RHEL6 / CentOS6 / Fedora 11) avec OpenSSH 4.9+, voir la configuration sftp chrootée préférée pour OpenSSH 4.9+.</p>"},{"id":"text-212","type":"text","heading":"","plain_text":"La solution est d&#39;utiliser rssh en tant que shell avec OpenSSH &quot;sftp&quot;:\nInstallation: rpm -ivh rssh-2.3.2-1.2.el5.rf.x86_64.rpm\nCela installe:","html":"<p>La solution est d&#039;utiliser rssh en tant que shell avec OpenSSH &quot;sftp&quot;:\nInstallation: rpm -ivh rssh-2.3.2-1.2.el5.rf.x86_64.rpm\nCela installe:</p>"},{"id":"text-213","type":"text","heading":"","plain_text":"/ usr / bin / rssh","html":"<p>/ usr / bin / rssh</p>"},{"id":"text-214","type":"text","heading":"","plain_text":"/etc/rssh.conf","html":"<p>/etc/rssh.conf</p>"},{"id":"text-215","type":"text","heading":"","plain_text":"aussi programme de soutien / usr / libexec / rssh_chroot_helper et pages de manuel","html":"<p>aussi programme de soutien / usr / libexec / rssh_chroot_helper et pages de manuel</p>"},{"id":"text-216","type":"text","heading":"","plain_text":"Vérifiez la configuration installée: rssh -v\nConfiguration:","html":"<p>Vérifiez la configuration installée: rssh -v\nConfiguration:</p>"},{"id":"text-217","type":"text","heading":"","plain_text":"Configuration OpenSSH: / etc / ssh / sshd_config","html":"<p>Configuration OpenSSH: / etc / ssh / sshd_config</p>"},{"id":"text-218","type":"text","heading":"","plain_text":"...","html":"<p>...</p>"},{"id":"text-219","type":"text","heading":"","plain_text":"PermitUserEnvironment no","html":"<p>PermitUserEnvironment no</p>"},{"id":"text-220","type":"text","heading":"","plain_text":"...","html":"<p>...</p>"},{"id":"text-221","type":"text","heading":"","plain_text":"Sous-système sftp / usr / libexec / openssh / sftp-server","html":"<p>Sous-système sftp / usr / libexec / openssh / sftp-server</p>"},{"id":"text-222","type":"text","heading":"","plain_text":"...\n    \nNote de sécurité: Soyez également conscient du réglage AllowTcpForwarding qui contrôle la redirection de port.","html":"<p>...\n    \nNote de sécurité: Soyez également conscient du réglage AllowTcpForwarding qui contrôle la redirection de port.</p>"},{"id":"text-223","type":"text","heading":"","plain_text":"Ajouter shell à la liste des shell utilisables: / etc / shells","html":"<p>Ajouter shell à la liste des shell utilisables: / etc / shells</p>"},{"id":"text-224","type":"text","heading":"","plain_text":"/ bin / sh\n/ bin / bash\n/ sbin / nologin\n/ bin / tcsh\n/ bin / csh\n/ bin / ksh\n/ bin / zsh\n/ opt / bin / ftponly\n/ usr / bin / rssh\n    \nUbuntu: Vous pouvez utiliser la commande: add-shell / usr / bin / rssh","html":"<p>/ bin / sh\n/ bin / bash\n/ sbin / nologin\n/ bin / tcsh\n/ bin / csh\n/ bin / ksh\n/ bin / zsh\n/ opt / bin / ftponly\n/ usr / bin / rssh\n    \nUbuntu: Vous pouvez utiliser la commande: add-shell / usr / bin / rssh</p>"},{"id":"text-225","type":"text","heading":"","plain_text":"Changer le shell de l&#39;utilisateur en rssh (choisissez une méthode)","html":"<p>Changer le shell de l&#039;utilisateur en rssh (choisissez une méthode)</p>"},{"id":"text-226","type":"text","heading":"","plain_text":"Autoriser l&#39;exécution à: chmod u / s / usr / libexec / rssh_chroot_helper\n    Cela empêche l’erreur suivante dans / var / log / messages","html":"<p>Autoriser l&#039;exécution à: chmod u / s / usr / libexec / rssh_chroot_helper\n    Cela empêche l’erreur suivante dans / var / log / messages</p>"},{"id":"text-227","type":"text","heading":"","plain_text":"20 déc. 00:23:44 nodex rssh_chroot_helper[27450]: chroot () a échoué, 2: opération non autorisée","html":"<p>20 déc. 00:23:44 nodex rssh_chroot_helper[27450]: chroot () a échoué, 2: opération non autorisée</p>"},{"id":"text-228","type":"text","heading":"","plain_text":"Définir l&#39;accès pour rssh: /etc/rssh.conf","html":"<p>Définir l&#039;accès pour rssh: /etc/rssh.conf</p>"},{"id":"text-229","type":"text","heading":"","plain_text":"logfacility = LOG_USER\npermetftp\numask = 022\n#chrootpath = / users / chroot","html":"<p>logfacility = LOG_USER\npermetftp\numask = 022\n#chrootpath = / users / chroot</p>"},{"id":"text-230","type":"text","heading":"","plain_text":"utilisateur = &quot;utilisateur1: 022: 00010: / home /utilisateur1&quot;\n    \n    Global security allowable options include: allowscp, allowcvs, allowrdist, allowrsync\n    Specify global chroot or omit for none.\n    Specific user security:","html":"<p>utilisateur = &quot;utilisateur1: 022: 00010: / home /utilisateur1&quot;\n    \n    Global security allowable options include: allowscp, allowcvs, allowrdist, allowrsync\n    Specify global chroot or omit for none.\n    Specific user security:</p>"},{"id":"text-231","type":"text","heading":"","plain_text":"User login id\n    \nFirst set of three number represent the umask\n    \nSecond set of five number represent the bitmask to allow","html":"<p>User login id\n    \nFirst set of three number represent the umask\n    \nSecond set of five number represent the bitmask to allow</p>"},{"id":"text-232","type":"text","heading":"","plain_text":"1\n1\n1\n1\n1","html":"<p>1\n1\n1\n1\n1</p>"},{"id":"text-233","type":"text","heading":"","plain_text":"rsync\nrdist\ncvs\nsftp\nscp","html":"<p>rsync\nrdist\ncvs\nsftp\nscp</p>"},{"id":"text-234","type":"text","heading":"","plain_text":"Specify the global chrooted directory for all using rssh. If omitted, then not chrooted. Can be overwritten by user configuration.","html":"<p>Specify the global chrooted directory for all using rssh. If omitted, then not chrooted. Can be overwritten by user configuration.</p>"},{"id":"text-235","type":"text","heading":"","plain_text":"Note: User configuration overrides the shared chroot settings. Omitted user settings do not default to shared chroot settings.","html":"<p>Note: User configuration overrides the shared chroot settings. Omitted user settings do not default to shared chroot settings.</p>"},{"id":"text-236","type":"text","heading":"","plain_text":"Configuring the chrooted directory:\n        This is true for a global user chroot or individual chroot.\n        In this example we will show a user chrooted to their own home directory /home/user1. When chrooted, the user does not have access to the rest of the filesystem and thus is blind to all of its executables and libraries.\n        It will therefore be necessary to copy local executables and libraries for their local use.","html":"<p>Configuring the chrooted directory:\n        This is true for a global user chroot or individual chroot.\n        In this example we will show a user chrooted to their own home directory /home/user1. When chrooted, the user does not have access to the rest of the filesystem and thus is blind to all of its executables and libraries.\n        It will therefore be necessary to copy local executables and libraries for their local use.</p>"},{"id":"text-237","type":"text","heading":"","plain_text":"La description\nUser directory\nSystem equivalent","html":"<p>La description\nUser directory\nSystem equivalent</p>"},{"id":"text-238","type":"text","heading":"","plain_text":"System devices\n/home/user1/dev\n/dev","html":"<p>System devices\n/home/user1/dev\n/dev</p>"},{"id":"text-239","type":"text","heading":"","plain_text":"Configuration files\n/home/user1/etc\n/etc/etc/ld.so.cache /etc/ld.so.cache.d/*/etc/ld.so.conf - dynamic linker configuration/etc/nsswitch.conf/etc/passwd/etc/group/etc/hosts/etc/resolv.conf","html":"<p>Configuration files\n/home/user1/etc\n/etc/etc/ld.so.cache /etc/ld.so.cache.d/*/etc/ld.so.conf - dynamic linker configuration/etc/nsswitch.conf/etc/passwd/etc/group/etc/hosts/etc/resolv.conf</p>"},{"id":"text-240","type":"text","heading":"","plain_text":"Shared libraries (32 and 64 bit)\n/home/user1/lib/home/user1/lib64\n/lib/lib64","html":"<p>Shared libraries (32 and 64 bit)\n/home/user1/lib/home/user1/lib64\n/lib/lib64</p>"},{"id":"text-241","type":"text","heading":"","plain_text":"Executables and libraries\n/home/user1/usr\n/usr/usr/libexec/openssh/sftp-server/usr/libexec/rssh_chroot_helper","html":"<p>Executables and libraries\n/home/user1/usr\n/usr/usr/libexec/openssh/sftp-server/usr/libexec/rssh_chroot_helper</p>"},{"id":"text-242","type":"text","heading":"","plain_text":"Executables\n/home/user1/bin\n/bin","html":"<p>Executables\n/home/user1/bin\n/bin</p>"},{"id":"text-243","type":"text","heading":"","plain_text":"Use script to add chroot required files: /opt/bin/userchroot","html":"<p>Use script to add chroot required files: /opt/bin/userchroot</p>"},{"id":"text-244","type":"text","heading":"","plain_text":"#!/bin/bash\n# First and only argument ($1) is user id\nsi [ -d /home/$1 ];\npuis\n   USERDIR=/home/$1\nautre\n   echo &quot;Error: Directory /home/$1 does not exist&quot;\n   sortie\nFi","html":"<p>#!/bin/bash\n# First and only argument ($1) is user id\nsi [ -d /home/$1 ];\npuis\n   USERDIR=/home/$1\nautre\n   echo &quot;Error: Directory /home/$1 does not exist&quot;\n   sortie\nFi</p>"},{"id":"text-245","type":"text","heading":"","plain_text":"mkdir $USERDIR/etc\nmkdir $USERDIR/lib\nmkdir -p $USERDIR/usr/libexec/openssh\nmkdir -p $USERDIR/var/log\nmkdir $USERDIR/dev\nmknod -m 666 $USERDIR/dev/null c 1 3","html":"<p>mkdir $USERDIR/etc\nmkdir $USERDIR/lib\nmkdir -p $USERDIR/usr/libexec/openssh\nmkdir -p $USERDIR/var/log\nmkdir $USERDIR/dev\nmknod -m 666 $USERDIR/dev/null c 1 3</p>"},{"id":"text-246","type":"text","heading":"","plain_text":"cp -p /etc/ld.so.cache $USERDIR/etc\n# If directory exists\nsi [ -d /etc/ld.so.cache.d ];\npuis\n   cp -avRp /etc/ld.so.cache.d $USERDIR/etc\nFi\ngrep $1 /etc/passwd  &gt; $USERDIR/etc/passwd\ncp -p  /etc/ld.so.conf    $USERDIR/etc\ncp -p  /etc/nsswitch.conf $USERDIR/etc\ncp -p  /etc/group         $USERDIR/etc\ncp -p  /etc/hosts         $USERDIR/etc\ncp -p  /etc/resolv.conf   $USERDIR/etc\ncp -ap /usr/libexec/openssh/sftp-server $USERDIR/usr/libexec/openssh/sftp-server\ncp -ap /usr/libexec/rssh_chroot_helper $USERDIR/usr/libexec/rssh_chroot_helper","html":"<p>cp -p /etc/ld.so.cache $USERDIR/etc\n# If directory exists\nsi [ -d /etc/ld.so.cache.d ];\npuis\n   cp -avRp /etc/ld.so.cache.d $USERDIR/etc\nFi\ngrep $1 /etc/passwd  &gt; $USERDIR/etc/passwd\ncp -p  /etc/ld.so.conf    $USERDIR/etc\ncp -p  /etc/nsswitch.conf $USERDIR/etc\ncp -p  /etc/group         $USERDIR/etc\ncp -p  /etc/hosts         $USERDIR/etc\ncp -p  /etc/resolv.conf   $USERDIR/etc\ncp -ap /usr/libexec/openssh/sftp-server $USERDIR/usr/libexec/openssh/sftp-server\ncp -ap /usr/libexec/rssh_chroot_helper $USERDIR/usr/libexec/rssh_chroot_helper</p>"},{"id":"text-247","type":"text","heading":"","plain_text":"# Authentication libraries required for login (32 bit and 64 bit systems)\nsi [ -d /lib64 ];\npuis\n   mkdir $USERDIR/lib64\n   cp -ap /lib64/libnss_files.so.? $USERDIR/lib64\n   cp -ap /lib64/libnss_files-*.so $USERDIR/lib64\nautre\n   cp -p /lib/libnss_files.so.? $USERDIR/lib\n   cp -p /lib/libnss_files-*.so $USERDIR/lib\nFi","html":"<p># Authentication libraries required for login (32 bit and 64 bit systems)\nsi [ -d /lib64 ];\npuis\n   mkdir $USERDIR/lib64\n   cp -ap /lib64/libnss_files.so.? $USERDIR/lib64\n   cp -ap /lib64/libnss_files-*.so $USERDIR/lib64\nautre\n   cp -p /lib/libnss_files.so.? $USERDIR/lib\n   cp -p /lib/libnss_files-*.so $USERDIR/lib\nFi</p>"},{"id":"text-248","type":"text","heading":"","plain_text":"FILES=`ldd /usr/libexec/openssh/sftp-server | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé\n FILES=`ldd /usr/libexec/rssh_chroot_helper | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé","html":"<p>FILES=`ldd /usr/libexec/openssh/sftp-server | perl -ne &#039;s:^[^/]+::; s: (.*)$::; print;&#039;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé\n FILES=`ldd /usr/libexec/rssh_chroot_helper | perl -ne &#039;s:^[^/]+::; s: (.*)$::; print;&#039;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé</p>"},{"id":"text-249","type":"text","heading":"","plain_text":"Remarque:","html":"<p>Remarque:</p>"},{"id":"text-250","type":"text","heading":"","plain_text":"Blocking FTP: Setting up rssh does not turn off or block FTP access to your system. You must still turn off vsftp: /etc/init.d/vsftpd stop. There is little point to setting up secure chrooted sftp access with rssh and also running a FTP service.","html":"<p>Blocking FTP: Setting up rssh does not turn off or block FTP access to your system. You must still turn off vsftp: /etc/init.d/vsftpd stop. There is little point to setting up secure chrooted sftp access with rssh and also running a FTP service.</p>"},{"id":"text-251","type":"text","heading":"","plain_text":"Debugging:","html":"<p>Debugging:</p>"},{"id":"text-252","type":"text","heading":"","plain_text":"One can pull in the full root path by issuing an internal mount:","html":"<p>One can pull in the full root path by issuing an internal mount:</p>"},{"id":"text-253","type":"text","heading":"","plain_text":"mount --bind /dev /home/user1/dev\n    \nmount --bind /dev /home/user1/lib\n    \nmount --bind /dev /home/user1/lib64\n    \nmount --bind /dev /home/user1/usr","html":"<p>mount --bind /dev /home/user1/dev\n    \nmount --bind /dev /home/user1/lib\n    \nmount --bind /dev /home/user1/lib64\n    \nmount --bind /dev /home/user1/usr</p>"},{"id":"text-254","type":"text","heading":"","plain_text":"This technique can be used to narrow down the error to find which directory has the missing files. It should not be used as a final solution.\n    Unmount when done: umount /home/user1/dev","html":"<p>This technique can be used to narrow down the error to find which directory has the missing files. It should not be used as a final solution.\n    Unmount when done: umount /home/user1/dev</p>"},{"id":"text-255","type":"text","heading":"","plain_text":"If authenticating to ldap, nis, etc, pull in the appropriate libraries.\n    You can test with all: cp -p /lib/libnss_* /home/user1/lib\n    This can be performed for /lib64 ainsi que.","html":"<p>If authenticating to ldap, nis, etc, pull in the appropriate libraries.\n    You can test with all: cp -p /lib/libnss_* /home/user1/lib\n    This can be performed for /lib64 ainsi que.</p>"},{"id":"text-256","type":"text","heading":"","plain_text":"Checklog files for errors: /var/log/messages","html":"<p>Checklog files for errors: /var/log/messages</p>"},{"id":"text-257","type":"text","heading":"","plain_text":"Man pages:","html":"<p>Man pages:</p>"},{"id":"text-258","type":"text","heading":"","plain_text":"Using gFTP as a Linux sftp client:","html":"<p>Using gFTP as a Linux sftp client:</p>"},{"id":"text-259","type":"text","heading":"","plain_text":"Start program through menu or command line: gftp&amp;","html":"<p>Start program through menu or command line: gftp&amp;</p>"},{"id":"text-260","type":"text","heading":"","plain_text":"Select &quot;FTP&quot; from toolbar","html":"<p>Select &quot;FTP&quot; from toolbar</p>"},{"id":"text-261","type":"text","heading":"","plain_text":"Select &quot;Options&quot;","html":"<p>Select &quot;Options&quot;</p>"},{"id":"text-262","type":"text","heading":"","plain_text":"Select &quot;SSH&quot; tab\n    \nSelect &quot;Apply&quot; amd &quot;Ok&quot;","html":"<p>Select &quot;SSH&quot; tab\n    \nSelect &quot;Apply&quot; amd &quot;Ok&quot;</p>"},{"id":"text-263","type":"text","heading":"","plain_text":"On the upper right hand side of the gftp window, select &quot;SSH&quot; from the pull-down menu.","html":"<p>On the upper right hand side of the gftp window, select &quot;SSH&quot; from the pull-down menu.</p>"},{"id":"text-264","type":"text","heading":"","plain_text":"Using FileZilla as a Linux sftp client:","html":"<p>Using FileZilla as a Linux sftp client:</p>"},{"id":"text-265","type":"text","heading":"","plain_text":"Select &quot;File&quot; + &quot;Site Manager&quot;","html":"<p>Select &quot;File&quot; + &quot;Site Manager&quot;</p>"},{"id":"text-266","type":"text","heading":"","plain_text":"Select &quot;New Site&quot; (bottom left)","html":"<p>Select &quot;New Site&quot; (bottom left)</p>"},{"id":"text-267","type":"text","heading":"","plain_text":"Enter &quot;Host:&quot;","html":"<p>Enter &quot;Host:&quot;</p>"},{"id":"text-268","type":"text","heading":"","plain_text":"Choose &quot;Servertype:&quot; &quot;SFTP using SSH2&quot;","html":"<p>Choose &quot;Servertype:&quot; &quot;SFTP using SSH2&quot;</p>"},{"id":"text-269","type":"text","heading":"","plain_text":"Select &quot;Logontype:&quot; &quot;Normal&quot;","html":"<p>Select &quot;Logontype:&quot; &quot;Normal&quot;</p>"},{"id":"text-270","type":"text","heading":"","plain_text":"Enter &quot;User:&quot; and click on &quot;Connect&quot;.","html":"<p>Enter &quot;User:&quot; and click on &quot;Connect&quot;.</p>"},{"id":"text-271","type":"text","heading":"","plain_text":"Links:","html":"<p>Links:</p>"},{"id":"text-272","type":"text","heading":"","plain_text":"Multi-platform GUI client FileZilla","html":"<p>Multi-platform GUI client FileZilla</p>"},{"id":"text-273","type":"text","heading":"","plain_text":"MS/Windows client WinSCP (supports sftp)","html":"<p>MS/Windows client WinSCP (supports sftp)</p>"},{"id":"text-274","type":"text","heading":"","plain_text":"SentryTools: PortSentry","html":"<p>SentryTools: PortSentry</p>"},{"id":"text-275","type":"text","heading":"","plain_text":"This tool will monitor the network probes and attacks against your server.\nIt can be configured to log and counter these probes and attacks.\nPortSentry can modify your /etc/hosts.deny (PAM module) file and\nissue IP firewall commands automatically to block hackers.","html":"<p>This tool will monitor the network probes and attacks against your server.\nIt can be configured to log and counter these probes and attacks.\nPortSentry can modify your /etc/hosts.deny (PAM module) file and\nissue IP firewall commands automatically to block hackers.</p>"},{"id":"text-276","type":"text","heading":"","plain_text":"PortSentry can be loaded as an RPM but this tutorial covers compiling\nPortSentry from source to configure a more preferable system logging.","html":"<p>PortSentry can be loaded as an RPM but this tutorial covers compiling\nPortSentry from source to configure a more preferable system logging.</p>"},{"id":"text-277","type":"text","heading":"","plain_text":"Note: Version 1.2 of portsentry can issue iptables, ipchains or route commands\nto thwart attacks.  Iptables/Ipchains is a Linux firewall system built into the Linux kernel.\nLinux kernel 2.6/2.4 uses iptables, kernel 2.2 (old) uses ipchains.\nReferences to ipfwadm are for even older Linux kernels.\nRoute commands can be used by any Unix system including those non-Linux systems which do not support Iptables/Ipchains.","html":"<p>Note: Version 1.2 of portsentry can issue iptables, ipchains or route commands\nto thwart attacks.  Iptables/Ipchains is a Linux firewall system built into the Linux kernel.\nLinux kernel 2.6/2.4 uses iptables, kernel 2.2 (old) uses ipchains.\nReferences to ipfwadm are for even older Linux kernels.\nRoute commands can be used by any Unix system including those non-Linux systems which do not support Iptables/Ipchains.</p>"},{"id":"text-278","type":"text","heading":"","plain_text":"Steps to install and configure portsentry:","html":"<p>Steps to install and configure portsentry:</p>"},{"id":"text-279","type":"text","heading":"","plain_text":"Download and unzip source code\n  \nEdit include file and compile\n  \nStart PortSentry\n  \nRead logs","html":"<p>Download and unzip source code\n  \nEdit include file and compile\n  \nStart PortSentry\n  \nRead logs</p>"},{"id":"text-280","type":"text","heading":"","plain_text":"Download and unzip source code:","html":"<p>Download and unzip source code:</p>"},{"id":"text-281","type":"text","heading":"","plain_text":"Edit include file and compile:\n     cd portsentry_beta/\n     Read file README.install. It details the following:","html":"<p>Edit include file and compile:\n     cd portsentry_beta/\n     Read file README.install. It details the following:</p>"},{"id":"text-282","type":"text","heading":"","plain_text":"Edit file: portsentry_config.h","html":"<p>Edit file: portsentry_config.h</p>"},{"id":"text-283","type":"text","heading":"","plain_text":"Set file paths and configure separate log file for Portsentry:\n         Set options:","html":"<p>Set file paths and configure separate log file for Portsentry:\n         Set options:</p>"},{"id":"text-284","type":"text","heading":"","plain_text":"CONFIG_FILE &#8211; PortSentry run-time configuration file.\n         \nWRAPPER_HOSTS_DENY &#8211; The path and name of TCP wrapper hosts.deny file.","html":"<p>CONFIG_FILE &#8211; PortSentry run-time configuration file.\n         \nWRAPPER_HOSTS_DENY &#8211; The path and name of TCP wrapper hosts.deny file.</p>"},{"id":"text-285","type":"text","heading":"","plain_text":"#define CONFIG_FILE &quot;/opt/portsentry/portsentry.conf&quot;\n#define WRAPPER_HOSTS_DENY &quot;/etc/hosts.deny&quot;\n#define SYSLOG_FACILITY LOG_DAEMON    - Default. Change to LOG_LOCAL6","html":"<p>#define CONFIG_FILE &quot;/opt/portsentry/portsentry.conf&quot;\n#define WRAPPER_HOSTS_DENY &quot;/etc/hosts.deny&quot;\n#define SYSLOG_FACILITY LOG_DAEMON    - Default. Change to LOG_LOCAL6</p>"},{"id":"text-286","type":"text","heading":"","plain_text":"#define SYSLOG_LEVEL    LOG_NOTICE\n         \n         (Note: I use /opt/portsentry/ because I like to locate &quot;optional&quot;\n          files/software there.\n          It allows for an easy backup by separating it from the OS.\n          If you prefer, you can use /etc/portsentry/ pour\n          configurations files and follow the Linux/Unix file system logic)\n         \n         The above default, &quot;LOG_DAEMON&quot;, will log messages to the /var/log/messages file.\n         \n    To log to a separate file dedicated to PortSentry logging:\n(This will eliminate logging clutter in the main system logging file)","html":"<p>#define SYSLOG_LEVEL    LOG_NOTICE\n         \n         (Note: I use /opt/portsentry/ because I like to locate &quot;optional&quot;\n          files/software there.\n          It allows for an easy backup by separating it from the OS.\n          If you prefer, you can use /etc/portsentry/ pour\n          configurations files and follow the Linux/Unix file system logic)\n         \n         The above default, &quot;LOG_DAEMON&quot;, will log messages to the /var/log/messages file.\n         \n    To log to a separate file dedicated to PortSentry logging:\n(This will eliminate logging clutter in the main system logging file)</p>"},{"id":"text-287","type":"text","heading":"","plain_text":"Add logging directives to syslogd configuration file: /etc/syslog.conf\n             Change the following line by adding an extra log facility for portsentry messages which are\n             not going to be logged to the regular syslog output\n             fichier /var/log/messages.\n             This lists what messages to filter out from /var/log/messages.\n            \n              *.info;mail.none;news.none;authpriv.none;cron.none;local6.none\t/var/log/messages \n             Add the following line to assign a portsentry log facility:\n             \n              local6.*                   /var/log/portsentry.log \n             Note: Use tab not spaces in the syslog configuration file.\n             \n             Restart syslogd: /etc/init.d/syslog restart","html":"<p>Add logging directives to syslogd configuration file: /etc/syslog.conf\n             Change the following line by adding an extra log facility for portsentry messages which are\n             not going to be logged to the regular syslog output\n             fichier /var/log/messages.\n             This lists what messages to filter out from /var/log/messages.\n            \n              *.info;mail.none;news.none;authpriv.none;cron.none;local6.none\t/var/log/messages \n             Add the following line to assign a portsentry log facility:\n             \n              local6.*                   /var/log/portsentry.log \n             Note: Use tab not spaces in the syslog configuration file.\n             \n             Restart syslogd: /etc/init.d/syslog restart</p>"},{"id":"text-288","type":"text","heading":"","plain_text":"Ensemble portsentry_config.h entry to new log facility:\n              Change from default setting:","html":"<p>Ensemble portsentry_config.h entry to new log facility:\n              Change from default setting:</p>"},{"id":"text-289","type":"text","heading":"","plain_text":"#define SYSLOG_FACILITY LOG_DAEMON\n              \n              To:","html":"<p>#define SYSLOG_FACILITY LOG_DAEMON\n              \n              To:</p>"},{"id":"text-290","type":"text","heading":"","plain_text":"#define SYSLOG_FACILITY LOG_LOCAL6","html":"<p>#define SYSLOG_FACILITY LOG_LOCAL6</p>"},{"id":"text-291","type":"text","heading":"","plain_text":"FYI: Options for the  SYSLOG_FACILITY are defined in /usr/include/sys/syslog.h\n         They include:","html":"<p>FYI: Options for the  SYSLOG_FACILITY are defined in /usr/include/sys/syslog.h\n         They include:</p>"},{"id":"text-292","type":"text","heading":"","plain_text":"SYSLOG_FACILITY\nFacility Name  \n    La description","html":"<p>SYSLOG_FACILITY\nFacility Name  \n    La description</p>"},{"id":"text-293","type":"text","heading":"","plain_text":"LOG_LOCAL0\nlocal0 \n    reserved for local use","html":"<p>LOG_LOCAL0\nlocal0 \n    reserved for local use</p>"},{"id":"text-294","type":"text","heading":"","plain_text":"LOG_LOCAL1\nlocal1 \n    reserved for local use","html":"<p>LOG_LOCAL1\nlocal1 \n    reserved for local use</p>"},{"id":"text-295","type":"text","heading":"","plain_text":"LOG_LOCAL2\nlocal2 \n    reserved for local use","html":"<p>LOG_LOCAL2\nlocal2 \n    reserved for local use</p>"},{"id":"text-296","type":"text","heading":"","plain_text":"LOG_LOCAL3\nlocal3 \n    reserved for local use","html":"<p>LOG_LOCAL3\nlocal3 \n    reserved for local use</p>"},{"id":"text-297","type":"text","heading":"","plain_text":"LOG_LOCAL4\nlocal4 \n    reserved for local use","html":"<p>LOG_LOCAL4\nlocal4 \n    reserved for local use</p>"},{"id":"text-298","type":"text","heading":"","plain_text":"LOG_LOCAL5\nlocal5 \n    reserved for local use","html":"<p>LOG_LOCAL5\nlocal5 \n    reserved for local use</p>"},{"id":"text-299","type":"text","heading":"","plain_text":"LOG_LOCAL6\nlocal6 \n    reserved for local use","html":"<p>LOG_LOCAL6\nlocal6 \n    reserved for local use</p>"},{"id":"text-300","type":"text","heading":"","plain_text":"LOG_LOCAL7\nlocal7 \n    reserved for local use","html":"<p>LOG_LOCAL7\nlocal7 \n    reserved for local use</p>"},{"id":"text-301","type":"text","heading":"","plain_text":"LOG_USER\n        utilisateur   \n    random user-level messages","html":"<p>LOG_USER\n        utilisateur   \n    random user-level messages</p>"},{"id":"text-302","type":"text","heading":"","plain_text":"LOG_MAIL\n        courrier   \n    mail system","html":"<p>LOG_MAIL\n        courrier   \n    mail system</p>"},{"id":"text-303","type":"text","heading":"","plain_text":"LOG_DAEMON\ndémon \n    system daemons","html":"<p>LOG_DAEMON\ndémon \n    system daemons</p>"},{"id":"text-304","type":"text","heading":"","plain_text":"LOG_SYSLOG\nsyslog \n    messages generated internally by syslogd","html":"<p>LOG_SYSLOG\nsyslog \n    messages generated internally by syslogd</p>"},{"id":"text-305","type":"text","heading":"","plain_text":"LOG_LPR\n            lpr    \n    line printer subsystem","html":"<p>LOG_LPR\n            lpr    \n    line printer subsystem</p>"},{"id":"text-306","type":"text","heading":"","plain_text":"LOG_NEWS\n        nouvelles   \n    network news subsystem","html":"<p>LOG_NEWS\n        nouvelles   \n    network news subsystem</p>"},{"id":"text-307","type":"text","heading":"","plain_text":"LOG_UUCP\n        uucp   \n    UUCP subsystem","html":"<p>LOG_UUCP\n        uucp   \n    UUCP subsystem</p>"},{"id":"text-308","type":"text","heading":"","plain_text":"LOG_CRON\n        cron   \n    clock daemon","html":"<p>LOG_CRON\n        cron   \n    clock daemon</p>"},{"id":"text-309","type":"text","heading":"","plain_text":"LOG_AUTHPRIV\nauthpriv\n    security/authorization messages (private)","html":"<p>LOG_AUTHPRIV\nauthpriv\n    security/authorization messages (private)</p>"},{"id":"text-310","type":"text","heading":"","plain_text":"LOG_FTP\n            ftp    \n    ftp daemon","html":"<p>LOG_FTP\n            ftp    \n    ftp daemon</p>"},{"id":"text-311","type":"text","heading":"","plain_text":"Options for the SYSLOG_LEVEL include:","html":"<p>Options for the SYSLOG_LEVEL include:</p>"},{"id":"text-312","type":"text","heading":"","plain_text":"SYSLOG_LEVEL \nPriorité     \n    La description","html":"<p>SYSLOG_LEVEL \nPriorité     \n    La description</p>"},{"id":"text-313","type":"text","heading":"","plain_text":"LOG_EMERG   \n                0 \nsystem is unusable","html":"<p>LOG_EMERG   \n                0 \nsystem is unusable</p>"},{"id":"text-314","type":"text","heading":"","plain_text":"LOG_ALERT   \n                1 \naction must be taken immediately","html":"<p>LOG_ALERT   \n                1 \naction must be taken immediately</p>"},{"id":"text-315","type":"text","heading":"","plain_text":"LOG_CRIT    \n                2 \ncritical conditions","html":"<p>LOG_CRIT    \n                2 \ncritical conditions</p>"},{"id":"text-316","type":"text","heading":"","plain_text":"LOG_ERR     \n                3 \nerror conditions","html":"<p>LOG_ERR     \n                3 \nerror conditions</p>"},{"id":"text-317","type":"text","heading":"","plain_text":"LOG_WARNING \n                4 \nwarning conditions","html":"<p>LOG_WARNING \n                4 \nwarning conditions</p>"},{"id":"text-318","type":"text","heading":"","plain_text":"LOG_NOTICE  \n                5 \nnormal but significant condition","html":"<p>LOG_NOTICE  \n                5 \nnormal but significant condition</p>"},{"id":"text-319","type":"text","heading":"","plain_text":"LOG_INFO    \n                6 \ninformatif","html":"<p>LOG_INFO    \n                6 \ninformatif</p>"},{"id":"text-320","type":"text","heading":"","plain_text":"LOG_DEBUG   \n                7 \ndebug-level messages","html":"<p>LOG_DEBUG   \n                7 \ndebug-level messages</p>"},{"id":"text-321","type":"text","heading":"","plain_text":"Edit file: portsentry.conf    to set paths for configuration files and ports to monitor.","html":"<p>Edit file: portsentry.conf    to set paths for configuration files and ports to monitor.</p>"},{"id":"text-322","type":"text","heading":"","plain_text":"TCP_PORTS=&quot;1,11,15,20,21,23,25,69,79, ... &quot;\nUDP_PORTS=&quot;1,7,9,69,161,162,513,635,  ... &quot;","html":"<p>TCP_PORTS=&quot;1,11,15,20,21,23,25,69,79, ... &quot;\nUDP_PORTS=&quot;1,7,9,69,161,162,513,635,  ... &quot;</p>"},{"id":"text-323","type":"text","heading":"","plain_text":"...\n...","html":"<p>...\n...</p>"},{"id":"text-324","type":"text","heading":"","plain_text":"IGNORE_FILE=&quot;/opt/portsentry/portsentry.ignore&quot;\nHISTORY_FILE=&quot;/opt/portsentry/portsentry.history&quot;\nBLOCKED_FILE=&quot;/opt/portsentry/portsentry.blocked&quot;\n#KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;   - Generic Unix KILL_ROUTE\n                                                              I prefer iptables/ipchains options below\n         \nUn-comment and modify if necessary the appropriate statements. le\nTCP_PORTS=, UDP_PORTS= lists are ignored for stealth scan detection\nmodes. Add common but unused services. i.e. add port 25 if the system is not accepting email as port 25 is included in most scans.\n        I added UDP port 68 (BOOTP) and TCP 21 (ftp), 22 (ssh), 25 (smtp\nmail), 53 (dns bind), 80 (http web server), 119 (news) to the\nADVANCED_EXCLUDE_UDP and ADVANCED_EXCLUDE_TCP statements respectively.","html":"<p>IGNORE_FILE=&quot;/opt/portsentry/portsentry.ignore&quot;\nHISTORY_FILE=&quot;/opt/portsentry/portsentry.history&quot;\nBLOCKED_FILE=&quot;/opt/portsentry/portsentry.blocked&quot;\n#KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;   - Generic Unix KILL_ROUTE\n                                                              I prefer iptables/ipchains options below\n         \nUn-comment and modify if necessary the appropriate statements. le\nTCP_PORTS=, UDP_PORTS= lists are ignored for stealth scan detection\nmodes. Add common but unused services. i.e. add port 25 if the system is not accepting email as port 25 is included in most scans.\n        I added UDP port 68 (BOOTP) and TCP 21 (ftp), 22 (ssh), 25 (smtp\nmail), 53 (dns bind), 80 (http web server), 119 (news) to the\nADVANCED_EXCLUDE_UDP and ADVANCED_EXCLUDE_TCP statements respectively.</p>"},{"id":"text-325","type":"text","heading":"","plain_text":"ADVANCED_EXCLUDE_TCP=&quot;21,22,25,53,80,110,113,119&quot; - server","html":"<p>ADVANCED_EXCLUDE_TCP=&quot;21,22,25,53,80,110,113,119&quot; - server</p>"},{"id":"text-326","type":"text","heading":"","plain_text":"ADVANCED_EXCLUDE_UDP=&quot;21,22,53,110,520,138,137,68,67&quot;\nOU\nADVANCED_EXCLUDE_TCP=&quot;113,139&quot;                    - workstation","html":"<p>ADVANCED_EXCLUDE_UDP=&quot;21,22,53,110,520,138,137,68,67&quot;\nOU\nADVANCED_EXCLUDE_TCP=&quot;113,139&quot;                    - workstation</p>"},{"id":"text-327","type":"text","heading":"","plain_text":"ADVANCED_EXCLUDE_UDP=&quot;520,138,137,68,67&quot;\n         \n         PAM options:","html":"<p>ADVANCED_EXCLUDE_UDP=&quot;520,138,137,68,67&quot;\n         \n         PAM options:</p>"},{"id":"text-328","type":"text","heading":"","plain_text":"KILL_HOSTS_DENY=&quot;ALL: $TARGET$&quot;","html":"<p>KILL_HOSTS_DENY=&quot;ALL: $TARGET$&quot;</p>"},{"id":"text-329","type":"text","heading":"","plain_text":"For more on PAM see YoLinux network Admin Tutorial","html":"<p>For more on PAM see YoLinux network Admin Tutorial</p>"},{"id":"text-330","type":"text","heading":"","plain_text":"Choose one option: (Options: network &quot;route&quot; or firewall command &quot;iptables/ipchains&quot;)","html":"<p>Choose one option: (Options: network &quot;route&quot; or firewall command &quot;iptables/ipchains&quot;)</p>"},{"id":"text-331","type":"text","heading":"","plain_text":"For those using iptables (Linux Kernel 2.6/2.4+):\n              KILL_ROUTE=&quot;/sbin/iptables -I INPUT -s $TARGET$ -j DROP&quot;\n              (Note: The default used in portsentry.conf utilise le\n               incorrect path for Red Hat.\n               Changement /usr/local/bin/iptables\n               à /sbin/iptables)\n             \nFor Linux 2.2.x kernels (version 2.102+) using ipchains: (Best option)\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY -l&quot; \n             OU\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY&quot; \n             Remarque: The second option is without the &quot;-l&quot; or logging option so ipchains won&#39;t keep logging the portscan in /var/log/messages\n         \nSimple method to drop network return routes if iptables or ipchains are not compiled into your kernel:\n             KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;\n             You can check the addresses dropped with the command:  netstat -rn They will be routed to interface &quot;-&quot;.","html":"<p>For those using iptables (Linux Kernel 2.6/2.4+):\n              KILL_ROUTE=&quot;/sbin/iptables -I INPUT -s $TARGET$ -j DROP&quot;\n              (Note: The default used in portsentry.conf utilise le\n               incorrect path for Red Hat.\n               Changement /usr/local/bin/iptables\n               à /sbin/iptables)\n             \nFor Linux 2.2.x kernels (version 2.102+) using ipchains: (Best option)\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY -l&quot; \n             OU\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY&quot; \n             Remarque: The second option is without the &quot;-l&quot; or logging option so ipchains won&#039;t keep logging the portscan in /var/log/messages\n         \nSimple method to drop network return routes if iptables or ipchains are not compiled into your kernel:\n             KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;\n             You can check the addresses dropped with the command:  netstat -rn They will be routed to interface &quot;-&quot;.</p>"},{"id":"text-332","type":"text","heading":"","plain_text":"Red Hat: Portsentry uses iptables (and it must be running) and not the older ipchains.\nTo see if iptables is invoked during system boot, use the command: chkconfig --list | grep iptables.\nYou can NOT use portsentry to issue iptables rules if your kernel is configured to use ipchain rules.\n         More info on iptables and ipchains support/configuration in Red Hat.","html":"<p>Red Hat: Portsentry uses iptables (and it must be running) and not the older ipchains.\nTo see if iptables is invoked during system boot, use the command: chkconfig --list | grep iptables.\nYou can NOT use portsentry to issue iptables rules if your kernel is configured to use ipchain rules.\n         More info on iptables and ipchains support/configuration in Red Hat.</p>"},{"id":"text-333","type":"text","heading":"","plain_text":"Edit file: portsentry.ignore            (contains IP addresses to ignore. )","html":"<p>Edit file: portsentry.ignore            (contains IP addresses to ignore. )</p>"},{"id":"text-334","type":"text","heading":"","plain_text":"127.0.0.1\n0.0.0.0\nYour IP address\n         \n         The at Home network routinely scans for news servers on port 119 from\n         a server named authorized-scan1.security.home.net.\n         Adding the IP address of this server (24.0.0.203)\n         greatly reduces the logging. I also added their BOOTP server.\n         (24.9.139.130)","html":"<p>127.0.0.1\n0.0.0.0\nYour IP address\n         \n         The at Home network routinely scans for news servers on port 119 from\n         a server named authorized-scan1.security.home.net.\n         Adding the IP address of this server (24.0.0.203)\n         greatly reduces the logging. I also added their BOOTP server.\n         (24.9.139.130)</p>"},{"id":"text-335","type":"text","heading":"","plain_text":"I manually issued the iptables (kernel 2.6/2.4)\n         commands on my workstation\n         to drop the hosts and deny their scans.\n         At Home users may add the commands to the file\n         /etc/rc.d/rc.local","html":"<p>I manually issued the iptables (kernel 2.6/2.4)\n         commands on my workstation\n         to drop the hosts and deny their scans.\n         At Home users may add the commands to the file\n         /etc/rc.d/rc.local</p>"},{"id":"text-336","type":"text","heading":"","plain_text":"/sbin/iptables -I INPUT -s 24.0.0.203 -j DROP\n/sbin/iptables -I INPUT -s 24.9.139.130 -j DROP","html":"<p>/sbin/iptables -I INPUT -s 24.0.0.203 -j DROP\n/sbin/iptables -I INPUT -s 24.9.139.130 -j DROP</p>"},{"id":"text-337","type":"text","heading":"","plain_text":"Edit file: Makefile","html":"<p>Edit file: Makefile</p>"},{"id":"text-338","type":"text","heading":"","plain_text":"INSTALLDIR = /opt\n        \n         And remove the line under &quot;uninstall&quot;: (dangerous line!!)","html":"<p>INSTALLDIR = /opt\n        \n         And remove the line under &quot;uninstall&quot;: (dangerous line!!)</p>"},{"id":"text-339","type":"text","heading":"","plain_text":"#               /bin/rmdir $(INSTALLDIR)\n        \n         And remove the line under &quot;install&quot;: (troublesome line!!)\n#               chmod 700 $(INSTALLDIR)\n        To:\n#               chmod 700 $(INSTALLDIR)/$(CHILDDIR)","html":"<p>#               /bin/rmdir $(INSTALLDIR)\n        \n         And remove the line under &quot;install&quot;: (troublesome line!!)\n#               chmod 700 $(INSTALLDIR)\n        To:\n#               chmod 700 $(INSTALLDIR)/$(CHILDDIR)</p>"},{"id":"text-340","type":"text","heading":"","plain_text":"Compile: make linux","html":"<p>Compile: make linux</p>"},{"id":"text-341","type":"text","heading":"","plain_text":"Fix the following compile errors in portsentry.c","html":"<p>Fix the following compile errors in portsentry.c</p>"},{"id":"text-342","type":"text","heading":"","plain_text":"Changement  printf (&quot;Copyright 1997-2003 Craig H. Rowland &lt;craigrowland at users dot\n            sourceforget dot net&gt;n&quot;);\n            to one line:  printf (&quot;Copyright 1997-2003 Craig H. Rowlandn&quot;);\n        \nFix warning: warning: passing argument 3 of â€˜acceptâ€™ from incompatible pointer type\n            Separate and change declaration of &quot;length&quot; to: unsigned int length;","html":"<p>Changement  printf (&quot;Copyright 1997-2003 Craig H. Rowland &lt;craigrowland at users dot\n            sourceforget dot net&gt;n&quot;);\n            to one line:  printf (&quot;Copyright 1997-2003 Craig H. Rowlandn&quot;);\n        \nFix warning: warning: passing argument 3 of â€˜acceptâ€™ from incompatible pointer type\n            Separate and change declaration of &quot;length&quot; to: unsigned int length;</p>"},{"id":"text-343","type":"text","heading":"","plain_text":"Install (as root): make install","html":"<p>Install (as root): make install</p>"},{"id":"text-344","type":"text","heading":"","plain_text":"Run PortSentry for advanced UDP/TCP stealth scan detection:","html":"<p>Run PortSentry for advanced UDP/TCP stealth scan detection:</p>"},{"id":"text-345","type":"text","heading":"","plain_text":"portsentry -atcp\n    \nportsentry -audp","html":"<p>portsentry -atcp\n    \nportsentry -audp</p>"},{"id":"text-346","type":"text","heading":"","plain_text":"OU use init scripts below in next section.","html":"<p>OU use init scripts below in next section.</p>"},{"id":"text-347","type":"text","heading":"","plain_text":"Check logfile for hacker attacks. Voir: /var/log/messages\nou  /var/log/portsentry.log if you are logging to a dedicated file.\n    Also check /etc/hosts.deny to see a list of IP addresses that\n    PortSentry has deemed to be attackers.\n    Check the &quot;HISTORY_FILE&quot; /opt/portsentry/portsentry.history","html":"<p>Check logfile for hacker attacks. Voir: /var/log/messages\nou  /var/log/portsentry.log if you are logging to a dedicated file.\n    Also check /etc/hosts.deny to see a list of IP addresses that\n    PortSentry has deemed to be attackers.\n    Check the &quot;HISTORY_FILE&quot; /opt/portsentry/portsentry.history</p>"},{"id":"text-348","type":"text","heading":"","plain_text":"Note: Is is possible to have all logging sent to a logging daemon on a single\nserver. This will allow the administrator to check the logs on only one server\nrather than individually on many.","html":"<p>Note: Is is possible to have all logging sent to a logging daemon on a single\nserver. This will allow the administrator to check the logs on only one server\nrather than individually on many.</p>"},{"id":"text-349","type":"text","heading":"","plain_text":"Note on Red Hat RPMs:\nRPM layout:","html":"<p>Note on Red Hat RPMs:\nRPM layout:</p>"},{"id":"text-350","type":"text","heading":"","plain_text":"/usr/sbin/portsentry &#8211; (chmod 700) executable\n  \n/etc/portsentry/ &#8211; (chmod 700) Directory used for configuration files.\n  \n/etc/portsentry/portsentry.conf (chmod 600)\n  \n/etc/portsentry/portsentry.ignore (chmod 600)\n  \n/var/portsentry/portsentry.history\n  \n/var/portsentry/portsentry.blocked","html":"<p>/usr/sbin/portsentry &#8211; (chmod 700) executable\n  \n/etc/portsentry/ &#8211; (chmod 700) Directory used for configuration files.\n  \n/etc/portsentry/portsentry.conf (chmod 600)\n  \n/etc/portsentry/portsentry.ignore (chmod 600)\n  \n/var/portsentry/portsentry.history\n  \n/var/portsentry/portsentry.blocked</p>"},{"id":"text-351","type":"text","heading":"","plain_text":"Instead of using a firewall command (ipchains/iptables), a false route is used: /sbin/route add -host $TARGET$ gw 127.0.0.1.\nMy init script calls the portsentry executable twice with the appropriate command line arguments to monitor tcp and udp ports.\nThe Red Hat RPM init script uses the file /etc/portsentry/portsentry.modes\nand a for loop in the\ninit script to call portsentry the appropriate number of times.\nTheir init script also recreates the portsentry.ignore file each time\nportsentry is started by including the IP addresses found with ip addr show ou ifconfig\nand the addresses 0.0.0.0 and localhost.\nPersistent addresses must be placed above a line stating:\n    Do NOT edit below this otherwise it is not included in the creation\nof the new file.\n    The Red Hat RPM portsentry version logs everything to /var/log/messages. My configuration avoids log clutter by logging to a separate file.","html":"<p>Instead of using a firewall command (ipchains/iptables), a false route is used: /sbin/route add -host $TARGET$ gw 127.0.0.1.\nMy init script calls the portsentry executable twice with the appropriate command line arguments to monitor tcp and udp ports.\nThe Red Hat RPM init script uses the file /etc/portsentry/portsentry.modes\nand a for loop in the\ninit script to call portsentry the appropriate number of times.\nTheir init script also recreates the portsentry.ignore file each time\nportsentry is started by including the IP addresses found with ip addr show ou ifconfig\nand the addresses 0.0.0.0 and localhost.\nPersistent addresses must be placed above a line stating:\n    Do NOT edit below this otherwise it is not included in the creation\nof the new file.\n    The Red Hat RPM portsentry version logs everything to /var/log/messages. My configuration avoids log clutter by logging to a separate file.</p>"},{"id":"text-352","type":"text","heading":"","plain_text":"Notes on DOS (Denial of Service) possibility:\nIf portsentry is configured to shut down an\nattack with firewall rules, an attacker may use this feature to slow down\nyour machine over time by creating a huge set of firewall rules.\nIt would require the hacker to use (or spoof) a new IP address each time.\nIt is probably a good idea to monitor or even clear the firewall rules from\ntime to time.","html":"<p>Notes on DOS (Denial of Service) possibility:\nIf portsentry is configured to shut down an\nattack with firewall rules, an attacker may use this feature to slow down\nyour machine over time by creating a huge set of firewall rules.\nIt would require the hacker to use (or spoof) a new IP address each time.\nIt is probably a good idea to monitor or even clear the firewall rules from\ntime to time.</p>"},{"id":"text-353","type":"text","heading":"","plain_text":"iptables:","html":"<p>iptables:</p>"},{"id":"text-354","type":"text","heading":"","plain_text":"List firewall rules: iptables -L\n    \nClear firewall rules: iptables -F","html":"<p>List firewall rules: iptables -L\n    \nClear firewall rules: iptables -F</p>"},{"id":"text-355","type":"text","heading":"","plain_text":"ipchains:","html":"<p>ipchains:</p>"},{"id":"text-356","type":"text","heading":"","plain_text":"List firewall rules: ipchains -L\n    \nClear firewall rules: ipchains -F","html":"<p>List firewall rules: ipchains -L\n    \nClear firewall rules: ipchains -F</p>"},{"id":"text-357","type":"text","heading":"","plain_text":"Clean-up script: /etc/cron.monthly/reset-chainrules\n(-rwx------   1 root     root)\nThis script is run automatically once a week by cron. (The presence of this\nscript in this directory for the Red Hat configuration makes it so)","html":"<p>Clean-up script: /etc/cron.monthly/reset-chainrules\n(-rwx------   1 root     root)\nThis script is run automatically once a week by cron. (The presence of this\nscript in this directory for the Red Hat configuration makes it so)</p>"},{"id":"text-358","type":"text","heading":"","plain_text":"#!/bin/bash\n# Purge and re-assign chain rules \nipchains -F\nipchains -A input -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 2049 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 6000:6009 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 515 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 515 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 111 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 111 -j REJECT\nipchains -A input -j REJECT -p all -s localhost  -i eth0 -l","html":"<p>#!/bin/bash\n# Purge and re-assign chain rules \nipchains -F\nipchains -A input -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 2049 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 6000:6009 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 515 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 515 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 111 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 111 -j REJECT\nipchains -A input -j REJECT -p all -s localhost  -i eth0 -l</p>"},{"id":"text-359","type":"text","heading":"","plain_text":"Regarde aussi:","html":"<p>Regarde aussi:</p>"},{"id":"text-360","type":"text","heading":"","plain_text":"Other tools to detect portscans and network based hacker attacks:","html":"<p>Other tools to detect portscans and network based hacker attacks:</p>"},{"id":"text-361","type":"text","heading":"","plain_text":"scanlogd &#8211; Attack detection.\n  \nInterSect Alliance &#8211; Intrusion analysis. Identifies malicious or unauthorized access attempts.\n  \nsnort &#8211; Instead of monitoring\na single server with portsentry, snort monitors the network, performing\nreal-time traffic analysis and packet logging on IP networks for the\ndetection of an attack or probe.\nAlso see: YoLinux IDS and Snort links","html":"<p>scanlogd &#8211; Attack detection.\n  \nInterSect Alliance &#8211; Intrusion analysis. Identifies malicious or unauthorized access attempts.\n  \nsnort &#8211; Instead of monitoring\na single server with portsentry, snort monitors the network, performing\nreal-time traffic analysis and packet logging on IP networks for the\ndetection of an attack or probe.\nAlso see: YoLinux IDS and Snort links</p>"},{"id":"text-362","type":"text","heading":"","plain_text":"Using an init script to start and stop the portsentry program.\nInit configuration: /etc/rc.d/init.d/portsentry\n    The init script needs to be executable: chmod a+x /etc/rc.d/init.d/portsentry\n    After adding the following script, enter it into the init process with\n    the command: chkconfig --add portsentry ou\n    chkconfig --level 345 portsentry on\n    See YoLinux Init Tutorial for more information.","html":"<p>Using an init script to start and stop the portsentry program.\nInit configuration: /etc/rc.d/init.d/portsentry\n    The init script needs to be executable: chmod a+x /etc/rc.d/init.d/portsentry\n    After adding the following script, enter it into the init process with\n    the command: chkconfig --add portsentry ou\n    chkconfig --level 345 portsentry on\n    See YoLinux Init Tutorial for more information.</p>"},{"id":"text-363","type":"text","heading":"","plain_text":"#!/bin/bash\n#\n# Startup script for PortSentry\n#\n# chkconfig: 345 85 15\n# description:  PortSentry monitors TCP and UDP ports for network attacks\n#\n# processname: portsentry\n# pidfile: /var/run/portsentry.pid\n# config: /opt/portsentry/portsentry.conf\n# config: /opt/portsentry/portsentry.ignore \n# config: /opt/portsentry/portsentry.history\n# config: /opt/portsentry/portsentry.blocked","html":"<p>#!/bin/bash\n#\n# Startup script for PortSentry\n#\n# chkconfig: 345 85 15\n# description:  PortSentry monitors TCP and UDP ports for network attacks\n#\n# processname: portsentry\n# pidfile: /var/run/portsentry.pid\n# config: /opt/portsentry/portsentry.conf\n# config: /opt/portsentry/portsentry.ignore \n# config: /opt/portsentry/portsentry.history\n# config: /opt/portsentry/portsentry.blocked</p>"},{"id":"text-364","type":"text","heading":"","plain_text":"# Source function library.\n. /etc/rc.d/init.d/functions","html":"<p># Source function library.\n. /etc/rc.d/init.d/functions</p>"},{"id":"text-365","type":"text","heading":"","plain_text":"# Source networking configuration.\n. /etc/sysconfig/network","html":"<p># Source networking configuration.\n. /etc/sysconfig/network</p>"},{"id":"text-366","type":"text","heading":"","plain_text":"# Check that networking is up.\n[ $NETWORKING = \"no\" ] &amp;&amp; exit 0","html":"<p># Check that networking is up.\n[ $NETWORKING = &quot;no&quot; ] &amp;&amp; exit 0</p>"},{"id":"text-367","type":"text","heading":"","plain_text":"# See how we were called.\ncase &quot;$1&quot; in\n  start)\n\techo -n &quot;Starting portsentry: &quot;\n\tdaemon /opt/portsentry/portsentry -atcp \n\t/opt/portsentry/portsentry -audp \nécho\n\ttouch /var/lock/subsys/portsentry\n\t;;\n  stop)\n\techo -n &quot;Shutting down portsentry: &quot;\n\tkillproc portsentry\nécho\n\trm -f /var/lock/subsys/portsentry\n\trm -f /var/run/portsentry.pid\n\t;;\n  status)\n\tstatus portsentry\n\t;;\n  restart)\n\t$0 stop\n\t$0 start\n\t;;\n  reload)\n\techo -n &quot;Reloading portsentry: &quot;\n\tkillproc portsentry -HUP\nécho\n\t;;\n  *)\n\techo &quot;Usage: $0 stop&quot;\nsortie 1\nesac","html":"<p># See how we were called.\ncase &quot;$1&quot; in\n  start)\n\techo -n &quot;Starting portsentry: &quot;\n\tdaemon /opt/portsentry/portsentry -atcp \n\t/opt/portsentry/portsentry -audp \nécho\n\ttouch /var/lock/subsys/portsentry\n\t;;\n  stop)\n\techo -n &quot;Shutting down portsentry: &quot;\n\tkillproc portsentry\nécho\n\trm -f /var/lock/subsys/portsentry\n\trm -f /var/run/portsentry.pid\n\t;;\n  status)\n\tstatus portsentry\n\t;;\n  restart)\n\t$0 stop\n\t$0 start\n\t;;\n  reload)\n\techo -n &quot;Reloading portsentry: &quot;\n\tkillproc portsentry -HUP\nécho\n\t;;\n  *)\n\techo &quot;Usage: $0 stop&quot;\nsortie 1\nesac</p>"},{"id":"text-368","type":"text","heading":"","plain_text":"exit 0","html":"<p>exit 0</p>"},{"id":"text-369","type":"text","heading":"","plain_text":"Logrotate Configuration:\nCreate the following file to have your logs rotate.","html":"<p>Logrotate Configuration:\nCreate the following file to have your logs rotate.</p>"},{"id":"text-370","type":"text","heading":"","plain_text":"Fichier: /etc/logrotate.d/portsentry","html":"<p>Fichier: /etc/logrotate.d/portsentry</p>"},{"id":"text-371","type":"text","heading":"","plain_text":"/var/log/portsentry.log  vrai\n    endscript","html":"<p>/var/log/portsentry.log  vrai\n    endscript</p>"},{"id":"text-372","type":"text","heading":"","plain_text":"Also see the YoLinux Sys Admin tutorial covering logrotate.","html":"<p>Also see the YoLinux Sys Admin tutorial covering logrotate.</p>"},{"id":"text-373","type":"text","heading":"","plain_text":"Tests:","html":"<p>Tests:</p>"},{"id":"text-374","type":"text","heading":"","plain_text":"Portscan your workstation &#8211; Use your web browser to go to this site. Select &quot;Probe my ports&quot; and it will\nscan you. You can then look at the file /opt/portsentry/portsentry.blocked.atcp\nto see that portsentry dropped the scanning site:\n Host: shieldsup.grc.com/207.71.92.221 Port: 23 TCP Blocked\nThe file /var/log/portsentry.log will show the action taken:","html":"<p>Portscan your workstation &#8211; Use your web browser to go to this site. Select &quot;Probe my ports&quot; and it will\nscan you. You can then look at the file /opt/portsentry/portsentry.blocked.atcp\nto see that portsentry dropped the scanning site:\n Host: shieldsup.grc.com/207.71.92.221 Port: 23 TCP Blocked\nThe file /var/log/portsentry.log will show the action taken:</p>"},{"id":"text-375","type":"text","heading":"","plain_text":"portsentry[589]: attackalert: SYN/Normal scan from host: shieldsup.grc.com/207.71.92.221 to TCP port: 23\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via wrappers with string: &quot;ALL: 207.71.92.221&quot;\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via dropped route using command: \n   &quot;/sbin/ipchains -I input -s 207.71.92.221 -j DENY -l&quot;","html":"<p>portsentry[589]: attackalert: SYN/Normal scan from host: shieldsup.grc.com/207.71.92.221 to TCP port: 23\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via wrappers with string: &quot;ALL: 207.71.92.221&quot;\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via dropped route using command: \n   &quot;/sbin/ipchains -I input -s 207.71.92.221 -j DENY -l&quot;</p>"},{"id":"text-376","type":"text","heading":"","plain_text":"nmap: portscanner &#8211; This is\nthe hacker tool responsible for many of the portscans you may be receiving.","html":"<p>nmap: portscanner &#8211; This is\nthe hacker tool responsible for many of the portscans you may be receiving.</p>"},{"id":"text-377","type":"text","heading":"","plain_text":"Command arguments:","html":"<p>Command arguments:</p>"},{"id":"text-378","type":"text","heading":"","plain_text":"Argument\nLa description","html":"<p>Argument\nLa description</p>"},{"id":"text-379","type":"text","heading":"","plain_text":"-sO\nIP scan. Find open ports.","html":"<p>-sO\nIP scan. Find open ports.</p>"},{"id":"text-380","type":"text","heading":"","plain_text":"-sT\nTCP scan. Full connection made.","html":"<p>-sT\nTCP scan. Full connection made.</p>"},{"id":"text-381","type":"text","heading":"","plain_text":"-sS\nSYN scan (half open scan). This scan is typically not logged on receiving system.","html":"<p>-sS\nSYN scan (half open scan). This scan is typically not logged on receiving system.</p>"},{"id":"text-382","type":"text","heading":"","plain_text":"-sP\nPing ICMP scan.","html":"<p>-sP\nPing ICMP scan.</p>"},{"id":"text-383","type":"text","heading":"","plain_text":"-sU\nUDP scan.","html":"<p>-sU\nUDP scan.</p>"},{"id":"text-384","type":"text","heading":"","plain_text":"-P0\nDon&#39;t ping before scan.","html":"<p>-P0\nDon&#039;t ping before scan.</p>"},{"id":"text-385","type":"text","heading":"","plain_text":"-PT\nUse ping to determine which hosts are available.","html":"<p>-PT\nUse ping to determine which hosts are available.</p>"},{"id":"text-386","type":"text","heading":"","plain_text":"-F\nFast scan. Scan for ports listed in configuration.","html":"<p>-F\nFast scan. Scan for ports listed in configuration.</p>"},{"id":"text-387","type":"text","heading":"","plain_text":"-T\nSet timing of scan to use values to avoid detection.","html":"<p>-T\nSet timing of scan to use values to avoid detection.</p>"},{"id":"text-388","type":"text","heading":"","plain_text":"-O\nDetermines operating system.","html":"<p>-O\nDetermines operating system.</p>"},{"id":"text-389","type":"text","heading":"","plain_text":"-p 1000-1999,5000-5999\nScan port ranges specified.","html":"<p>-p 1000-1999,5000-5999\nScan port ranges specified.</p>"},{"id":"text-390","type":"text","heading":"","plain_text":"Also see: nmap man page for a full listing of nmap command line arguments.\n        \nExemples:\n    \n            nmap -sT -F IP-address         Scan\n   \n   \n   \n   nmap -sS -F IP-address         SYN Scan\n   \n   \n   \n   nmap -sU -F IP-address         Scan UPD ports\n   \n   \n   \n   nmap -sF -F IP-address         FIN Scan\n   \n   \n   \n   nmap -O  -F IP-address         Determine OS\n   \n   \n   \n   nmap -p22 -F -O  IP-address        nmap -p 1-30,40-65535  IP-Address  Scan given port ranges\n        \nAdd the option -v (verbose) or -vv (super verbose) for more info.\n        The ports will be determined to be open, filtered or firewalled.","html":"<p>Also see: nmap man page for a full listing of nmap command line arguments.\n        \nExemples:\n    \n            nmap -sT -F IP-address         Scan\n   \n   \n   \n   nmap -sS -F IP-address         SYN Scan\n   \n   \n   \n   nmap -sU -F IP-address         Scan UPD ports\n   \n   \n   \n   nmap -sF -F IP-address         FIN Scan\n   \n   \n   \n   nmap -O  -F IP-address         Determine OS\n   \n   \n   \n   nmap -p22 -F -O  IP-address        nmap -p 1-30,40-65535  IP-Address  Scan given port ranges\n        \nAdd the option -v (verbose) or -vv (super verbose) for more info.\n        The ports will be determined to be open, filtered or firewalled.</p>"},{"id":"text-391","type":"text","heading":"","plain_text":"Sample output from command: nmap -sS -F -O IP-Address\n    \nStarting nmap V. 2.54BETA7 ( www.insecure.org/nmap/ ).....(The 1067 ports scanned but not shown below are in state: closed)Port       State       Service21/tcp     open        ftp                     22/tcp     open        ssh                     25/tcp     open        smtp                    53/tcp     open        domain                  111/tcp    open        sunrpc          - Shut down the portmap (RPC) daemon:    /etc/rc.d/init.d/portmap stop\n137/tcp    filtered    netbios-ns      - Turn off netbios services:      /etc/rc.d/init.d/smb stop\n138/tcp    filtered    netbios-dgm             \n139/tcp    filtered    netbios-ssn","html":"<p>Sample output from command: nmap -sS -F -O IP-Address\n    \nStarting nmap V. 2.54BETA7 ( www.insecure.org/nmap/ ).....(The 1067 ports scanned but not shown below are in state: closed)Port       State       Service21/tcp     open        ftp                     22/tcp     open        ssh                     25/tcp     open        smtp                    53/tcp     open        domain                  111/tcp    open        sunrpc          - Shut down the portmap (RPC) daemon:    /etc/rc.d/init.d/portmap stop\n137/tcp    filtered    netbios-ns      - Turn off netbios services:      /etc/rc.d/init.d/smb stop\n138/tcp    filtered    netbios-dgm             \n139/tcp    filtered    netbios-ssn</p>"},{"id":"text-392","type":"text","heading":"","plain_text":"TCP Sequence Prediction: Class=random positive increments\n                         Difficulty=2727445 (Good luck!)\nRemote operating system guess: Linux 2.1.122 - 2.2.16","html":"<p>TCP Sequence Prediction: Class=random positive increments\n                         Difficulty=2727445 (Good luck!)\nRemote operating system guess: Linux 2.1.122 - 2.2.16</p>"},{"id":"text-393","type":"text","heading":"","plain_text":"Nmap run completed -- 1 IP address (1 host up) scanned in 36 seconds","html":"<p>Nmap run completed -- 1 IP address (1 host up) scanned in 36 seconds</p>"},{"id":"text-394","type":"text","heading":"","plain_text":"nmap/nmapfe: nmapfe = nmap front end &#8211; GUI front end to nmap.\n    It&#39;s an amazingly easy and useful tool which will help\n    you make discoveries about your servers before the hackers do.\n    \n    Linux packages:","html":"<p>nmap/nmapfe: nmapfe = nmap front end &#8211; GUI front end to nmap.\n    It&#039;s an amazingly easy and useful tool which will help\n    you make discoveries about your servers before the hackers do.\n    \n    Linux packages:</p>"},{"id":"text-395","type":"text","heading":"","plain_text":"Red Hat RPMs: nmap-XXX.x86_64.rpm, nmap-frontend-XXX.noarch.rpm (GTK+ GUI)\n    \nUbuntu: nmap, zenmap","html":"<p>Red Hat RPMs: nmap-XXX.x86_64.rpm, nmap-frontend-XXX.noarch.rpm (GTK+ GUI)\n    \nUbuntu: nmap, zenmap</p>"},{"id":"text-396","type":"text","heading":"","plain_text":"Links:","html":"<p>Links:</p>"},{"id":"text-397","type":"text","heading":"","plain_text":"Tripwire: (security monitoring)","html":"<p>Tripwire: (security monitoring)</p>"},{"id":"text-398","type":"text","heading":"","plain_text":"Tripwire monitors your file system for changes. Tripwire is used to create an\ninitial database of information on all the system files then runs periodically\n(cron) to compare the system to the database.","html":"<p>Tripwire monitors your file system for changes. Tripwire is used to create an\ninitial database of information on all the system files then runs periodically\n(cron) to compare the system to the database.</p>"},{"id":"text-399","type":"text","heading":"","plain_text":"Use the command tripwire --version ou\nrpm -q tripwire to determine the version.","html":"<p>Use the command tripwire --version ou\nrpm -q tripwire to determine the version.</p>"},{"id":"text-400","type":"text","heading":"","plain_text":"Red Hat includes Tripwire as an optional package during install.\nThe Ubuntu/Debian install is as easy as apt-get install tripwire.\nUpon installation it will proceed to scan your entire filesystem to create\na default database of what your system looks like. (files and sizes etc)\nIt took about ten minutes to run on my server!","html":"<p>Red Hat includes Tripwire as an optional package during install.\nThe Ubuntu/Debian install is as easy as apt-get install tripwire.\nUpon installation it will proceed to scan your entire filesystem to create\na default database of what your system looks like. (files and sizes etc)\nIt took about ten minutes to run on my server!</p>"},{"id":"text-401","type":"text","heading":"","plain_text":"Tripwire configuration files:","html":"<p>Tripwire configuration files:</p>"},{"id":"text-402","type":"text","heading":"","plain_text":"Tripwire 2.3.0:","html":"<p>Tripwire 2.3.0:</p>"},{"id":"text-403","type":"text","heading":"","plain_text":"/etc/tripwire/twcfg.txt\n    \n/etc/tripwire/twpol.txt","html":"<p>/etc/tripwire/twcfg.txt\n    \n/etc/tripwire/twpol.txt</p>"},{"id":"text-404","type":"text","heading":"","plain_text":"These files are first edited and then processed by the script\n    /etc/tripwire/twinstall.sh which configures Tripwire after the\n    installation of the Tripwire RPM package.","html":"<p>These files are first edited and then processed by the script\n    /etc/tripwire/twinstall.sh which configures Tripwire after the\n    installation of the Tripwire RPM package.</p>"},{"id":"text-405","type":"text","heading":"","plain_text":"Edit and change file: /etc/tripwire/twcfg.txt\n    \n    Change:\n    LOOSEDIRECTORYCHECKING =false\n    à\n    LOOSEDIRECTORYCHECKING=TRUE","html":"<p>Edit and change file: /etc/tripwire/twcfg.txt\n    \n    Change:\n    LOOSEDIRECTORYCHECKING =false\n    à\n    LOOSEDIRECTORYCHECKING=TRUE</p>"},{"id":"text-406","type":"text","heading":"","plain_text":"This was recommended in the comments of the file twpol.txt\n    \n    Edit and change file: /etc/tripwire/twpol.txt\n    \n    Change:\n    severity = $(SIG_XXX)\n    à\n    severity = $(SIG_XXX),emailto = root@localhost\n    ou\n    severity = $(SIG_XXX),emailto = root@localhost;admin@isp.com\noù XXX is the severity level.\n    This will cause Tripwire to email a report of discrepancies for the\n    rule edited. Set the email address to one appropriate for you.\n    \n    I also added:","html":"<p>This was recommended in the comments of the file twpol.txt\n    \n    Edit and change file: /etc/tripwire/twpol.txt\n    \n    Change:\n    severity = $(SIG_XXX)\n    à\n    severity = $(SIG_XXX),emailto = root@localhost\n    ou\n    severity = $(SIG_XXX),emailto = root@localhost;admin@isp.com\noù XXX is the severity level.\n    This will cause Tripwire to email a report of discrepancies for the\n    rule edited. Set the email address to one appropriate for you.\n    \n    I also added:</p>"},{"id":"text-407","type":"text","heading":"","plain_text":"&quot;User binaries&quot; rule:  directory /opt/bin\n        \n&quot;Libraries&quot; rule:  directory /opt/lib","html":"<p>&quot;User binaries&quot; rule:  directory /opt/bin\n        \n&quot;Libraries&quot; rule:  directory /opt/lib</p>"},{"id":"text-408","type":"text","heading":"","plain_text":"I removed/commented out:","html":"<p>I removed/commented out:</p>"},{"id":"text-409","type":"text","heading":"","plain_text":"the rule &quot;System boot changes&quot; as it reports changes due to system boot.\n        \n    Rule: &quot;Root config files&quot;: Many of the non-existent\nfiles listed under /root were commented out to reduce the number of\nerrors reported. \n    Rule &quot;File System and Disk Administraton Programs&quot;: Many\nof the non-existent binaries listed under /sbin were commented out to\nreduce the number of errors reported.","html":"<p>the rule &quot;System boot changes&quot; as it reports changes due to system boot.\n        \n    Rule: &quot;Root config files&quot;: Many of the non-existent\nfiles listed under /root were commented out to reduce the number of\nerrors reported. \n    Rule &quot;File System and Disk Administraton Programs&quot;: Many\nof the non-existent binaries listed under /sbin were commented out to\nreduce the number of errors reported.</p>"},{"id":"text-410","type":"text","heading":"","plain_text":"After configuration files have been edited run the script: /etc/tripwire/twinstall.sh\n    The script will ask for a &quot;passphrase&quot; for the site and local system.\n    This is a similar concept to a password &#8211; remember it!\n    \n    If at any point you want to\n    make configuration/policy changes, edit these files and re-run the\n    configuration script. The script will generate the true configuration\n    files used by Tripwire:","html":"<p>After configuration files have been edited run the script: /etc/tripwire/twinstall.sh\n    The script will ask for a &quot;passphrase&quot; for the site and local system.\n    This is a similar concept to a password &#8211; remember it!\n    \n    If at any point you want to\n    make configuration/policy changes, edit these files and re-run the\n    configuration script. The script will generate the true configuration\n    files used by Tripwire:</p>"},{"id":"text-411","type":"text","heading":"","plain_text":"/etc/tripwire/tw.cfg\n        (View with command: twadmin --print-cfgfile)\n    \n/etc/tripwire/tw.pol\n        (View with command: twadmin --print-polfile)\n    \n/etc/tripwire/site.key\n    \n/etc/tripwire/ServerName-a-local.key","html":"<p>/etc/tripwire/tw.cfg\n        (View with command: twadmin --print-cfgfile)\n    \n/etc/tripwire/tw.pol\n        (View with command: twadmin --print-polfile)\n    \n/etc/tripwire/site.key\n    \n/etc/tripwire/ServerName-a-local.key</p>"},{"id":"text-412","type":"text","heading":"","plain_text":"These files are binary and not human readable.","html":"<p>These files are binary and not human readable.</p>"},{"id":"text-413","type":"text","heading":"","plain_text":"Tripwire 1.2-3 (Red Hat 6.2 Powertools): /etc/tw.config","html":"<p>Tripwire 1.2-3 (Red Hat 6.2 Powertools): /etc/tw.config</p>"},{"id":"text-414","type":"text","heading":"","plain_text":"Tripwire initialization:","html":"<p>Tripwire initialization:</p>"},{"id":"text-415","type":"text","heading":"","plain_text":"If at any time you change the configuration file to monitor your system\ndifferently or install an upgrade (changes a whole lot of files which\nwill &quot;trip&quot; tripwire into reporting all changes) you may want to generate\na new database.","html":"<p>If at any time you change the configuration file to monitor your system\ndifferently or install an upgrade (changes a whole lot of files which\nwill &quot;trip&quot; tripwire into reporting all changes) you may want to generate\na new database.</p>"},{"id":"text-416","type":"text","heading":"","plain_text":"Tripwire 2.3.0-58: /usr/sbin/tripwire --init\n    You will be prompted for your &quot;local passphrase&quot;.\n    This will generate a tripwire database file: /var/lib/tripwire/ServerName-a.twd","html":"<p>Tripwire 2.3.0-58: /usr/sbin/tripwire --init\n    You will be prompted for your &quot;local passphrase&quot;.\n    This will generate a tripwire database file: /var/lib/tripwire/ServerName-a.twd</p>"},{"id":"text-417","type":"text","heading":"","plain_text":"Tripwire 1.2-3: /usr/sbin/tripwire -initialize\nThis will generate a tripwire database file: ./databases/tw.db_ServerName\n        If you are in root&#39;s home directory, this will create the file  /root/databases/tw.db_ServerName\n        At this point copy it to a usable location:","html":"<p>Tripwire 1.2-3: /usr/sbin/tripwire -initialize\nThis will generate a tripwire database file: ./databases/tw.db_ServerName\n        If you are in root&#039;s home directory, this will create the file  /root/databases/tw.db_ServerName\n        At this point copy it to a usable location:</p>"},{"id":"text-418","type":"text","heading":"","plain_text":"cp -p /root/databases/tw.db_ServerName  /var/spool/tripwire/tw.db_ServerName\n        \nDon&#39;t change /etc/tw.config\n without first running tripwire -initialize\notherwise it will show differences due to settings in tw.config file rather\nthan true differences.","html":"<p>cp -p /root/databases/tw.db_ServerName  /var/spool/tripwire/tw.db_ServerName\n        \nDon&#039;t change /etc/tw.config\n without first running tripwire -initialize\notherwise it will show differences due to settings in tw.config file rather\nthan true differences.</p>"},{"id":"text-419","type":"text","heading":"","plain_text":"Cron and tripwire:","html":"<p>Cron and tripwire:</p>"},{"id":"text-420","type":"text","heading":"","plain_text":"Cron runs tripwire:","html":"<p>Cron runs tripwire:</p>"},{"id":"text-421","type":"text","heading":"","plain_text":"Tripwire 2.3.0-58:\n    Fichier: /etc/cron.daily/tripwire-check","html":"<p>Tripwire 2.3.0-58:\n    Fichier: /etc/cron.daily/tripwire-check</p>"},{"id":"text-422","type":"text","heading":"","plain_text":"#!/bin/sh\nHOST_NAME=`uname -n`\nsi [ ! -e /var/lib/tripwire/$HOST_NAME.twd ] ; puis\n        echo &quot;****    Error: Tripwire database for $HOST_NAME not found.    ****&quot;\n        echo &quot;**** Run &quot;/etc/tripwire/twinstall.sh&quot; and/or &quot;tripwire --init&quot;. ****&quot;\nautre\n        test -f /etc/tripwire/tw.cfg &amp;&amp;  /usr/sbin/tripwire --check\nFi","html":"<p>#!/bin/sh\nHOST_NAME=`uname -n`\nsi [ ! -e /var/lib/tripwire/$HOST_NAME.twd ] ; puis\n        echo &quot;****    Error: Tripwire database for $HOST_NAME not found.    ****&quot;\n        echo &quot;**** Run &quot;/etc/tripwire/twinstall.sh&quot; and/or &quot;tripwire --init&quot;. ****&quot;\nautre\n        test -f /etc/tripwire/tw.cfg &amp;&amp;  /usr/sbin/tripwire --check\nFi</p>"},{"id":"text-423","type":"text","heading":"","plain_text":"You may move this cron script to the directory /etc/cron.weekly/\n    to reduce reporting from a daily to a weekly event.\n    Tripwire reports will be written to: /var/lib/tripwire/report/HostName-Date.twr","html":"<p>You may move this cron script to the directory /etc/cron.weekly/\n    to reduce reporting from a daily to a weekly event.\n    Tripwire reports will be written to: /var/lib/tripwire/report/HostName-Date.twr</p>"},{"id":"text-424","type":"text","heading":"","plain_text":"Tripwire 1.2-3:\n    Fichier: /etc/cron.daily/tripwire.verify\nscript which runs the command: /usr/sbin/tripwire -loosedir -q\n        Note: You may want to move the script to /etc/cron.weekly/tripwire.verify\n to reduce email reporting to root.","html":"<p>Tripwire 1.2-3:\n    Fichier: /etc/cron.daily/tripwire.verify\nscript which runs the command: /usr/sbin/tripwire -loosedir -q\n        Note: You may want to move the script to /etc/cron.weekly/tripwire.verify\n to reduce email reporting to root.</p>"},{"id":"text-425","type":"text","heading":"","plain_text":"Read tripwire report:","html":"<p>Read tripwire report:</p>"},{"id":"text-426","type":"text","heading":"","plain_text":"Tripwire 2.3.0-58: twprint --print-report -r /var/lib/tripwire/report/report-file.twr","html":"<p>Tripwire 2.3.0-58: twprint --print-report -r /var/lib/tripwire/report/report-file.twr</p>"},{"id":"text-427","type":"text","heading":"","plain_text":"Interactive mode:","html":"<p>Interactive mode:</p>"},{"id":"text-428","type":"text","heading":"","plain_text":"Tripwire 1.2-3:\n      Update tripwire database &#8211; run:\n        tripwire -interactive\n        This will allow you to respond Y/N to files if they should be permanently\nupdated in the tripwire database. This will still run tripwire against the\nwhole file system.\n I ran it from /root and it updated\n        /root/databases/tw.db_ServerName \nYou must then cp -p to /var/spool/tripwire/\nto update the tripwire database.","html":"<p>Tripwire 1.2-3:\n      Update tripwire database &#8211; run:\n        tripwire -interactive\n        This will allow you to respond Y/N to files if they should be permanently\nupdated in the tripwire database. This will still run tripwire against the\nwhole file system.\n I ran it from /root and it updated\n        /root/databases/tw.db_ServerName \nYou must then cp -p to /var/spool/tripwire/\nto update the tripwire database.</p>"},{"id":"text-429","type":"text","heading":"","plain_text":"Default configuration file:","html":"<p>Default configuration file:</p>"},{"id":"text-430","type":"text","heading":"","plain_text":"Tripwire 2.3.0-58: /etc/twcfg.txt\nROOT                   =/usr/sbinPOLFILE                =/etc/tripwire/tw.polDBFILE                 =/var/lib/tripwire/$(HOSTNAME).twdREPORTFILE             =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twrSITEKEYFILE            =/etc/tripwire/site.keyLOCALKEYFILE           =/etc/tripwire/$(HOSTNAME)-local.keyEDITOR                 =/bin/viLATEPROMPTING          =falseLOOSEDIRECTORYCHECKING =falseMAILNOVIOLATIONS       =trueEMAILREPORTLEVEL       =3REPORTLEVEL            =3MAILMETHOD             =SENDMAILSYSLOGREPORTING        =falseMAILPROGRAM            =/usr/sbin/sendmail -oi -t","html":"<p>Tripwire 2.3.0-58: /etc/twcfg.txt\nROOT                   =/usr/sbinPOLFILE                =/etc/tripwire/tw.polDBFILE                 =/var/lib/tripwire/$(HOSTNAME).twdREPORTFILE             =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twrSITEKEYFILE            =/etc/tripwire/site.keyLOCALKEYFILE           =/etc/tripwire/$(HOSTNAME)-local.keyEDITOR                 =/bin/viLATEPROMPTING          =falseLOOSEDIRECTORYCHECKING =falseMAILNOVIOLATIONS       =trueEMAILREPORTLEVEL       =3REPORTLEVEL            =3MAILMETHOD             =SENDMAILSYSLOGREPORTING        =falseMAILPROGRAM            =/usr/sbin/sendmail -oi -t</p>"},{"id":"text-431","type":"text","heading":"","plain_text":"Tripwire 1.2-3: /etc/tw.config\n# Log file@@define LOGFILEM E+pugn# Config file@@define CONFM E+pinugc# Binary@@define BINM E+pnugsci12# Directory@@define DIRM E+pnug# Data file (same as BIN_M currently)@@define DATAM E+pnugsci12# Device files@@define DEVM E+pnugsc# exclude all of /proc=/proc E#=/dev @@DIRM/dev @@DEVM#=/etc @@DIRM/etc @@CONFM# Binary directories#=/usr/sbin @@DIRM/usr/sbin @@BINM#=/usr/bin @@DIRM/usr/bin @@BINM#=/sbin @@DIRM/sbin @@BINM#=/bin @@DIRM/bin @@BINM#=/lib @@DIRM/lib @@BINM#=/usr/lib @@DIRM/usr/lib @@BINM=/usr/src E=/tmp @@DIRM\nAjouter:\n    \n/var/named @@CONFM                   - If you are running Bind DNS slave","html":"<p>Tripwire 1.2-3: /etc/tw.config\n# Log file@@define LOGFILEM E+pugn# Config file@@define CONFM E+pinugc# Binary@@define BINM E+pnugsci12# Directory@@define DIRM E+pnug# Data file (same as BIN_M currently)@@define DATAM E+pnugsci12# Device files@@define DEVM E+pnugsc# exclude all of /proc=/proc E#=/dev @@DIRM/dev @@DEVM#=/etc @@DIRM/etc @@CONFM# Binary directories#=/usr/sbin @@DIRM/usr/sbin @@BINM#=/usr/bin @@DIRM/usr/bin @@BINM#=/sbin @@DIRM/sbin @@BINM#=/bin @@DIRM/bin @@BINM#=/lib @@DIRM/lib @@BINM#=/usr/lib @@DIRM/usr/lib @@BINM=/usr/src E=/tmp @@DIRM\nAjouter:\n    \n/var/named @@CONFM                   - If you are running Bind DNS slave</p>"},{"id":"text-432","type":"text","heading":"","plain_text":"/home/httpd/cgi-bin @@BINM\n        \nDelete/comment out:\n#/dev @@DEVM\nThis eliminated the reporting of too much junk due to a reboot of the system.","html":"<p>/home/httpd/cgi-bin @@BINM\n        \nDelete/comment out:\n#/dev @@DEVM\nThis eliminated the reporting of too much junk due to a reboot of the system.</p>"},{"id":"text-433","type":"text","heading":"","plain_text":"Man pages:","html":"<p>Man pages:</p>"},{"id":"text-434","type":"text","heading":"","plain_text":"Tripwire 2.3.0-58:","html":"<p>Tripwire 2.3.0-58:</p>"},{"id":"text-435","type":"text","heading":"","plain_text":"tripwire &#8211; a file integrity checker for UNIX systems\n      \ntwintro &#8211; introduction to Tripwire software\n      \ntwadmin &#8211; Tripwire administrative and utility tool\n      \ntwprint &#8211; Tripwire database and report printer\n      \nsiggen &#8211; signature gathering routine for Tripwire\n      \ntwconfig &#8211; Tripwire configuration file reference\n      \ntwpolicy &#8211; Tripwire policy file description reference (For file /etc/tripwire/twpol.txt)\n      \ntwfiles &#8211; Overview of files used by Tripwire and file backup process","html":"<p>tripwire &#8211; a file integrity checker for UNIX systems\n      \ntwintro &#8211; introduction to Tripwire software\n      \ntwadmin &#8211; Tripwire administrative and utility tool\n      \ntwprint &#8211; Tripwire database and report printer\n      \nsiggen &#8211; signature gathering routine for Tripwire\n      \ntwconfig &#8211; Tripwire configuration file reference\n      \ntwpolicy &#8211; Tripwire policy file description reference (For file /etc/tripwire/twpol.txt)\n      \ntwfiles &#8211; Overview of files used by Tripwire and file backup process</p>"},{"id":"text-436","type":"text","heading":"","plain_text":"Regarde aussi:","html":"<p>Regarde aussi:</p>"},{"id":"text-437","type":"text","heading":"","plain_text":"CHKROOTKIT: Performing a trojan/worm/virus file scan.","html":"<p>CHKROOTKIT: Performing a trojan/worm/virus file scan.</p>"},{"id":"text-438","type":"text","heading":"","plain_text":"Tripwire will monitor your filesystems for intrusion or addition of a file\nso you may determine what changes have occurred on your system in sensitive\nareas.  Chkrootkit will scan your system for known exploits,\nTrojan commands, and worms used to compromise a system.","html":"<p>Tripwire will monitor your filesystems for intrusion or addition of a file\nso you may determine what changes have occurred on your system in sensitive\nareas.  Chkrootkit will scan your system for known exploits,\nTrojan commands, and worms used to compromise a system.</p>"},{"id":"text-439","type":"text","heading":"","plain_text":"Download chkrootkit from http://www.chkrootkit.org. It is a shell script which should be run as root as well as a\nsmall collection of C programs.","html":"<p>Download chkrootkit from http://www.chkrootkit.org. It is a shell script which should be run as root as well as a\nsmall collection of C programs.</p>"},{"id":"text-440","type":"text","heading":"","plain_text":"Installation:","html":"<p>Installation:</p>"},{"id":"text-441","type":"text","heading":"","plain_text":"avoir du sens  (Compile C programs)\n    \n./chkrootkit (Run shell script and call programs.)","html":"<p>avoir du sens  (Compile C programs)\n    \n./chkrootkit (Run shell script and call programs.)</p>"},{"id":"text-442","type":"text","heading":"","plain_text":"Usage:","html":"<p>Usage:</p>"},{"id":"text-443","type":"text","heading":"","plain_text":"./chkrootkit\n        OU\n./chkrootkit -h (help)","html":"<p>./chkrootkit\n        OU\n./chkrootkit -h (help)</p>"},{"id":"text-444","type":"text","heading":"","plain_text":"See the README file for more info.","html":"<p>See the README file for more info.</p>"},{"id":"text-445","type":"text","heading":"","plain_text":"Remarque:","html":"<p>Remarque:</p>"},{"id":"text-446","type":"text","heading":"","plain_text":"This software is constantly being upgraded and updated to include\n    scans for new exploits.\n  \nIf running portsentry, chkrootkit may return a false error while performing the bindshell test.","html":"<p>This software is constantly being upgraded and updated to include\n    scans for new exploits.\n  \nIf running portsentry, chkrootkit may return a false error while performing the bindshell test.</p>"},{"id":"text-447","type":"text","heading":"","plain_text":"NESSUS: Performing a network vulnerability scan/security assessment of your system.","html":"<p>NESSUS: Performing a network vulnerability scan/security assessment of your system.</p>"},{"id":"text-448","type":"text","heading":"","plain_text":"Let me start by saying that this should only be performed on your own systems.\nIt is considered and attack to run this against the systems of others\nand legal action may be taken against you for performing such an audit.\nThis is not a scan like NMAP. NESSUS will search and locate vulnerabilities\non your system by actively trying to perform known exploits against the\nsystème.","html":"<p>Let me start by saying that this should only be performed on your own systems.\nIt is considered and attack to run this against the systems of others\nand legal action may be taken against you for performing such an audit.\nThis is not a scan like NMAP. NESSUS will search and locate vulnerabilities\non your system by actively trying to perform known exploits against the\nsystème.</p>"},{"id":"text-449","type":"text","heading":"","plain_text":"Nessus is amazingly complete and effective. In fact it is awesome!!\nIt will identify services on your system and try to exploit them.\nIf a vulnerability is found it will make recommendations about upgrades,\nconfiguration changes and where to find patches. It will also explain\nany causes for concern in detail and explain why your system is vulnerable.\nAnd that&#39;s not all! It can output reports in various formats including HTML\nwith pie charts and bar charts!! The HTML reports will have hyperlinks to the\nsecurity reports, upgrades and patches. (I&#39;m impressed)\nIt can scan Unix, Linux and Windows systems for vulnerabilities.","html":"<p>Nessus is amazingly complete and effective. In fact it is awesome!!\nIt will identify services on your system and try to exploit them.\nIf a vulnerability is found it will make recommendations about upgrades,\nconfiguration changes and where to find patches. It will also explain\nany causes for concern in detail and explain why your system is vulnerable.\nAnd that&#039;s not all! It can output reports in various formats including HTML\nwith pie charts and bar charts!! The HTML reports will have hyperlinks to the\nsecurity reports, upgrades and patches. (I&#039;m impressed)\nIt can scan Unix, Linux and Windows systems for vulnerabilities.</p>"},{"id":"text-450","type":"text","heading":"","plain_text":"Remarque:","html":"<p>Remarque:</p>"},{"id":"text-451","type":"text","heading":"","plain_text":"Running &quot;Dangerous Plugins&quot; may cause a crash of the system being audited!!","html":"<p>Running &quot;Dangerous Plugins&quot; may cause a crash of the system being audited!!</p>"},{"id":"text-452","type":"text","heading":"","plain_text":"The NESSUS software is available from http://Nessus.org.\nIf compiling source:","html":"<p>The NESSUS software is available from http://Nessus.org.\nIf compiling source:</p>"},{"id":"text-453","type":"text","heading":"","plain_text":"Edit file: nessus-core/include/config.h (Set USE_AF_UNIX to define socket type)","html":"<p>Edit file: nessus-core/include/config.h (Set USE_AF_UNIX to define socket type)</p>"},{"id":"text-454","type":"text","heading":"","plain_text":"It is also available in RPM form: (See http://freshrpms.net)","html":"<p>It is also available in RPM form: (See http://freshrpms.net)</p>"},{"id":"text-455","type":"text","heading":"","plain_text":"nessus-client-&#8230;.rpm\n  \nnessus-common-&#8230;.rpm\n  \nnessus-plugins-&#8230;.rpm\n  \nnessus-server-&#8230;.rpm : Nessus plugins which are used to perform\nthe various checks. (Scripts in nasl scripting language) Note that the\nRPM installs an init script which starts nessusd during boot. Disable\navec chkconfig --del nessusd\n  \nnessus-devel-&#8230;.rpm : Nessus development libraries and headers.","html":"<p>nessus-client-&#8230;.rpm\n  \nnessus-common-&#8230;.rpm\n  \nnessus-plugins-&#8230;.rpm\n  \nnessus-server-&#8230;.rpm : Nessus plugins which are used to perform\nthe various checks. (Scripts in nasl scripting language) Note that the\nRPM installs an init script which starts nessusd during boot. Disable\navec chkconfig --del nessusd\n  \nnessus-devel-&#8230;.rpm : Nessus development libraries and headers.</p>"},{"id":"text-456","type":"text","heading":"","plain_text":"Running NESSUS:","html":"<p>Running NESSUS:</p>"},{"id":"text-457","type":"text","heading":"","plain_text":"Configuration file: /etc/nessus/nessusd.conf","html":"<p>Configuration file: /etc/nessus/nessusd.conf</p>"},{"id":"text-458","type":"text","heading":"","plain_text":"You may also consider a popular branch of Nessus, OpenVAS: Open Vulnerability Assessment System","html":"<p>You may also consider a popular branch of Nessus, OpenVAS: Open Vulnerability Assessment System</p>"},{"id":"text-459","type":"text","heading":"","plain_text":"Useful links and resources:","html":"<p>Useful links and resources:</p>"},{"id":"text-460","type":"text","heading":"","plain_text":"Livres:","html":"<p>Livres:</p>"},{"id":"text-461","type":"text","heading":"","plain_text":"&quot;Linux Firewalls&quot;\n    by Robert L. Ziegler, Carl Constaintine\n    ISBN #0735710996, New Riders 10/2001","html":"<p>&quot;Linux Firewalls&quot;\n    by Robert L. Ziegler, Carl Constaintine\n    ISBN #0735710996, New Riders 10/2001</p>"},{"id":"text-462","type":"text","heading":"","plain_text":"This is the newer version. It includes updates on the Linux 2.4 kernel,\n    VPN&#39;s and SSH.","html":"<p>This is the newer version. It includes updates on the Linux 2.4 kernel,\n    VPN&#039;s and SSH.</p>"},{"id":"text-463","type":"text","heading":"","plain_text":"&quot;Linux Firewalls&quot;\n    Robert L. Ziegler\n    ISBN #0-7357-0900-9, New Riders 11/1999","html":"<p>&quot;Linux Firewalls&quot;\n    Robert L. Ziegler\n    ISBN #0-7357-0900-9, New Riders 11/1999</p>"},{"id":"text-464","type":"text","heading":"","plain_text":"Most complete Linux firewall/security book in publication.\n    Covers ipchains, bind and a complete review of possible firewall configurations.","html":"<p>Most complete Linux firewall/security book in publication.\n    Covers ipchains, bind and a complete review of possible firewall configurations.</p>"},{"id":"text-465","type":"text","heading":"","plain_text":"&quot;Hack Proofing Linux : A Guide to Open Source Security&quot;\n    by James Stanger, Patrick T. Lane\n    ISBN #1928994342, Syngress","html":"<p>&quot;Hack Proofing Linux : A Guide to Open Source Security&quot;\n    by James Stanger, Patrick T. Lane\n    ISBN #1928994342, Syngress</p>"},{"id":"text-466","type":"text","heading":"","plain_text":"&quot;Real World Linux Security: Intrusion Prevention, Detection and Recovery&quot;\n    by Bob Toxen\n    ISBN #0130281875, Prentice Hall","html":"<p>&quot;Real World Linux Security: Intrusion Prevention, Detection and Recovery&quot;\n    by Bob Toxen\n    ISBN #0130281875, Prentice Hall</p>"},{"id":"text-467","type":"text","heading":"","plain_text":"&quot;Hacking Linux Exposed&quot;\n    by Brian Hatch, James B. Lee, George Kurtz\n    ISBN #0072225645, McGraw-Hill (2nd edition)","html":"<p>&quot;Hacking Linux Exposed&quot;\n    by Brian Hatch, James B. Lee, George Kurtz\n    ISBN #0072225645, McGraw-Hill (2nd edition)</p>"},{"id":"text-468","type":"text","heading":"","plain_text":"From the same authors of &quot;Hacking Exposed&quot;.","html":"<p>From the same authors of &quot;Hacking Exposed&quot;.</p>"},{"id":"text-469","type":"text","heading":"","plain_text":"&quot;Maximum Linux Security: A Hacker&#39;s Guide to Protecting Your Linux Server and Workstation&quot;\n    by Anonymous and John Ray\n    ISBN #0672321343, Sams","html":"<p>&quot;Maximum Linux Security: A Hacker&#039;s Guide to Protecting Your Linux Server and Workstation&quot;\n    by Anonymous and John Ray\n    ISBN #0672321343, Sams</p>"},{"id":"text-470","type":"text","heading":"","plain_text":"Covers not only audit and protection methods but also investigates and\n    explains the attacks and how they work.","html":"<p>Covers not only audit and protection methods but also investigates and\n    explains the attacks and how they work.</p>"},{"id":"text-471","type":"text","heading":"","plain_text":"&quot;Network Intrusion Detection: An Analyst&#39;s Handbook&quot;\n    by Stephen Northcutt, Donald McLachlan, Judy Novak\n    ISBN #0735710082, New Riders Publishing","html":"<p>&quot;Network Intrusion Detection: An Analyst&#039;s Handbook&quot;\n    by Stephen Northcutt, Donald McLachlan, Judy Novak\n    ISBN #0735710082, New Riders Publishing</p>"},{"id":"text-472","type":"text","heading":"","plain_text":"&quot;SSH, the Secure Shell : The Definitive Guide&quot;\n    by Daniel J. Barrett, Richard Silverman\n    ISBN #0596000111, O&#39;Reilly &amp; Associates","html":"<p>&quot;SSH, the Secure Shell : The Definitive Guide&quot;\n    by Daniel J. Barrett, Richard Silverman\n    ISBN #0596000111, O&#039;Reilly &amp; Associates</p>"},{"id":"text-473","type":"text","heading":"","plain_text":"&quot;Nessus Network Auditing (Jay Beale&#39;s Open Source Security)&quot;\n    by Renaud Deraison, Noam Rathaus, HD Moore, Raven Alder, George Theall, Andy Johnston, Jimmy Alderson\n    ISBN #1931836086, Syngress","html":"<p>&quot;Nessus Network Auditing (Jay Beale&#039;s Open Source Security)&quot;\n    by Renaud Deraison, Noam Rathaus, HD Moore, Raven Alder, George Theall, Andy Johnston, Jimmy Alderson\n    ISBN #1931836086, Syngress</p>"},{"id":"text-474","type":"text","heading":"","plain_text":"&quot;Computer Security Incident Handling Step by Step&quot;\n    by Stephen Northcutt\n    ISBN #0967299217","html":"<p>&quot;Computer Security Incident Handling Step by Step&quot;\n    by Stephen Northcutt\n    ISBN #0967299217</p>"},{"id":"text-475","type":"text","heading":"","plain_text":"&quot;Security Assessment: Case Studies for Implementing the NSA IAM&quot;\n    by Russ Rogers, Greg Miles, Ed Fuller, Ted Dykstra\n    ISBN #1932266968, Syngress","html":"<p>&quot;Security Assessment: Case Studies for Implementing the NSA IAM&quot;\n    by Russ Rogers, Greg Miles, Ed Fuller, Ted Dykstra\n    ISBN #1932266968, Syngress</p>"},{"id":"text-476","type":"text","heading":"","plain_text":"&quot;Network Security Assessment&quot;\n    by Chris McNab\n    ISBN #059600611X, O&#39;Reilly","html":"<p>&quot;Network Security Assessment&quot;\n    by Chris McNab\n    ISBN #059600611X, O&#039;Reilly</p>"},{"id":"text-477","type":"text","heading":"","plain_text":"&quot;A Practical Guide to Security Assessment&quot;\n    by Sudhanshu Kairab\n    ISBN #0849317061, Auerbach Publications","html":"<p>&quot;A Practical Guide to Security Assessment&quot;\n    by Sudhanshu Kairab\n    ISBN #0849317061, Auerbach Publications</p>"},{"id":"text-478","type":"text","heading":"","plain_text":"&quot;Aggressive Network Self-defense&quot;\n    by NEIL R. WYLER\n    ISBN #1931836205, Syngress Publishing","html":"<p>&quot;Aggressive Network Self-defense&quot;\n    by NEIL R. WYLER\n    ISBN #1931836205, Syngress Publishing</p>"},{"id":"text-479","type":"text","heading":"","plain_text":"Security Source Magazine\n Security Source Magazine&#39;s cover story is about keeping\nthe network secure, from the gateway to the desktop. Subscribe now and\ncontinue to learn about valuable security topics and strategies in each\nquarterly issue.","html":"<p>Security Source Magazine\n Security Source Magazine&#039;s cover story is about keeping\nthe network secure, from the gateway to the desktop. Subscribe now and\ncontinue to learn about valuable security topics and strategies in each\nquarterly issue.</p>"},{"id":"text-480","type":"text","heading":"","plain_text":"LibreSubscription","html":"<p>LibreSubscription</p>"},{"id":"text-481","type":"text","heading":"","plain_text":"Info Security Magazine\n Business and management of information security. C&#39;est un\ninternational magazine, with an European focus. It is published in both\nprint and digital editions, the latter containing the full content of\nthe print publication, accessible via the web. Its experienced\neditorial team delivers stories that deal with the big picture issues\nof information security. Our sources and columnists are the expert\nsecurity researchers and practitioners who define, drive, and lead the\nfield. And our journalists are in demand by the IT trade and broadsheet\npress.","html":"<p>Info Security Magazine\n Business and management of information security. C&#039;est un\ninternational magazine, with an European focus. It is published in both\nprint and digital editions, the latter containing the full content of\nthe print publication, accessible via the web. Its experienced\neditorial team delivers stories that deal with the big picture issues\nof information security. Our sources and columnists are the expert\nsecurity researchers and practitioners who define, drive, and lead the\nfield. And our journalists are in demand by the IT trade and broadsheet\npress.</p>"},{"id":"text-482","type":"text","heading":"","plain_text":"LibreSubscription","html":"<p>LibreSubscription</p>"},{"id":"text-483","type":"text","heading":"","plain_text":"Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]","html":"<p>Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]</p>"}],"sections":[{"id":"text-1","heading":"Text","content":"Étapes de sécurité de base / Vue d&#39;ensemble:"},{"id":"text-2","heading":"Text","content":"Effectuez les étapes suivantes pour sécuriser votre site Web:"},{"id":"text-3","heading":"Text","content":"Voir les erratas de distribution et les correctifs de sécurité (voir la page d&#39;accueil de Yolinux pour la liste). [e.g. Red Hat Linux Errata]          Mettez à jour votre système le cas échéant."},{"id":"text-4","heading":"Text","content":"Red Hat / CentOS:"},{"id":"text-5","heading":"Text","content":"yum check-update\n                    (Imprimer la liste des paquets à mettre à jour.)\n                \nmiam mise à jour"},{"id":"text-6","heading":"Text","content":"Notez que cela peut être automatisé en utilisant le /etc/init.d/yum-updatesd service (RHEL / CentOS 5) ou créer un travail cron /etc/cron.daily/yum.cron"},{"id":"text-7","heading":"Text","content":"#! / bin / sh\n/ usr / bin / yum -R 120 -e 0 -d 0 -y mise à jour yum\n/ usr / bin / yum -R 10 -e 0 -d 0 -y mise à jour"},{"id":"text-8","heading":"Text","content":"Ubuntu / Debian:"},{"id":"text-9","heading":"Text","content":"apt-get update\n                    (Mettez à jour la liste des packages vers la dernière version associée à cette version du système d&#39;exploitation.)\n                \napt-get upgrade"},{"id":"text-10","heading":"Text","content":"Réduisez le nombre de services réseau exposés. Ceux-ci seront lancés par\nscripts en /etc/rc.d/rc*.d/ des répertoires. (Voir la liste complète des services en: /etc/init.d/)\nIl n’est peut-être pas nécessaire d’exécuter sendmail (serveur de messagerie),\nportmap (écouteur RPC requis par NFS),\nlpd (démon du serveur d’imprimante en ligne. Les pirates cherchent constamment à obtenir ce service pour mon système.),\ninnd (serveur de news), linuxconf etc.\nPar exemple, sendmail peut être supprimé du processus de démarrage à l’aide de la commande suivante:\n          chkconfig --del sendmail ou en utilisant l&#39;outil de configuration Ntsysv.\nLe service peut être terminé à l&#39;aide de la commande /etc/rc.d/init.d/sendmail stop.\nÀ tout le moins, vous devez exécuter la commande chkconfig --list\npour voir quels processus sont configurés pour pouvoir être utilisés après le démarrage.\nVoir le tutoriel sur le processus d&#39;initialisation YoLinux"},{"id":"text-11","heading":"Text","content":"Vérifiez votre configuration. Répertoriez les ports ouverts et les processus qui les contiennent: netstat -punta (Essayez aussi netstat -nlp)\n        \nListe des services RPC: [root]# rpcinfo -p localhost\n    Idéalement, vous NE PAS être en cours d&#39;exécution portmapper donc pas de services RPC\n    serait disponible. Désactivez portmapper: service portmap stop (ou: /etc/init.d/portmap stop) et\n    supprimez-le de la séquence de démarrage du système: chkconfig --del portmap\n    (Portmap est requis par NFS.)\n        \nFTP anonyme (avec wu_ftpd &#8211; Dernière livraison avec RH 8.0. RH 9 et FC utilisent vsftpd):\n    Par défaut, Red Hat est configuré pour le FTP anonyme.\n    Cela permet aux utilisateurs de ftp sur votre serveur et de se connecter avec le login.\n    anonyme et utilisez une adresse email comme mot de passe. Si vous le souhaitez\n    pour désactiver cette fonctionnalité éditer le fichier / etc / ftpaccess et changer:\n    classe tout réel, invité, anonyme *\n    à\n    classe tout réel, invité *\n    Pour plus d&#39;informations sur la configuration FTP, voir: Didacticiel de configuration FTP du serveur Web YoLinux"},{"id":"text-12","heading":"Text","content":"Utilisez le trouver commande pour localiser les vulnérabilités &#8211; trouver les fichiers suid et guid (pouvant s&#39;exécuter avec les privilèges root), ainsi que les fichiers et les répertoires accessibles en écriture dans le monde entier. Par exemple:"},{"id":"text-13","heading":"Text","content":"find / -xdev  (-perm -4000 -o -perm -2000 ) -type f -print\n                Supprimez les privilèges suid sur les programmes exécutables avec la commande: chmod -s nom de fichier\n            \n    find / -xdev  (-nouser -o -nogroup ) -print\n                Rechercher des fichiers n&#39;appartenant pas à un utilisateur ou à un groupe valide."},{"id":"text-14","heading":"Text","content":"Utilisez la commande chattr\net lsattr\nrendre un fichier de sécurité sensible non modifiable en plus des autorisations habituelles."},{"id":"text-15","heading":"Text","content":"Rendre un fichier non modifiable: chattr + i / bin / ls\n              Rendre les répertoires non modifiables: chattr -R + i / bin / sbin / boot / lib\n              Faire un fichier ajouter seulement: chattr + a / var / log / messages"},{"id":"text-16","heading":"Text","content":"Utilisez &quot;tripwire&quot;\n[sourceforge: tripwire]\npour la surveillance de la sécurité de votre système à la recherche de traces de fichiers non autorisés\nchangements. Tripwire est proposé dans le cadre des distributions de base Red Hat et Ubuntu.\nLa configuration de Tripwire est décrite ci-dessous."},{"id":"text-17","heading":"Text","content":"Regardez vos fichiers de journaux en particulier / var / log / messages et\n   / var / log / secure.\n        \nÉvitez les noms de compte génériques tels que client.\n        \nUtilisez les configurations de wrapper réseau de PAM pour interdire les mots de passe pouvant être utilisés.\ntrouvé facilement par crack ou d&#39;autres programmes de piratage.\nL&#39;authentification PAM peut également interdire l&#39;accès à la connexion au réseau racine.\n(Configuration Red Hat par défaut.\nVous devez vous connecter en tant qu&#39;utilisateur régulier et su - pour obtenir un accès root.\nCe n&#39;est PAS la valeur par défaut pour ssh et doit être modifié comme indiqué ci-dessous.)\n          Voir le tutoriel YoLinux Network Admin sur l’utilisation de PAM\n        \nL&#39;accès à distance NE DOIT PAS être effectué avec un texte telnet en texte clair, mais avec une connexion chiffrée utilisant ssh. (Plus tard dans ce tutoriel)\n        \nParamètres du fichier Proc pour la défense contre les attaques. Cela inclut des mesures de protection contre\nUsurpation d&#39;adresse IP, attaques par saturation ou attaques par syncookies.\n        \nDDoS (attaques par déni de service distribué): le seul\nce que vous pouvez faire est d&#39;avoir une bande passante et un traitement gobs\nalimentation / pare-feu. Beaucoup de puissance de traitement ou un pare-feu sont inutiles\nsans bande passante\ncar le réseau peut être surchargé par une attaque distribuée.\nRegarde aussi:\n    \nMalheureusement, les paquets sont généralement usurpés et dans mon cas, le FBI\ns&#39;en fichait. Si le serveur est un serveur distant, utilisez un modem d&#39;accès à distance ou\nune deuxième adresse IP et une route d&#39;accès, car la route attaquée est\nbloqué par le déluge de\nattaques de réseau. Vous pouvez également demander à votre FAI de supprimer le trafic ICMP.\nà\nles adresses IP de vos serveurs. (et UDP si tout ce que vous utilisez est un\nserveur Web. Les serveurs de noms DNS utilisent UDP.)\nPour une lecture très intéressante, voir &quot;The Strange Tale&quot; de l&#39;attaque DDoS de GRC.com. (Très intéressante lecture sur l’anatomie des réseaux de hacker bot.)\n    \nL&#39;accès utilisateur peut être restreint avec les fichiers de configuration suivants:"},{"id":"text-18","heading":"Text","content":"/etc/security/limits.conf\n    \n/etc/security/group.conf\n    \n/etc/security/time.conf"},{"id":"text-19","heading":"Text","content":"Voir le tutoriel YoLinux SysAdmin &#8211; restreindre les utilisateurs\n        \nSupprimer les utilisateurs inutiles du système. Voir / etc / passwd.\nPar défaut\nLes installations Red Hat ont de nombreux comptes utilisateur créés pour prendre en charge\ndivers processus. Si vous n’avez pas l’intention d’exécuter ces processus, supprimez\nles utilisateurs. c&#39;est-à-dire retirer\nidentifiants utilisateur jeux, uucp, rpc, rpcd, ..."},{"id":"text-20","heading":"Text","content":"Démon de réseau IP:"},{"id":"text-21","heading":"Text","content":"Il est préférable, pour des raisons de sécurité, de réduire le nombre\ndes services réseau inetd exposés. Plus vous exposez de services, plus votre\nvulnérabilité. Réduire le nombre de services réseau accessibles via\nle démon xinet ou inet par:"},{"id":"text-22","heading":"Text","content":"inetd: (ancien chapeau rouge)\n    Commentez les services inutiles dans le /etc/initd.conf fichier.\n    Exemple: (FTP est le seul service que je lance)"},{"id":"text-23","heading":"Text","content":"flux ftp tcp maintenant racine / usr / sbin / tcpd in.ftpd -l -a\n    \n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/inetd restart"},{"id":"text-24","heading":"Text","content":"xinetd: (systèmes actuels)\n    Tous les services réseau sont désactivés par défaut lors d&#39;une mise à niveau. Exemple de fichier: /etc/xinetd.d/wu-ftpd:"},{"id":"text-25","heading":"Text","content":"service ftp"},{"id":"text-26","heading":"Text","content":"     disable = yes - La valeur par défaut est désactivée. Cette ligne contrôle le service xinetd (activé ou non)\n     socket_type = stream\n     attendre = non\n     utilisateur = root\n     serveur = /usr/sbin/in.ftpd\n     server_args = -l -a\n     log_on_success + = DURÉE USERID\n     log_on_failure + = USERID\n     bien = 10"},{"id":"text-27","heading":"Text","content":"Activer / désactiver un service xinetd:"},{"id":"text-28","heading":"Text","content":"Editez le fichier: /etc/xinetd.d/Nom du service\n    Changer de ligne &quot;désactiver = oui&quot;désactive un service xinetd.\n    Changer de ligne &quot;désactiver = non&quot;active un service xinetd.\n    La configuration de Xinetd doit être effectuée pour chaque fichier du répertoire.\n    /etc/xinetd.d/ afin de configurer chaque service réseau.\n    Redémarrez le démon pour appliquer les modifications: /etc/rc.d/init.d/xinetd restart"},{"id":"text-29","heading":"Text","content":"Vous pouvez également utiliser la commande:\n        chkconfig wu-ftpd sur\n        OU\n        chkconfig wu-ftpd off \nCela modifiera le fichier approprié (/etc/xinetd.d/wu-ftpd)\n    et redémarrez le processus xinetd."},{"id":"text-30","heading":"Text","content":"Pointe:"},{"id":"text-31","heading":"Text","content":"Répertoriez les paramètres init, y compris tous les services contrôlés xinetd: chkconfig --list\n    \nÉnumérer le statut des services (systèmes Red Hat / Fedora Core): service - état général"},{"id":"text-32","heading":"Text","content":"Configuration du noyau:"},{"id":"text-33","heading":"Text","content":"Utilisation Pare-feu Linux règles de protection contre les attaques. (iptables: noyau 2.4+ ou ipchains: noyau 2.2)\n    Les règles de refus d&#39;accès peuvent également être implémentées à la volée par portsentry.\n    (Lieu à la fin de /etc/rc.d/rc.local à exécuter au démarrage du système, ou un autre script approprié)"},{"id":"text-34","heading":"Text","content":"script iptables:"},{"id":"text-35","heading":"Text","content":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS"},{"id":"text-36","heading":"Text","content":"iptables -A INPUT -p udp -s 0/0 -d 0/0 --port 2049 -j DROP       - Bloc NFS"},{"id":"text-37","heading":"Text","content":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 6000: 6009 -j DROP  - Bloquer X-Windows"},{"id":"text-38","heading":"Text","content":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --port 7100 -j DROP       - Bloquer le serveur de polices X-Windows"},{"id":"text-39","heading":"Text","content":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante"},{"id":"text-40","heading":"Text","content":"iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 515 -j DROP        - Bloquer le port de l&#39;imprimante"},{"id":"text-41","heading":"Text","content":"iptables -A INPUT -p tcp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS"},{"id":"text-42","heading":"Text","content":"iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 111 -j DROP        - Bloquer Sun rpc / NFS"},{"id":"text-43","heading":"Text","content":"iptables -A INPUT -p tout -s localhost -i eth0 -j DROP            - Refuser les paquets extérieurs d’Internet qui\n                                                                          prétendre être de votre interface de bouclage."},{"id":"text-44","heading":"Text","content":"script ipchains:"},{"id":"text-45","heading":"Text","content":"# Autoriser l&#39;accès en boucle. Cette règle doit précéder les règles interdisant l&#39;accès au port !!\niptables -A INPUT -i lo -p all -j ACCEPT         - Cette règle est essentielle si vous voulez votre propre ordinateur"},{"id":"text-46","heading":"Text","content":"iptables -A OUTPUT -o lo -p all -j ACCEPT                pour pouvoir accéder à lui-même via l&#39;interface de bouclage"},{"id":"text-47","heading":"Text","content":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT       - Bloc NFS"},{"id":"text-48","heading":"Text","content":"ipchains -A entrée -p udp -s 0/0 -d 0/0 2049 -j REJECT          - Bloc NFS"},{"id":"text-49","heading":"Text","content":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 6000: 6009 -y -j REJECT  - Bloquer X-Windows"},{"id":"text-50","heading":"Text","content":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT       - Bloquer le serveur de polices X-Windows"},{"id":"text-51","heading":"Text","content":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 515 -y -j REJECT        - Bloquer le port de l&#39;imprimante"},{"id":"text-52","heading":"Text","content":"ipchains -A entrée -p udp -s 0/0 -d 0/0 515 -j REJECT           - Bloquer le port de l&#39;imprimante"},{"id":"text-53","heading":"Text","content":"ipchains -A entrée -p tcp -s 0/0 -d 0/0 111 -y -j REJECT        - Bloquer Sun rpc / NFS"},{"id":"text-54","heading":"Text","content":"ipchains -A entrée -p udp -s 0/0 -d 0/0 111 -j REJECT           - Bloquer Sun rpc / NFS"},{"id":"text-55","heading":"Text","content":"ipchains -A entrée -j REJECT -p tout -s localhost -i eth0 -l    - Refuser et consigner (&quot;-l&quot;) les paquets extérieurs à Internet\n                                                                       qui prétendent être de votre interface de bouclage."},{"id":"text-56","heading":"Text","content":"Remarque:"},{"id":"text-57","heading":"Text","content":"iptables utilise la règle de chaîne &quot;INPUT&quot; et ipchains utilise la minuscule\n    descripteur &quot;entrée&quot;.\n    \nVoir les règles avec iptables -L ou ipchains -L commander.\n    \nPage de manuel d&#39;iptables\n    \n    Lorsque vous utilisez un serveur Web Internet, il est préférable que votre ordinateur soit sécurisé.\n        vue, qu’on ne lance PAS l’impression, X-Window, NFS ou d’autres services pouvant\n        être exploité si une vulnérabilité est découverte ou si elle est mal configurée\n        indépendamment des règles de pare-feu."},{"id":"text-58","heading":"Text","content":"Regarde aussi:"},{"id":"text-59","heading":"Text","content":"Utilisation portsentry pour surveiller les attaques de pirates réseau et affecter dynamiquement des règles de pare-feu pour contrecarrer les attaquants. (Plus tard dans ce tutoriel)"},{"id":"text-60","heading":"Text","content":"Un monolithique et noyau minimal pourrait également fournir un petit peu de\nprotection (éviter les modules Trojan) et exécution sur du matériel moins courant\n(MIPS, Alpha, etc &#8230; afin que les instructions de débordement de tampon ne s&#39;exécutent pas.)"},{"id":"text-61","heading":"Text","content":"Améliorations de la sécurité du noyau:"},{"id":"text-62","heading":"Text","content":"Activer ExecShield: Ceci est activé par défaut sur Red Hat EL 5 / CentOS 5.\n            ExecShield est une fonctionnalité du noyau Linux qui protège le système contre les exploits de débordement de mémoire tampon.\n            Cette fonctionnalité est réalisée par un placement aléatoire de la mémoire de pile, une prévention de l&#39;exécution de la mémoire utilisée pour la gestion de la mémoire tampon de données et de texte.\n            ExecShield peut être activé dans le fichier de configuration Red Hat / CentOS /etc/sysctl.conf en ajoutant les deux lignes suivantes:"},{"id":"text-63","heading":"Text","content":"kernel.exec-shield = 1\nkernel.randomize_va_space = 1\n            \n            La configuration actuelle du système peut être vérifiée:"},{"id":"text-64","heading":"Text","content":"cat / proc / sys / kernel / exec-shield\n            \ncat / proc / sys / kernel / randomize_va_space"},{"id":"text-65","heading":"Text","content":"Les deux devraient être &quot;1&quot;. (Défaillance du système)"},{"id":"text-66","heading":"Text","content":"Remarque: processeurs Intel XD / AMD NX 32 bits uniquement x 32 (pas x86_64 pouvant traiter plus de 4 Go):\n            Activez la prise en charge d’AMD NX ou d’Intel XD à l’aide du noyau PAE (Physical Address Extension). L&#39;extension de mémoire PAE est nécessaire pour accéder au bit XD / NX.\n            Pour savoir si votre processeur prend en charge NX ou XD PAE, utilisez la commande suivante: cat / proc / cpuinfo | drapeaux grep pour afficher un champ avec &quot;pae&quot; et &quot;nx&quot;.\n            Installez un noyau Linux (2.6.8+) avec support PAE avec la commande miam installer le noyau-PAE. Le chargeur de démarrage devra également spécifier le noyau PAE pour le démarrage.\n            Le BIOS devra également être configuré pour le prendre en charge.\n            Ce noyau ne doit être installé que sur un système doté d’un processeur x86 32 bits offrant cette prise en charge. Les processeurs x86_64 64 bits pouvant interagir de manière native avec le bit XD / NX n&#39;ont pas besoin du noyau PAE."},{"id":"text-67","heading":"Text","content":"Règles de pare-feu pour bloquer les blocs IP incorrects:"},{"id":"text-68","heading":"Text","content":"Il est bien connu qu’il existe différents blocs d’adresses IP où résident des pirates informatiques et des robots anti-spam. Ces blocs de propriété intellectuelle appartenaient souvent à des sociétés et à des organisations légitimes, mais sont tombés dans un royaume non surveillé ou ont été détournés et vendus à des spammeurs criminels.\nCes blocs IP doivent être bloqués par des règles de pare-feu."},{"id":"text-69","heading":"Text","content":"Il existe divers services conviviaux qui recherchent et découvrent ces blocs IP de pare-feu et les refusent, et ils partagent cette information avec nous. Merci!"},{"id":"text-70","heading":"Text","content":"La liste déroulante Spamhaus: Il s&#39;agit d&#39;un script permettant de télécharger la liste déroulante totale et de générer un script de filtrage iptables pour bloquer ces adresses IP mêmes:"},{"id":"text-71","heading":"Text","content":"#! / bin / bash\n# Liste noire des zones de hackers et des domaines défectueux de spamhaus.org\nFILE = drop.lasso\n/ bin / rm -f $ FILE\nwget http://www.spamhaus.org/drop/drop.lasso\nblocks = $ (cat $ FILE | egrep -v &#39;^;&#39; | awk &#39;print $ 1&#39;)\necho &quot;#! / bin / bash&quot;&gt; Spamhaus-drop.lasso.sh\npour ipblock dans les blocs $\nfaire\n echo &quot;iptables -I INPUT -s $ ipblock -j DROP&quot; &gt;&gt; Spamhaus-drop.lasso.sh\nterminé\nchmod ugo + x Spamhaus-drop.lasso.sh\necho &quot;... fait&quot;"},{"id":"text-72","heading":"Text","content":"Pour bloquer les adresses IP, exécutez simplement le script sur chacun de vos serveurs: ./Spamhaus-drop.lasso.sh\nAu minimum, ces blocs d&#39;adresses IP devraient être refusés par tous les serveurs."},{"id":"text-73","heading":"Text","content":"Bloquer ou autoriser par pays: On peut refuser l&#39;accès de certains pays ou l&#39;inverse, n&#39;autoriser que certains pays à accéder à votre serveur."},{"id":"text-74","heading":"Text","content":"Voir ces sites pour générer des listes:"},{"id":"text-75","heading":"Text","content":"Bloquer le forum et les spammeurs de la liste de commentaires: Utilisez la liste générée à partir de pots de miel exploités par StopForumSpam.com"},{"id":"text-76","heading":"Text","content":"#! / bin / bash\n# Grande liste d&#39;adresses IP à bloquer\nNombre d&#39;adresses IP recueillies au cours des 30 derniers jours\n# Plus de 100 000 adresses IP"},{"id":"text-77","heading":"Text","content":"rm -f Listed_ip_30.zip\nwget http://www.stopforumspam.com/downloads/listed_ip_30.zip"},{"id":"text-78","heading":"Text","content":"rm -f Listed_ip_30.txt\nDécompressez listing_ip_30.zip"},{"id":"text-79","heading":"Text","content":"echo &quot;#! / bin / bash&quot;&gt; Stopforumspam-listed_ip_30.sh\ncat ./listed_ip_30.txt | awk &#39;print &quot;/ sbin / iptables -I INPUT -s&quot; $ 1 &quot;-j DROP&quot;&#39; &gt;&gt; Stopforumspam-listed_ip_30.sh"},{"id":"text-80","heading":"Text","content":"chmod ugo + x Stopforumspam-listed_ip_30.sh"},{"id":"text-81","heading":"Text","content":"Pour bloquer les adresses IP, exécutez simplement le script: ./Stopforumspam-listed_ip_30.sh"},{"id":"text-82","heading":"Text","content":"Sachez qu&#39;il s&#39;agit d&#39;une liste extrêmement longue et que son exécution peut prendre des heures.\nC&#39;est aussi une liste qui change rapidement et qui est constamment mise à jour."},{"id":"text-83","heading":"Text","content":"[Potential Pitfall]: Vous pouvez obtenir l&#39;erreur suivante:"},{"id":"text-84","heading":"Text","content":"iptables: erreur inconnue 18446744073709551615"},{"id":"text-85","heading":"Text","content":"J&#39;ai constaté qu&#39;en ralentissant l&#39;exécution du script, je pouvais éviter cette erreur.\nJ&#39;ai ajouté un écho bash pour écrire chaque ligne à l&#39;écran et elle s&#39;est bien mieux comportée bien que beaucoup plus lente."},{"id":"text-86","heading":"Text","content":"#! / bin / bash\nset -x verbose\n/ sbin / iptables -I INPUT -s XX.XX.XX.XX -j DROP\n..."},{"id":"text-87","heading":"Text","content":"Identifiez l&#39;ennemi:\nUtilisez ce qui suit pour identifier et géolocaliser une adresse IP (InfoSniper.net):"},{"id":"text-88","heading":"Text","content":"Serveur Web Apache:"},{"id":"text-89","heading":"Text","content":"Modules Apache: Désactivez les modules que vous n&#39;allez pas utiliser. Si votre site Web ne dessert pas https, désactivez-le.\n    Avec les exploits antérieurs de SSL, ceux qui ont utilisé cette philosophie n’ont pas été brûlés.\n    \nApache version exposition: (Version 1.3+) N&#39;autorisez pas les pirates informatiques à déterminer la version du logiciel de serveur Web que vous exécutez en induisant une erreur et donc une réponse automatique du serveur. Les attaques sont souvent spécifiques à la version. Les spammeurs déclenchent également des erreurs pour trouver des adresses électroniques."},{"id":"text-90","heading":"Text","content":"..."},{"id":"text-91","heading":"Text","content":"Webmaster ServerAdmin chez megacorp dot com\nServerSignature Off"},{"id":"text-92","heading":"Text","content":"..."},{"id":"text-93","heading":"Text","content":"De toute façon, la réponse risque d’être dénuée de sens si vous utilisez le serveur Web en tant que proxy pour un autre."},{"id":"text-94","heading":"Text","content":"Bloquez les pirates et les pays qui n&#39;utiliseront jamais votre site Web.\n        Utilisez la directive Apache Refuser de bloquer l&#39;accès."},{"id":"text-95","heading":"Text","content":"...\n    ...\n    ...\n    Ordre permettre, refuser\n    # Bots en forme de bloc\n    Refuser à partir de 88.191.0.0/16 193.200.193.0/24 194.8.74.0/23\n    permettre à tous"},{"id":"text-96","heading":"Text","content":"Pour une liste exhaustive des adresses IP à bloquer, voir la\n        Liste de blocage de Wizcrafts.net"},{"id":"text-97","heading":"Text","content":"SSH: (shell sécurisé)"},{"id":"text-98","heading":"Text","content":"Protocole SSH suite d&#39;outils de connectivité réseau sont utilisés pour chiffrer\nconnexions sur Internet. SSH chiffre tout le trafic, y compris\nidentifiants et mots de passe pour éliminer efficacement le sniffing sur le réseau,\ndétournement de connexion et autres attaques au niveau du réseau.\nDans une session telnet classique, le mot de passe est transmis via Internet.\nnon chiffré.\n      \nSSH sur Linux fait référence à OpenSSH Secure Shell Terminal et aux connexions de transfert de fichiers sftp / scp. SSH est également un produit commercial mais disponible librement pour un usage non commercial\nde SSH Communications Security à\n      http://www.ssh.com/.\nDeux versions sont disponibles, SSH1 (maintenant très ancien) et SSH2 (actuel).\nLa version commerciale de SSH peut être achetée et / ou téléchargée à partir de leur\nsite Internet.\nNotez que SSH1 présente un problème de vulnérabilité majeur.\nLe groupe de craquage et de défiguration du site Web &quot;woot-project&quot; utilise cette vulnérabilité.\n      NE PAS UTILISER LE PROTOCOLE SSH1 !!!!!\n(&quot;woot-project&quot; exploit / attaque description / récupération)\n      \nOpenSSH a été développé par le\n      OpenBSD Project et est disponible gratuitement.\nOpenSSH est compatible avec SSH1 et SSH2.\nOpenSSH s&#39;appuie sur le projet OpenSSL pour la couche de communication cryptée.\nLes versions actuelles de Linux sont fournies avec OpenSSH / OpenSSL."},{"id":"text-99","heading":"Text","content":"Liens:"},{"id":"text-100","heading":"Text","content":"OpenSSH:"},{"id":"text-101","heading":"Text","content":"Télécharger:\n          \n    Remarque: SSH et SSL sont inclus dans Red Hat Linux 7.0+."},{"id":"text-102","heading":"Text","content":"Installation:"},{"id":"text-103","heading":"Text","content":"Commun au client et au serveur:\n              \nClient:"},{"id":"text-104","heading":"Text","content":"Red Hat / Fedora / CentOS:"},{"id":"text-105","heading":"Text","content":"rpm -ivh openssh-askpass-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-clients-2.xxx-x.x.x86.rpm\nrpm -ivh openssh-askpass-gnome-2.xxx-x.x.x86.rpm    - Utilisateurs de bureau Gnome"},{"id":"text-106","heading":"Text","content":"Ubuntu / Debian:"},{"id":"text-107","heading":"Text","content":"apt-get installer openssh-client ssh-askpass-gnome"},{"id":"text-108","heading":"Text","content":"Serveur:"},{"id":"text-109","heading":"Text","content":"Si vous mettez à niveau à partir de SSH1, vous devrez peut-être utiliser l&#39;option RPM --Obliger."},{"id":"text-110","heading":"Text","content":"Le rpm installera les fichiers binaires, les fichiers de configuration et les\n    openssh-server va installer le script d&#39;initialisation /etc/rc.d/init.d/sshd\n    pour que sshd commencera au démarrage du système."},{"id":"text-111","heading":"Text","content":"Configuration:"},{"id":"text-112","heading":"Text","content":"Fichier de configuration du client / etc / ssh / ssh_config: (Défaut)"},{"id":"text-113","heading":"Text","content":"# $ OpenBSD: ssh_config, v 1.9 2001/03/10 12:53:51 deraadt Exp $"},{"id":"text-114","heading":"Text","content":"# Ceci est un fichier de configuration système client ssh. Voir ssh (1) pour plus\n# information. Ce fichier fournit des valeurs par défaut aux utilisateurs et les valeurs peuvent\n# être modifié dans les fichiers de configuration par utilisateur ou sur la ligne de commande."},{"id":"text-115","heading":"Text","content":"# Les données de configuration sont analysées comme suit:\n# 1. options de ligne de commande\n# 2. Fichier spécifique à l&#39;utilisateur\n# 3. fichier du système\n# Toute valeur de configuration n&#39;est modifiée que la première fois qu&#39;elle est définie.\n# Ainsi, les définitions spécifiques à l’hôte doivent figurer au début de la\n# fichier de configuration, et les valeurs par défaut à la fin."},{"id":"text-116","heading":"Text","content":"# Valeurs par défaut pour l&#39;ensemble du site pour diverses options"},{"id":"text-117","heading":"Text","content":"# Hôte *\n# ForwardAgent no\n# ForwardX11 non\n# RhostsAuthentication no\n# RhostsRSAAuthentication oui\n# RSAAuthentication oui\n# Password Authentification oui\n# FallBackToRsh no\n# UseRsh no\n# BatchMode no\n# CheckHostIP yes\n# StrictHostKeyChecking oui\n# IdentityFile ~ / .ssh / identity\n# IdentityFile ~ / .ssh / id_rsa\n# IdentityFile ~ / .ssh / id_dsa\n# Port 22\n# Protocole 2.1 - Remplacez cette ligne par: Protocole 2\n# Cipher 3des\n# Chiffres aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour, aes192-cbc, aes256-cbc\n# EscapeChar ~\nHôte *\n        ForwardX11 oui"},{"id":"text-118","heading":"Text","content":"Changer la ligne: # Protocole 2,1\n    à:     Protocole 2\n    Cela éliminera l&#39;utilisation du protocole SSH1."},{"id":"text-119","heading":"Text","content":"Décommentez les options requises ou acceptez les valeurs par défaut codées en dur.\n    Les valeurs par défaut codées en dur pour le client OpenSSH sont compatibles avec SSH1\n    fichiers client et serveur sshd. Une mise à niveau vers le client OpenSSH\n    ne nécessite aucune modification des fichiers $ HOME / .ssh /."},{"id":"text-120","heading":"Text","content":"Fichier de configuration du serveur / etc / ssh / sshd_config:\n        Défaut:"},{"id":"text-121","heading":"Text","content":"# $ OpenBSD: sshd_config, v 1.38 2001/04/15 21:41:29 deraadt Exp $"},{"id":"text-122","heading":"Text","content":"# Ce sshd a été compilé avec PATH = / usr / bin: / bin: / usr / sbin: / sbin"},{"id":"text-123","heading":"Text","content":"# Ceci est le fichier de configuration système du serveur sshd. Voir sshd (8)\n# pour plus d&#39;informations."},{"id":"text-124","heading":"Text","content":"Port 22\n#Protocole 2,1                             - Changer en: Protocole 2\n#ListenAddress 0.0.0.0\n#ListenAddress ::\nClé de l&#39;hôte / etc / ssh / ssh_host_key\nClé de l&#39;hôte / etc / ssh / ssh_host_rsa_key\nHostKey / etc / ssh / ssh_host_dsa_key\nServerKeyBits 768\nLoginGraceTime 600                        - Changer en: LoginGraceTime 120\nKeyRegenerationInterval 3600\nPermitRootLogin oui                       - Changer en: PermitRootLogin no\n#\n# Ne pas lire les fichiers ~ / .rhosts et ~ / .shosts\nIgnoreRhosts oui\n# Supprimer le commentaire si vous ne faites pas confiance à ~ / .ssh / known_hosts pour RhostsRSAAuthentication\n#IgnoreUserKnownHosts oui\nStrictModes oui\nX11Forwarding oui\nX11DisplayOffset 10\nPrintMotd oui\n#PrintLastLog no\nKeepAlive oui"},{"id":"text-125","heading":"Text","content":"# Enregistrement\nSyslogFacility AUTHPRIV\nLogLevel INFO\n#obsoletes QuietMode et FascistLogging"},{"id":"text-126","heading":"Text","content":"RhostsAuthentication non\n#\n# Pour que cela fonctionne, vous aurez également besoin de clés d&#39;hôte dans / etc / ssh / ssh_known_hosts\nRhostsRSAAuthentication non\n# similaire pour la version 2 du protocole\nAuthentification par l&#39;hôte non\n#\nAuthentification RSAA oui"},{"id":"text-127","heading":"Text","content":"# Pour désactiver les mots de passe en texte clair tunnelés, choisissez non ici!\nAuthentification par mot de passe oui\nPermitEmptyPasswords no"},{"id":"text-128","heading":"Text","content":"# Un-comment pour désactiver les mots de passe s / key\n#ChallengeResponseAuthentication no"},{"id":"text-129","heading":"Text","content":"# Supprimer le commentaire pour activer l&#39;authentification interactive au clavier PAM\n# Avertissement: l&#39;activation de cette option peut contourner le paramètre &#39;PasswordAuthentication&#39;\n#PAMAuthenticationViaKbdInt yes"},{"id":"text-130","heading":"Text","content":"# Pour changer les options de Kerberos\n#KerberosAuthentication no\n#KerberosOrLocalPasswd oui\n#AFSTokenPassing no\n#KerberosTicketCleanup no"},{"id":"text-131","heading":"Text","content":"# Kerberos TGT Passing ne fonctionne qu&#39;avec le kaserver AFS\n#KerberosTgtPassing oui"},{"id":"text-132","heading":"Text","content":"#CheckMail oui\n#UseLogin no"},{"id":"text-133","heading":"Text","content":"#MaxStartups 10:30:60\n#Banner /etc/issue.net\n#ReverseMappingCheck Oui"},{"id":"text-134","heading":"Text","content":"Sous-système sftp / usr / libexec / openssh / sftp-server"},{"id":"text-135","heading":"Text","content":"Générer des clés système: / etc / ssh /"},{"id":"text-136","heading":"Text","content":"ssh-keygen -q -t rsa -f / etc / ssh / ssh_host_rsa_key -C &#39;&#39; -N &#39;&#39;\nssh-keygen -q -t dsa -f / etc / ssh / ssh_host_dsa_key -C &#39;&#39; -N &#39;&#39;\nClés privées générées: chmod 600 / etc / ssh / ssh_host_dsa_key / etc / ssh / ssh_host_rsa_key\nClés publiques générées: chmod 644 /etc/ssh/ssh_host_dsa_key.pub /etc/ssh/ssh_host_rsa_key.pub\nPour SELinux:"},{"id":"text-137","heading":"Text","content":"/ sbin / restorecon /etc/ssh/ssh_host_rsa_key.pub\n / sbin / restorecon /etc/ssh/ssh_host_dsa_key.pub"},{"id":"text-138","heading":"Text","content":"Générer des clés utilisateur:"},{"id":"text-139","heading":"Text","content":"Client:\n           Utilisez la commande: / usr / bin / ssh-keygen -t rsa"},{"id":"text-140","heading":"Text","content":"Génération d&#39;une paire de clés rsa publique / privée.\nEntrez le fichier dans lequel enregistrer la clé (/ home /identifiant d&#39;utilisateur/.ssh/id_rsa):\nEntrez mot de passe (vide pour aucun mot de passe):\nEntrez à nouveau le même mot de passe:\nVotre identification a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.\nVotre clé publique a été enregistrée dans / home /identifiant d&#39;utilisateur/.ssh/id_rsa.pub.\nL&#39;empreinte digitale clé est:\nXX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX: XX user-id@nom de noeud\n        \n        Fichiers générés:"},{"id":"text-141","heading":"Text","content":"$ HOME / .ssh / id_rsa            - binaire \n$ HOME / .ssh / id_rsa.pub        - ssh-rsa ... 223564257432 adresse électronique\n                             - Plusieurs clés / lignes autorisées.\n        \n        Options de commande:"},{"id":"text-142","heading":"Text","content":"-t rsa (pour la version 2 du protocole)\n        \n-t dsa (pour la version 2 du protocole)\n        \n-t rsa1 (pour la version 1 du protocole)\n        \n-b 2048 (spécifie la longueur de la clé en bits)"},{"id":"text-143","heading":"Text","content":"Serveur:"},{"id":"text-144","heading":"Text","content":"FTP le fichier $ HOME/.ssh/id_rsa.pub au serveur\n           \ncd $ HOME / .ssh /\n           \ncat id_rsa.pub &gt;&gt; registered_keys2"},{"id":"text-145","heading":"Text","content":"Utilisation de ssh: sur le client, utilisez la commande suivante\n    et connectez-vous comme vous le feriez normalement avec une session telnet:\n          ssh nom-du serveur \n          La première fois que vous utilisez ssh, le message suivant sera envoyé:"},{"id":"text-146","heading":"Text","content":"L&#39;authenticité de l&#39;hôte &#39;node.your-domain.com (XXX.XXX.XXX.XXX) &#39;ne peut être établi.\nL&#39;empreinte de la clé RSA est XX: bl: ab: la: bl: aX: XX: af: 90: 8f: dc: 65: 0d: XX: XX: XX: XX: XX.\nÊtes-vous sûr de vouloir continuer à vous connecter (oui / non)? Oui\nAttention: ajouté en permanence &#39;node.your-domain.com,XXX.XXX.XXX.XXX&#39;(RSA) à la liste des hôtes connus.\nutilisateur@node.your-domainMot de passe .com:\n    \n    Répondez oui. Il ne demandera plus."},{"id":"text-147","heading":"Text","content":"Pour utiliser un nom d&#39;utilisateur différent pour la connexion, indiquez-le sur la ligne de commande:\n    ssh -l nom d&#39;utilisateur nom du serveur"},{"id":"text-148","heading":"Text","content":"Note: Vous pouvez maintenant aussi utiliser la commande sftp pour des transferts de fichiers ftp sécurisés avec ssh."},{"id":"text-149","heading":"Text","content":"OpenSSH Man Pages:"},{"id":"text-150","heading":"Text","content":"ssh &#8211; Client OpenSSH SSH (programme de connexion à distance)\n        \nsshd &#8211; démon OpenSSH ssh\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh_config &#8211; Fichier de configuration du client OpenSSH SSH\n        \nsshd_config &#8211; Fichier de configuration du démon OpenSSH SSH\n        \nssh-add &#8211; ajoute les identités RSA ou DSA pour l&#39;agent d&#39;authentification. Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nssh-agent &#8211; agent d&#39;authentification\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \nsftp &#8211; Programme de transfert de fichiers sécurisé\n        \nsftp-server &#8211; sous-système de serveur SFTP"},{"id":"text-151","heading":"Text","content":"Autres liens OpenSSH:\n      \nSSH pour les liens MS / Windows:\n      \nNotes SSH:"},{"id":"text-152","heading":"Text","content":"Le sshd ne doit pas être démarré avec xinetd / inetd en raison du temps nécessaire pour effectuer\n    calculs quand il est initialisé.\n        \nLe client ssh va rechercher la racine. sshd sur le serveur est exécuté en tant que root.\n    Les privilèges root sont nécessaires pour communiquer sur les ports inférieurs à 1024.\n    L&#39;option -p peut être utilisée pour exécuter SSH sur un autre port.\n        \n    RSA est utilisé pour l&#39;échange de clés et un chiffrement conventionnel (Blowfish par défaut)\n    est utilisé pour chiffrer la session.\n        \nLe cryptage est démarré avant l’authentification, et aucun mot de passe ou autre\n    l&#39;information est transmise en clair.\n        \nAuthentification:"},{"id":"text-153","heading":"Text","content":"La connexion est appelée par l&#39;utilisateur.\n              Le client indique au serveur la clé publique que l&#39;utilisateur souhaite utiliser.\n              utiliser pour l&#39;authentification.\n          \nLe serveur vérifie ensuite si cette clé publique est admissible.\n               Si oui, un nombre aléatoire est généré et crypté avec le public\n               clé et envoie la valeur au client.\n           \nLe client déchiffre ensuite le numéro avec sa clé privée et calcule une\n               somme de contrôle. La somme de contrôle est renvoyée au serveur\n           \nLe serveur calcule une somme de contrôle à partir des données et compare les sommes de contrôle.\n           \n    L&#39;authentification est acceptée si les sommes de contrôle correspondent."},{"id":"text-154","heading":"Text","content":"SSH utilisera $ HOME / .rhosts (ou $ HOME / .shosts)\n        \nPour établir une connexion réseau sécurisée sur un autre port TCP, utilisez\n            Options &quot;tunneling&quot; avec la commande ssh:"},{"id":"text-155","heading":"Text","content":"Transférer le port local TCP vers hostport sur l&#39;hôte distant:\n              ssh hôte distant -L Port: localhost:commande hostport"},{"id":"text-156","heading":"Text","content":"Spécifier des ports inférieurs à 1024 nécessitera un accès root.\n          FTP ouvre plusieurs ports et n’est donc pas un bon candidat. Le port 21 est seulement\n          utilisé pour établir la connexion."},{"id":"text-157","heading":"Text","content":"Pages de manuel:"},{"id":"text-158","heading":"Text","content":"ssh &#8211; client shell sécurisé (programme de connexion à distance)\n        \nsshd &#8211; démon shell sécurisé (serveur)\n        \nssh-keygen &#8211; Utilisé pour créer des clés RSA (clés d&#39;hôte et clés d&#39;authentification d&#39;utilisateur)\n        \nssh-keyscan &#8211; récupère les clés publiques ssh\n        \nssh-add &#8211; ajoute des identités pour l&#39;agent d&#39;authentification Utilisé pour enregistrer de nouvelles clés avec l&#39;agent.\n        \nscp &#8211; copie sécurisée (programme de copie de fichier à distance)\n        \nslogin\n        \nsftp &#8211; client du programme de transfert de fichiers sécurisé.\n        \nsftp-server &#8211; serveur de programme de transfert de fichiers sécurisé.\n        \nssh-agent &#8211; Agent d&#39;authentification.\n    Ceci peut être utilisé pour conserver des clés RSA pour l&#39;authentification.\n        \ntelnet &#8211; interface utilisateur avec le protocole TELNET"},{"id":"text-159","heading":"Text","content":"Documentation:"},{"id":"text-160","heading":"Text","content":"/ usr / share / doc / openssh-XXX /\n        \n/ usr / share / doc / openssh-askpass-XXX /\n        \n/usr/share/doc/openssl-0.XXX/"},{"id":"text-161","heading":"Text","content":"Tester:\n      \nLe renifleur de réseau Ethereal (maintenant Wireshark) était utilisé pour renifler les transmissions réseau\nentre le client et le serveur pour telnet et ssh\navec les résultats suivants:"},{"id":"text-162","heading":"Text","content":"Testez la connexion telnet en texte clair: (port 23)\n             Le texte envoyé par le client est un texte vert sur fond noir.\n             Le reste du texte a été transmis par le serveur.\n             Notez que l&#39;identifiant (&quot;JoeUser&quot;) et le mot de passe (&quot;super-secret-password&quot;) ont été capturés."},{"id":"text-163","heading":"Text","content":"Testez la connexion cryptée ssh: (port 22)\n            Notez que tout l’échange de login et de mot de passe était crypté."},{"id":"text-164","heading":"Text","content":"Fail2ban: bloquer les connexions échouées répétées"},{"id":"text-165","heading":"Text","content":"Tout site sur Internet public sera soumis à des attaques par mots de passe dictionnaires, essayant constamment de nouveaux mots, séquences de mots et séquences ASCII à partir de programmes d&#39;attaque automatisés provenant de serveurs compromis.\nUtilisez fail2ban pour bloquer ces tentatives.\nFail2ban examinera les fichiers journaux pour rechercher les tentatives de connexion infructueuses répétées et bloquera de manière temporaire ou permanente les adresses IP du système attaquant.\nLa configuration par défaut de fail2ban examine le fichier journal sshd. / var / log / secure pour trouver le système attaquant et autorisera 5 tentatives de connexion infructueuses avant le blocage pendant 600 secondes (10 minutes)."},{"id":"text-166","heading":"Text","content":"Fail2ban peut être configuré pour surveiller les processus suivants:"},{"id":"text-167","heading":"Text","content":"sshd"},{"id":"text-168","heading":"Text","content":"smtp"},{"id":"text-169","heading":"Text","content":"Apache httpd"},{"id":"text-170","heading":"Text","content":"lumière"},{"id":"text-171","heading":"Text","content":"vsftpd"},{"id":"text-172","heading":"Text","content":"postfix"},{"id":"text-173","heading":"Text","content":"bind9 nommé"},{"id":"text-174","heading":"Text","content":"mysqld"},{"id":"text-175","heading":"Text","content":"astérisque"},{"id":"text-176","heading":"Text","content":"&#8230;"},{"id":"text-177","heading":"Text","content":"Installation:"},{"id":"text-178","heading":"Text","content":"Chapeau rouge: yum installer fail2ban"},{"id":"text-179","heading":"Text","content":"Ubuntu: sudo apt-get install fail2ban"},{"id":"text-180","heading":"Text","content":"Configuration:"},{"id":"text-181","heading":"Text","content":"/etc/fail2ban/fail2ban.conf"},{"id":"text-182","heading":"Text","content":"[Definition]"},{"id":"text-183","heading":"Text","content":"# 1 = ERREUR\n# 2 = WARN\n# 3 = INFO\n# 4 = DEBUG\nloglevel = 3"},{"id":"text-184","heading":"Text","content":"# Values: fichier STDOUT STDERR SYSLOG Par défaut: /var/log/fail2ban.log\n# Une seule cible de journal peut être spécifiée.\nlogtarget = SYSLOG"},{"id":"text-185","heading":"Text","content":"socket = /var/run/fail2ban/fail2ban.sock\npidfile = /var/run/fail2ban/fail2ban.pid"},{"id":"text-186","heading":"Text","content":"/etc/fail2ban/jail.conf (souvent copié dans jail.local et édité pour les directives locales)"},{"id":"text-187","heading":"Text","content":"[DEFAULT]"},{"id":"text-188","heading":"Text","content":"ignoreip = 127.0.0.1/8\nbantime = 3600\nfindtime = 600\nmaxretry = 3\nbackend = auto\nusedns = non"},{"id":"text-189","heading":"Text","content":"[ssh-iptables]\nenabled = true\nfiltre = sshd\naction = iptables[name=SSH, port=ssh, protocol=tcp]\n           sendmail-whois[name=SSH, dest=root, sender=user@megacorp.com]\nlogpath = / var / log / secure\nmaxretry = 3"},{"id":"text-190","heading":"Text","content":"Remarque: si votre serveur est attaqué, fail2ban peut livrer beaucoup de courrier électronique. Vous voudrez peut-être enlever le sendmail-whois déclaration.\n    [DEFAULT]    directives:"},{"id":"text-191","heading":"Text","content":"Directif\nLa description"},{"id":"text-192","heading":"Text","content":"ignorer\nLes adresses IP à ne jamais interdire, comme votre système de passerelle. Plusieurs IP sont séparées par un espace. Ceci est votre liste blanche. Valeur par défaut 127.0.0.1 (localhost)"},{"id":"text-193","heading":"Text","content":"trouver le temps\npériode au cours de laquelle l&#39;échec se produit. Par exemple, 600 fait référence au nombre maximal d&#39;échecs survenant pendant cette période de recherche sera banni. 600 secondes par défaut"},{"id":"text-194","heading":"Text","content":"maxretry\nspécifier le nombre d&#39;échecs avant qu&#39;une adresse IP ne soit bannie. Par défaut 3"},{"id":"text-195","heading":"Text","content":"bantime\nnombre de secondes qu&#39;une adresse IP est bannie"},{"id":"text-196","heading":"Text","content":"activée\ntrue = surveiller le processus spécifié. false pour aucune surveillance. La valeur par défaut n&#39;est vraie que pour sshd"},{"id":"text-197","heading":"Text","content":"Redémarrez après avoir modifié la configuration: service sudo fail2ban redémarrer"},{"id":"text-198","heading":"Text","content":"Configurez init pour démarrer fail2ban au démarrage: sudo chkconfig --level 345 fail2ban on"},{"id":"text-199","heading":"Text","content":"Voir aussi le fichier journal: / var / log / messages"},{"id":"text-200","heading":"Text","content":"Vérifiez le blocage des pirates informatiques:\nAffichez les règles de pare-feu générées par les connexions ayant échoué:"},{"id":"text-201","heading":"Text","content":"[host]# iptables -L\nChaîne INPUT (politique ACCEPT)\ncible cible source opt opt\nfail2ban-SSH tcp - n&#39;importe où n&#39;importe où tcp dpt: ssh"},{"id":"text-202","heading":"Text","content":"Chaîne À SUIVRE (politique ACCEPTER)\ncible cible source opt opt"},{"id":"text-203","heading":"Text","content":"Chaîne OUTPUT (politique ACCEPT)\ncible cible source opt opt"},{"id":"text-204","heading":"Text","content":"Chain fail2ban-SSH (1 références)\ncible cible source opt opt\nREJETTEZ tous - 122.189.194.238 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJET tout - 183.94.11.208 n&#39;importe où rejetez-avec icmp-port-inaccessible\nREJETER tout - 58.218.204.132 n&#39;importe où rejetez-avec icmp-port-inaccessible\nRETOURNEZ tout - n&#39;importe où"},{"id":"text-205","heading":"Text","content":"Vérifier le statut fail2ban:\nAfficher le statut de sshd fail2ban:"},{"id":"text-206","heading":"Text","content":"[host]# fail2ban-client status\nStatut\n| - Nombre de prison: 1\n`- Liste de prison: ssh-iptables"},{"id":"text-207","heading":"Text","content":"[host]# fail2ban-client status ssh-iptables\nStatut de la prison: ssh-iptables\n| - filtre\n| | - Liste de fichiers: / var / log / secure\n| | - Échec actuel: 0\n| `- Total échoué: 102\n`- action\n   | - Actuellement banni: 3\n   | `- Liste IP: 122.189.194.238 183.94.11.208 58.218.204.132\n   `- Total interdit: 26"},{"id":"text-208","heading":"Text","content":"Liens:\nrssh: shell restreint à utiliser avec OpenSSH sftp"},{"id":"text-209","heading":"Text","content":"FTP utilise un accès en texte clair à votre serveur. Cela convient si tous les systèmes du centre de données sont sécurisés et que personne ne peut renifler le réseau.\nLes configurations de routeur et de commutateur rendent pratiquement impossible le reniflage de la plupart des réseaux de nos jours, mais des problèmes de sécurité au niveau du centre de données sur un autre serveur peuvent entraîner des problèmes pour vos serveurs si vous autorisez les mots de passe non chiffrés utilisés par FTP."},{"id":"text-210","heading":"Text","content":"VsFTPd permet également de limiter la vue du système de fichiers à ses propres répertoires.\nC&#39;est bon. OpenSSH &quot;sftp&quot; ne fournit pas cette fonctionnalité (jusqu&#39;à la version 4.9. RHEL / CentOS 5 utilisait OpenSSH 4.3).\nLe transfert de fichier &quot;sftp&quot; crypte les mots de passe (bien) mais nécessite également un accès shell (bash, csh, &#8230;) pour le compte permettant un accès complet au système de fichiers (mauvais).\nle rssh shell peut être utilisé avec sftp, scp, cvs, rsync, et rédiger et peuvent chrooter les utilisateurs vers leurs propres répertoires et limiter la fonction à un accès sftp uniquement (refuser l&#39;accès au shell complet)."},{"id":"text-211","heading":"Text","content":"Pour les systèmes plus récents (RHEL6 / CentOS6 / Fedora 11) avec OpenSSH 4.9+, voir la configuration sftp chrootée préférée pour OpenSSH 4.9+."},{"id":"text-212","heading":"Text","content":"La solution est d&#39;utiliser rssh en tant que shell avec OpenSSH &quot;sftp&quot;:\nInstallation: rpm -ivh rssh-2.3.2-1.2.el5.rf.x86_64.rpm\nCela installe:"},{"id":"text-213","heading":"Text","content":"/ usr / bin / rssh"},{"id":"text-214","heading":"Text","content":"/etc/rssh.conf"},{"id":"text-215","heading":"Text","content":"aussi programme de soutien / usr / libexec / rssh_chroot_helper et pages de manuel"},{"id":"text-216","heading":"Text","content":"Vérifiez la configuration installée: rssh -v\nConfiguration:"},{"id":"text-217","heading":"Text","content":"Configuration OpenSSH: / etc / ssh / sshd_config"},{"id":"text-218","heading":"Text","content":"..."},{"id":"text-219","heading":"Text","content":"PermitUserEnvironment no"},{"id":"text-220","heading":"Text","content":"..."},{"id":"text-221","heading":"Text","content":"Sous-système sftp / usr / libexec / openssh / sftp-server"},{"id":"text-222","heading":"Text","content":"...\n    \nNote de sécurité: Soyez également conscient du réglage AllowTcpForwarding qui contrôle la redirection de port."},{"id":"text-223","heading":"Text","content":"Ajouter shell à la liste des shell utilisables: / etc / shells"},{"id":"text-224","heading":"Text","content":"/ bin / sh\n/ bin / bash\n/ sbin / nologin\n/ bin / tcsh\n/ bin / csh\n/ bin / ksh\n/ bin / zsh\n/ opt / bin / ftponly\n/ usr / bin / rssh\n    \nUbuntu: Vous pouvez utiliser la commande: add-shell / usr / bin / rssh"},{"id":"text-225","heading":"Text","content":"Changer le shell de l&#39;utilisateur en rssh (choisissez une méthode)"},{"id":"text-226","heading":"Text","content":"Autoriser l&#39;exécution à: chmod u / s / usr / libexec / rssh_chroot_helper\n    Cela empêche l’erreur suivante dans / var / log / messages"},{"id":"text-227","heading":"Text","content":"20 déc. 00:23:44 nodex rssh_chroot_helper[27450]: chroot () a échoué, 2: opération non autorisée"},{"id":"text-228","heading":"Text","content":"Définir l&#39;accès pour rssh: /etc/rssh.conf"},{"id":"text-229","heading":"Text","content":"logfacility = LOG_USER\npermetftp\numask = 022\n#chrootpath = / users / chroot"},{"id":"text-230","heading":"Text","content":"utilisateur = &quot;utilisateur1: 022: 00010: / home /utilisateur1&quot;\n    \n    Global security allowable options include: allowscp, allowcvs, allowrdist, allowrsync\n    Specify global chroot or omit for none.\n    Specific user security:"},{"id":"text-231","heading":"Text","content":"User login id\n    \nFirst set of three number represent the umask\n    \nSecond set of five number represent the bitmask to allow"},{"id":"text-232","heading":"Text","content":"1\n1\n1\n1\n1"},{"id":"text-233","heading":"Text","content":"rsync\nrdist\ncvs\nsftp\nscp"},{"id":"text-234","heading":"Text","content":"Specify the global chrooted directory for all using rssh. If omitted, then not chrooted. Can be overwritten by user configuration."},{"id":"text-235","heading":"Text","content":"Note: User configuration overrides the shared chroot settings. Omitted user settings do not default to shared chroot settings."},{"id":"text-236","heading":"Text","content":"Configuring the chrooted directory:\n        This is true for a global user chroot or individual chroot.\n        In this example we will show a user chrooted to their own home directory /home/user1. When chrooted, the user does not have access to the rest of the filesystem and thus is blind to all of its executables and libraries.\n        It will therefore be necessary to copy local executables and libraries for their local use."},{"id":"text-237","heading":"Text","content":"La description\nUser directory\nSystem equivalent"},{"id":"text-238","heading":"Text","content":"System devices\n/home/user1/dev\n/dev"},{"id":"text-239","heading":"Text","content":"Configuration files\n/home/user1/etc\n/etc/etc/ld.so.cache /etc/ld.so.cache.d/*/etc/ld.so.conf - dynamic linker configuration/etc/nsswitch.conf/etc/passwd/etc/group/etc/hosts/etc/resolv.conf"},{"id":"text-240","heading":"Text","content":"Shared libraries (32 and 64 bit)\n/home/user1/lib/home/user1/lib64\n/lib/lib64"},{"id":"text-241","heading":"Text","content":"Executables and libraries\n/home/user1/usr\n/usr/usr/libexec/openssh/sftp-server/usr/libexec/rssh_chroot_helper"},{"id":"text-242","heading":"Text","content":"Executables\n/home/user1/bin\n/bin"},{"id":"text-243","heading":"Text","content":"Use script to add chroot required files: /opt/bin/userchroot"},{"id":"text-244","heading":"Text","content":"#!/bin/bash\n# First and only argument ($1) is user id\nsi [ -d /home/$1 ];\npuis\n   USERDIR=/home/$1\nautre\n   echo &quot;Error: Directory /home/$1 does not exist&quot;\n   sortie\nFi"},{"id":"text-245","heading":"Text","content":"mkdir $USERDIR/etc\nmkdir $USERDIR/lib\nmkdir -p $USERDIR/usr/libexec/openssh\nmkdir -p $USERDIR/var/log\nmkdir $USERDIR/dev\nmknod -m 666 $USERDIR/dev/null c 1 3"},{"id":"text-246","heading":"Text","content":"cp -p /etc/ld.so.cache $USERDIR/etc\n# If directory exists\nsi [ -d /etc/ld.so.cache.d ];\npuis\n   cp -avRp /etc/ld.so.cache.d $USERDIR/etc\nFi\ngrep $1 /etc/passwd  &gt; $USERDIR/etc/passwd\ncp -p  /etc/ld.so.conf    $USERDIR/etc\ncp -p  /etc/nsswitch.conf $USERDIR/etc\ncp -p  /etc/group         $USERDIR/etc\ncp -p  /etc/hosts         $USERDIR/etc\ncp -p  /etc/resolv.conf   $USERDIR/etc\ncp -ap /usr/libexec/openssh/sftp-server $USERDIR/usr/libexec/openssh/sftp-server\ncp -ap /usr/libexec/rssh_chroot_helper $USERDIR/usr/libexec/rssh_chroot_helper"},{"id":"text-247","heading":"Text","content":"# Authentication libraries required for login (32 bit and 64 bit systems)\nsi [ -d /lib64 ];\npuis\n   mkdir $USERDIR/lib64\n   cp -ap /lib64/libnss_files.so.? $USERDIR/lib64\n   cp -ap /lib64/libnss_files-*.so $USERDIR/lib64\nautre\n   cp -p /lib/libnss_files.so.? $USERDIR/lib\n   cp -p /lib/libnss_files-*.so $USERDIR/lib\nFi"},{"id":"text-248","heading":"Text","content":"FILES=`ldd /usr/libexec/openssh/sftp-server | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé\n FILES=`ldd /usr/libexec/rssh_chroot_helper | perl -ne &#39;s:^[^/]+::; s: (.*)$::; print;&#39;`\nfor ii in $FILES\nfaire\n  rtdir=&quot;$(dirname $ii)&quot;\n  [ ! -d $USERDIR$rtdir ] &amp;&amp; mkdir -p $USERDIR$rtdir || :\n  /bin/cp  -p $ii $USERDIR$rtdir\nterminé"},{"id":"text-249","heading":"Text","content":"Remarque:"},{"id":"text-250","heading":"Text","content":"Blocking FTP: Setting up rssh does not turn off or block FTP access to your system. You must still turn off vsftp: /etc/init.d/vsftpd stop. There is little point to setting up secure chrooted sftp access with rssh and also running a FTP service."},{"id":"text-251","heading":"Text","content":"Debugging:"},{"id":"text-252","heading":"Text","content":"One can pull in the full root path by issuing an internal mount:"},{"id":"text-253","heading":"Text","content":"mount --bind /dev /home/user1/dev\n    \nmount --bind /dev /home/user1/lib\n    \nmount --bind /dev /home/user1/lib64\n    \nmount --bind /dev /home/user1/usr"},{"id":"text-254","heading":"Text","content":"This technique can be used to narrow down the error to find which directory has the missing files. It should not be used as a final solution.\n    Unmount when done: umount /home/user1/dev"},{"id":"text-255","heading":"Text","content":"If authenticating to ldap, nis, etc, pull in the appropriate libraries.\n    You can test with all: cp -p /lib/libnss_* /home/user1/lib\n    This can be performed for /lib64 ainsi que."},{"id":"text-256","heading":"Text","content":"Checklog files for errors: /var/log/messages"},{"id":"text-257","heading":"Text","content":"Man pages:"},{"id":"text-258","heading":"Text","content":"Using gFTP as a Linux sftp client:"},{"id":"text-259","heading":"Text","content":"Start program through menu or command line: gftp&amp;"},{"id":"text-260","heading":"Text","content":"Select &quot;FTP&quot; from toolbar"},{"id":"text-261","heading":"Text","content":"Select &quot;Options&quot;"},{"id":"text-262","heading":"Text","content":"Select &quot;SSH&quot; tab\n    \nSelect &quot;Apply&quot; amd &quot;Ok&quot;"},{"id":"text-263","heading":"Text","content":"On the upper right hand side of the gftp window, select &quot;SSH&quot; from the pull-down menu."},{"id":"text-264","heading":"Text","content":"Using FileZilla as a Linux sftp client:"},{"id":"text-265","heading":"Text","content":"Select &quot;File&quot; + &quot;Site Manager&quot;"},{"id":"text-266","heading":"Text","content":"Select &quot;New Site&quot; (bottom left)"},{"id":"text-267","heading":"Text","content":"Enter &quot;Host:&quot;"},{"id":"text-268","heading":"Text","content":"Choose &quot;Servertype:&quot; &quot;SFTP using SSH2&quot;"},{"id":"text-269","heading":"Text","content":"Select &quot;Logontype:&quot; &quot;Normal&quot;"},{"id":"text-270","heading":"Text","content":"Enter &quot;User:&quot; and click on &quot;Connect&quot;."},{"id":"text-271","heading":"Text","content":"Links:"},{"id":"text-272","heading":"Text","content":"Multi-platform GUI client FileZilla"},{"id":"text-273","heading":"Text","content":"MS/Windows client WinSCP (supports sftp)"},{"id":"text-274","heading":"Text","content":"SentryTools: PortSentry"},{"id":"text-275","heading":"Text","content":"This tool will monitor the network probes and attacks against your server.\nIt can be configured to log and counter these probes and attacks.\nPortSentry can modify your /etc/hosts.deny (PAM module) file and\nissue IP firewall commands automatically to block hackers."},{"id":"text-276","heading":"Text","content":"PortSentry can be loaded as an RPM but this tutorial covers compiling\nPortSentry from source to configure a more preferable system logging."},{"id":"text-277","heading":"Text","content":"Note: Version 1.2 of portsentry can issue iptables, ipchains or route commands\nto thwart attacks.  Iptables/Ipchains is a Linux firewall system built into the Linux kernel.\nLinux kernel 2.6/2.4 uses iptables, kernel 2.2 (old) uses ipchains.\nReferences to ipfwadm are for even older Linux kernels.\nRoute commands can be used by any Unix system including those non-Linux systems which do not support Iptables/Ipchains."},{"id":"text-278","heading":"Text","content":"Steps to install and configure portsentry:"},{"id":"text-279","heading":"Text","content":"Download and unzip source code\n  \nEdit include file and compile\n  \nStart PortSentry\n  \nRead logs"},{"id":"text-280","heading":"Text","content":"Download and unzip source code:"},{"id":"text-281","heading":"Text","content":"Edit include file and compile:\n     cd portsentry_beta/\n     Read file README.install. It details the following:"},{"id":"text-282","heading":"Text","content":"Edit file: portsentry_config.h"},{"id":"text-283","heading":"Text","content":"Set file paths and configure separate log file for Portsentry:\n         Set options:"},{"id":"text-284","heading":"Text","content":"CONFIG_FILE &#8211; PortSentry run-time configuration file.\n         \nWRAPPER_HOSTS_DENY &#8211; The path and name of TCP wrapper hosts.deny file."},{"id":"text-285","heading":"Text","content":"#define CONFIG_FILE &quot;/opt/portsentry/portsentry.conf&quot;\n#define WRAPPER_HOSTS_DENY &quot;/etc/hosts.deny&quot;\n#define SYSLOG_FACILITY LOG_DAEMON    - Default. Change to LOG_LOCAL6"},{"id":"text-286","heading":"Text","content":"#define SYSLOG_LEVEL    LOG_NOTICE\n         \n         (Note: I use /opt/portsentry/ because I like to locate &quot;optional&quot;\n          files/software there.\n          It allows for an easy backup by separating it from the OS.\n          If you prefer, you can use /etc/portsentry/ pour\n          configurations files and follow the Linux/Unix file system logic)\n         \n         The above default, &quot;LOG_DAEMON&quot;, will log messages to the /var/log/messages file.\n         \n    To log to a separate file dedicated to PortSentry logging:\n(This will eliminate logging clutter in the main system logging file)"},{"id":"text-287","heading":"Text","content":"Add logging directives to syslogd configuration file: /etc/syslog.conf\n             Change the following line by adding an extra log facility for portsentry messages which are\n             not going to be logged to the regular syslog output\n             fichier /var/log/messages.\n             This lists what messages to filter out from /var/log/messages.\n            \n              *.info;mail.none;news.none;authpriv.none;cron.none;local6.none\t/var/log/messages \n             Add the following line to assign a portsentry log facility:\n             \n              local6.*                   /var/log/portsentry.log \n             Note: Use tab not spaces in the syslog configuration file.\n             \n             Restart syslogd: /etc/init.d/syslog restart"},{"id":"text-288","heading":"Text","content":"Ensemble portsentry_config.h entry to new log facility:\n              Change from default setting:"},{"id":"text-289","heading":"Text","content":"#define SYSLOG_FACILITY LOG_DAEMON\n              \n              To:"},{"id":"text-290","heading":"Text","content":"#define SYSLOG_FACILITY LOG_LOCAL6"},{"id":"text-291","heading":"Text","content":"FYI: Options for the  SYSLOG_FACILITY are defined in /usr/include/sys/syslog.h\n         They include:"},{"id":"text-292","heading":"Text","content":"SYSLOG_FACILITY\nFacility Name  \n    La description"},{"id":"text-293","heading":"Text","content":"LOG_LOCAL0\nlocal0 \n    reserved for local use"},{"id":"text-294","heading":"Text","content":"LOG_LOCAL1\nlocal1 \n    reserved for local use"},{"id":"text-295","heading":"Text","content":"LOG_LOCAL2\nlocal2 \n    reserved for local use"},{"id":"text-296","heading":"Text","content":"LOG_LOCAL3\nlocal3 \n    reserved for local use"},{"id":"text-297","heading":"Text","content":"LOG_LOCAL4\nlocal4 \n    reserved for local use"},{"id":"text-298","heading":"Text","content":"LOG_LOCAL5\nlocal5 \n    reserved for local use"},{"id":"text-299","heading":"Text","content":"LOG_LOCAL6\nlocal6 \n    reserved for local use"},{"id":"text-300","heading":"Text","content":"LOG_LOCAL7\nlocal7 \n    reserved for local use"},{"id":"text-301","heading":"Text","content":"LOG_USER\n        utilisateur   \n    random user-level messages"},{"id":"text-302","heading":"Text","content":"LOG_MAIL\n        courrier   \n    mail system"},{"id":"text-303","heading":"Text","content":"LOG_DAEMON\ndémon \n    system daemons"},{"id":"text-304","heading":"Text","content":"LOG_SYSLOG\nsyslog \n    messages generated internally by syslogd"},{"id":"text-305","heading":"Text","content":"LOG_LPR\n            lpr    \n    line printer subsystem"},{"id":"text-306","heading":"Text","content":"LOG_NEWS\n        nouvelles   \n    network news subsystem"},{"id":"text-307","heading":"Text","content":"LOG_UUCP\n        uucp   \n    UUCP subsystem"},{"id":"text-308","heading":"Text","content":"LOG_CRON\n        cron   \n    clock daemon"},{"id":"text-309","heading":"Text","content":"LOG_AUTHPRIV\nauthpriv\n    security/authorization messages (private)"},{"id":"text-310","heading":"Text","content":"LOG_FTP\n            ftp    \n    ftp daemon"},{"id":"text-311","heading":"Text","content":"Options for the SYSLOG_LEVEL include:"},{"id":"text-312","heading":"Text","content":"SYSLOG_LEVEL \nPriorité     \n    La description"},{"id":"text-313","heading":"Text","content":"LOG_EMERG   \n                0 \nsystem is unusable"},{"id":"text-314","heading":"Text","content":"LOG_ALERT   \n                1 \naction must be taken immediately"},{"id":"text-315","heading":"Text","content":"LOG_CRIT    \n                2 \ncritical conditions"},{"id":"text-316","heading":"Text","content":"LOG_ERR     \n                3 \nerror conditions"},{"id":"text-317","heading":"Text","content":"LOG_WARNING \n                4 \nwarning conditions"},{"id":"text-318","heading":"Text","content":"LOG_NOTICE  \n                5 \nnormal but significant condition"},{"id":"text-319","heading":"Text","content":"LOG_INFO    \n                6 \ninformatif"},{"id":"text-320","heading":"Text","content":"LOG_DEBUG   \n                7 \ndebug-level messages"},{"id":"text-321","heading":"Text","content":"Edit file: portsentry.conf    to set paths for configuration files and ports to monitor."},{"id":"text-322","heading":"Text","content":"TCP_PORTS=&quot;1,11,15,20,21,23,25,69,79, ... &quot;\nUDP_PORTS=&quot;1,7,9,69,161,162,513,635,  ... &quot;"},{"id":"text-323","heading":"Text","content":"...\n..."},{"id":"text-324","heading":"Text","content":"IGNORE_FILE=&quot;/opt/portsentry/portsentry.ignore&quot;\nHISTORY_FILE=&quot;/opt/portsentry/portsentry.history&quot;\nBLOCKED_FILE=&quot;/opt/portsentry/portsentry.blocked&quot;\n#KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;   - Generic Unix KILL_ROUTE\n                                                              I prefer iptables/ipchains options below\n         \nUn-comment and modify if necessary the appropriate statements. le\nTCP_PORTS=, UDP_PORTS= lists are ignored for stealth scan detection\nmodes. Add common but unused services. i.e. add port 25 if the system is not accepting email as port 25 is included in most scans.\n        I added UDP port 68 (BOOTP) and TCP 21 (ftp), 22 (ssh), 25 (smtp\nmail), 53 (dns bind), 80 (http web server), 119 (news) to the\nADVANCED_EXCLUDE_UDP and ADVANCED_EXCLUDE_TCP statements respectively."},{"id":"text-325","heading":"Text","content":"ADVANCED_EXCLUDE_TCP=&quot;21,22,25,53,80,110,113,119&quot; - server"},{"id":"text-326","heading":"Text","content":"ADVANCED_EXCLUDE_UDP=&quot;21,22,53,110,520,138,137,68,67&quot;\nOU\nADVANCED_EXCLUDE_TCP=&quot;113,139&quot;                    - workstation"},{"id":"text-327","heading":"Text","content":"ADVANCED_EXCLUDE_UDP=&quot;520,138,137,68,67&quot;\n         \n         PAM options:"},{"id":"text-328","heading":"Text","content":"KILL_HOSTS_DENY=&quot;ALL: $TARGET$&quot;"},{"id":"text-329","heading":"Text","content":"For more on PAM see YoLinux network Admin Tutorial"},{"id":"text-330","heading":"Text","content":"Choose one option: (Options: network &quot;route&quot; or firewall command &quot;iptables/ipchains&quot;)"},{"id":"text-331","heading":"Text","content":"For those using iptables (Linux Kernel 2.6/2.4+):\n              KILL_ROUTE=&quot;/sbin/iptables -I INPUT -s $TARGET$ -j DROP&quot;\n              (Note: The default used in portsentry.conf utilise le\n               incorrect path for Red Hat.\n               Changement /usr/local/bin/iptables\n               à /sbin/iptables)\n             \nFor Linux 2.2.x kernels (version 2.102+) using ipchains: (Best option)\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY -l&quot; \n             OU\n             KILL_ROUTE=&quot;/sbin/ipchains -I input -s $TARGET$ -j DENY&quot; \n             Remarque: The second option is without the &quot;-l&quot; or logging option so ipchains won&#39;t keep logging the portscan in /var/log/messages\n         \nSimple method to drop network return routes if iptables or ipchains are not compiled into your kernel:\n             KILL_ROUTE=&quot;/sbin/route add -host $TARGET$ reject&quot;\n             You can check the addresses dropped with the command:  netstat -rn They will be routed to interface &quot;-&quot;."},{"id":"text-332","heading":"Text","content":"Red Hat: Portsentry uses iptables (and it must be running) and not the older ipchains.\nTo see if iptables is invoked during system boot, use the command: chkconfig --list | grep iptables.\nYou can NOT use portsentry to issue iptables rules if your kernel is configured to use ipchain rules.\n         More info on iptables and ipchains support/configuration in Red Hat."},{"id":"text-333","heading":"Text","content":"Edit file: portsentry.ignore            (contains IP addresses to ignore. )"},{"id":"text-334","heading":"Text","content":"127.0.0.1\n0.0.0.0\nYour IP address\n         \n         The at Home network routinely scans for news servers on port 119 from\n         a server named authorized-scan1.security.home.net.\n         Adding the IP address of this server (24.0.0.203)\n         greatly reduces the logging. I also added their BOOTP server.\n         (24.9.139.130)"},{"id":"text-335","heading":"Text","content":"I manually issued the iptables (kernel 2.6/2.4)\n         commands on my workstation\n         to drop the hosts and deny their scans.\n         At Home users may add the commands to the file\n         /etc/rc.d/rc.local"},{"id":"text-336","heading":"Text","content":"/sbin/iptables -I INPUT -s 24.0.0.203 -j DROP\n/sbin/iptables -I INPUT -s 24.9.139.130 -j DROP"},{"id":"text-337","heading":"Text","content":"Edit file: Makefile"},{"id":"text-338","heading":"Text","content":"INSTALLDIR = /opt\n        \n         And remove the line under &quot;uninstall&quot;: (dangerous line!!)"},{"id":"text-339","heading":"Text","content":"#               /bin/rmdir $(INSTALLDIR)\n        \n         And remove the line under &quot;install&quot;: (troublesome line!!)\n#               chmod 700 $(INSTALLDIR)\n        To:\n#               chmod 700 $(INSTALLDIR)/$(CHILDDIR)"},{"id":"text-340","heading":"Text","content":"Compile: make linux"},{"id":"text-341","heading":"Text","content":"Fix the following compile errors in portsentry.c"},{"id":"text-342","heading":"Text","content":"Changement  printf (&quot;Copyright 1997-2003 Craig H. Rowland &lt;craigrowland at users dot\n            sourceforget dot net&gt;n&quot;);\n            to one line:  printf (&quot;Copyright 1997-2003 Craig H. Rowlandn&quot;);\n        \nFix warning: warning: passing argument 3 of â€˜acceptâ€™ from incompatible pointer type\n            Separate and change declaration of &quot;length&quot; to: unsigned int length;"},{"id":"text-343","heading":"Text","content":"Install (as root): make install"},{"id":"text-344","heading":"Text","content":"Run PortSentry for advanced UDP/TCP stealth scan detection:"},{"id":"text-345","heading":"Text","content":"portsentry -atcp\n    \nportsentry -audp"},{"id":"text-346","heading":"Text","content":"OU use init scripts below in next section."},{"id":"text-347","heading":"Text","content":"Check logfile for hacker attacks. Voir: /var/log/messages\nou  /var/log/portsentry.log if you are logging to a dedicated file.\n    Also check /etc/hosts.deny to see a list of IP addresses that\n    PortSentry has deemed to be attackers.\n    Check the &quot;HISTORY_FILE&quot; /opt/portsentry/portsentry.history"},{"id":"text-348","heading":"Text","content":"Note: Is is possible to have all logging sent to a logging daemon on a single\nserver. This will allow the administrator to check the logs on only one server\nrather than individually on many."},{"id":"text-349","heading":"Text","content":"Note on Red Hat RPMs:\nRPM layout:"},{"id":"text-350","heading":"Text","content":"/usr/sbin/portsentry &#8211; (chmod 700) executable\n  \n/etc/portsentry/ &#8211; (chmod 700) Directory used for configuration files.\n  \n/etc/portsentry/portsentry.conf (chmod 600)\n  \n/etc/portsentry/portsentry.ignore (chmod 600)\n  \n/var/portsentry/portsentry.history\n  \n/var/portsentry/portsentry.blocked"},{"id":"text-351","heading":"Text","content":"Instead of using a firewall command (ipchains/iptables), a false route is used: /sbin/route add -host $TARGET$ gw 127.0.0.1.\nMy init script calls the portsentry executable twice with the appropriate command line arguments to monitor tcp and udp ports.\nThe Red Hat RPM init script uses the file /etc/portsentry/portsentry.modes\nand a for loop in the\ninit script to call portsentry the appropriate number of times.\nTheir init script also recreates the portsentry.ignore file each time\nportsentry is started by including the IP addresses found with ip addr show ou ifconfig\nand the addresses 0.0.0.0 and localhost.\nPersistent addresses must be placed above a line stating:\n    Do NOT edit below this otherwise it is not included in the creation\nof the new file.\n    The Red Hat RPM portsentry version logs everything to /var/log/messages. My configuration avoids log clutter by logging to a separate file."},{"id":"text-352","heading":"Text","content":"Notes on DOS (Denial of Service) possibility:\nIf portsentry is configured to shut down an\nattack with firewall rules, an attacker may use this feature to slow down\nyour machine over time by creating a huge set of firewall rules.\nIt would require the hacker to use (or spoof) a new IP address each time.\nIt is probably a good idea to monitor or even clear the firewall rules from\ntime to time."},{"id":"text-353","heading":"Text","content":"iptables:"},{"id":"text-354","heading":"Text","content":"List firewall rules: iptables -L\n    \nClear firewall rules: iptables -F"},{"id":"text-355","heading":"Text","content":"ipchains:"},{"id":"text-356","heading":"Text","content":"List firewall rules: ipchains -L\n    \nClear firewall rules: ipchains -F"},{"id":"text-357","heading":"Text","content":"Clean-up script: /etc/cron.monthly/reset-chainrules\n(-rwx------   1 root     root)\nThis script is run automatically once a week by cron. (The presence of this\nscript in this directory for the Red Hat configuration makes it so)"},{"id":"text-358","heading":"Text","content":"#!/bin/bash\n# Purge and re-assign chain rules \nipchains -F\nipchains -A input -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 2049 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 6000:6009 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 515 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 515 -j REJECT\nipchains -A input -p tcp -s 0/0 -d 0/0 111 -y -j REJECT\nipchains -A input -p udp -s 0/0 -d 0/0 111 -j REJECT\nipchains -A input -j REJECT -p all -s localhost  -i eth0 -l"},{"id":"text-359","heading":"Text","content":"Regarde aussi:"},{"id":"text-360","heading":"Text","content":"Other tools to detect portscans and network based hacker attacks:"},{"id":"text-361","heading":"Text","content":"scanlogd &#8211; Attack detection.\n  \nInterSect Alliance &#8211; Intrusion analysis. Identifies malicious or unauthorized access attempts.\n  \nsnort &#8211; Instead of monitoring\na single server with portsentry, snort monitors the network, performing\nreal-time traffic analysis and packet logging on IP networks for the\ndetection of an attack or probe.\nAlso see: YoLinux IDS and Snort links"},{"id":"text-362","heading":"Text","content":"Using an init script to start and stop the portsentry program.\nInit configuration: /etc/rc.d/init.d/portsentry\n    The init script needs to be executable: chmod a+x /etc/rc.d/init.d/portsentry\n    After adding the following script, enter it into the init process with\n    the command: chkconfig --add portsentry ou\n    chkconfig --level 345 portsentry on\n    See YoLinux Init Tutorial for more information."},{"id":"text-363","heading":"Text","content":"#!/bin/bash\n#\n# Startup script for PortSentry\n#\n# chkconfig: 345 85 15\n# description:  PortSentry monitors TCP and UDP ports for network attacks\n#\n# processname: portsentry\n# pidfile: /var/run/portsentry.pid\n# config: /opt/portsentry/portsentry.conf\n# config: /opt/portsentry/portsentry.ignore \n# config: /opt/portsentry/portsentry.history\n# config: /opt/portsentry/portsentry.blocked"},{"id":"text-364","heading":"Text","content":"# Source function library.\n. /etc/rc.d/init.d/functions"},{"id":"text-365","heading":"Text","content":"# Source networking configuration.\n. /etc/sysconfig/network"},{"id":"text-366","heading":"Text","content":"# Check that networking is up.\n[ $NETWORKING = \"no\" ] &amp;&amp; exit 0"},{"id":"text-367","heading":"Text","content":"# See how we were called.\ncase &quot;$1&quot; in\n  start)\n\techo -n &quot;Starting portsentry: &quot;\n\tdaemon /opt/portsentry/portsentry -atcp \n\t/opt/portsentry/portsentry -audp \nécho\n\ttouch /var/lock/subsys/portsentry\n\t;;\n  stop)\n\techo -n &quot;Shutting down portsentry: &quot;\n\tkillproc portsentry\nécho\n\trm -f /var/lock/subsys/portsentry\n\trm -f /var/run/portsentry.pid\n\t;;\n  status)\n\tstatus portsentry\n\t;;\n  restart)\n\t$0 stop\n\t$0 start\n\t;;\n  reload)\n\techo -n &quot;Reloading portsentry: &quot;\n\tkillproc portsentry -HUP\nécho\n\t;;\n  *)\n\techo &quot;Usage: $0 stop&quot;\nsortie 1\nesac"},{"id":"text-368","heading":"Text","content":"exit 0"},{"id":"text-369","heading":"Text","content":"Logrotate Configuration:\nCreate the following file to have your logs rotate."},{"id":"text-370","heading":"Text","content":"Fichier: /etc/logrotate.d/portsentry"},{"id":"text-371","heading":"Text","content":"/var/log/portsentry.log  vrai\n    endscript"},{"id":"text-372","heading":"Text","content":"Also see the YoLinux Sys Admin tutorial covering logrotate."},{"id":"text-373","heading":"Text","content":"Tests:"},{"id":"text-374","heading":"Text","content":"Portscan your workstation &#8211; Use your web browser to go to this site. Select &quot;Probe my ports&quot; and it will\nscan you. You can then look at the file /opt/portsentry/portsentry.blocked.atcp\nto see that portsentry dropped the scanning site:\n Host: shieldsup.grc.com/207.71.92.221 Port: 23 TCP Blocked\nThe file /var/log/portsentry.log will show the action taken:"},{"id":"text-375","heading":"Text","content":"portsentry[589]: attackalert: SYN/Normal scan from host: shieldsup.grc.com/207.71.92.221 to TCP port: 23\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via wrappers with string: &quot;ALL: 207.71.92.221&quot;\n portsentry[589]: attackalert: Host 207.71.92.221 has been blocked via dropped route using command: \n   &quot;/sbin/ipchains -I input -s 207.71.92.221 -j DENY -l&quot;"},{"id":"text-376","heading":"Text","content":"nmap: portscanner &#8211; This is\nthe hacker tool responsible for many of the portscans you may be receiving."},{"id":"text-377","heading":"Text","content":"Command arguments:"},{"id":"text-378","heading":"Text","content":"Argument\nLa description"},{"id":"text-379","heading":"Text","content":"-sO\nIP scan. Find open ports."},{"id":"text-380","heading":"Text","content":"-sT\nTCP scan. Full connection made."},{"id":"text-381","heading":"Text","content":"-sS\nSYN scan (half open scan). This scan is typically not logged on receiving system."},{"id":"text-382","heading":"Text","content":"-sP\nPing ICMP scan."},{"id":"text-383","heading":"Text","content":"-sU\nUDP scan."},{"id":"text-384","heading":"Text","content":"-P0\nDon&#39;t ping before scan."},{"id":"text-385","heading":"Text","content":"-PT\nUse ping to determine which hosts are available."},{"id":"text-386","heading":"Text","content":"-F\nFast scan. Scan for ports listed in configuration."},{"id":"text-387","heading":"Text","content":"-T\nSet timing of scan to use values to avoid detection."},{"id":"text-388","heading":"Text","content":"-O\nDetermines operating system."},{"id":"text-389","heading":"Text","content":"-p 1000-1999,5000-5999\nScan port ranges specified."},{"id":"text-390","heading":"Text","content":"Also see: nmap man page for a full listing of nmap command line arguments.\n        \nExemples:\n    \n            nmap -sT -F IP-address         Scan\n   \n   \n   \n   nmap -sS -F IP-address         SYN Scan\n   \n   \n   \n   nmap -sU -F IP-address         Scan UPD ports\n   \n   \n   \n   nmap -sF -F IP-address         FIN Scan\n   \n   \n   \n   nmap -O  -F IP-address         Determine OS\n   \n   \n   \n   nmap -p22 -F -O  IP-address        nmap -p 1-30,40-65535  IP-Address  Scan given port ranges\n        \nAdd the option -v (verbose) or -vv (super verbose) for more info.\n        The ports will be determined to be open, filtered or firewalled."},{"id":"text-391","heading":"Text","content":"Sample output from command: nmap -sS -F -O IP-Address\n    \nStarting nmap V. 2.54BETA7 ( www.insecure.org/nmap/ ).....(The 1067 ports scanned but not shown below are in state: closed)Port       State       Service21/tcp     open        ftp                     22/tcp     open        ssh                     25/tcp     open        smtp                    53/tcp     open        domain                  111/tcp    open        sunrpc          - Shut down the portmap (RPC) daemon:    /etc/rc.d/init.d/portmap stop\n137/tcp    filtered    netbios-ns      - Turn off netbios services:      /etc/rc.d/init.d/smb stop\n138/tcp    filtered    netbios-dgm             \n139/tcp    filtered    netbios-ssn"},{"id":"text-392","heading":"Text","content":"TCP Sequence Prediction: Class=random positive increments\n                         Difficulty=2727445 (Good luck!)\nRemote operating system guess: Linux 2.1.122 - 2.2.16"},{"id":"text-393","heading":"Text","content":"Nmap run completed -- 1 IP address (1 host up) scanned in 36 seconds"},{"id":"text-394","heading":"Text","content":"nmap/nmapfe: nmapfe = nmap front end &#8211; GUI front end to nmap.\n    It&#39;s an amazingly easy and useful tool which will help\n    you make discoveries about your servers before the hackers do.\n    \n    Linux packages:"},{"id":"text-395","heading":"Text","content":"Red Hat RPMs: nmap-XXX.x86_64.rpm, nmap-frontend-XXX.noarch.rpm (GTK+ GUI)\n    \nUbuntu: nmap, zenmap"},{"id":"text-396","heading":"Text","content":"Links:"},{"id":"text-397","heading":"Text","content":"Tripwire: (security monitoring)"},{"id":"text-398","heading":"Text","content":"Tripwire monitors your file system for changes. Tripwire is used to create an\ninitial database of information on all the system files then runs periodically\n(cron) to compare the system to the database."},{"id":"text-399","heading":"Text","content":"Use the command tripwire --version ou\nrpm -q tripwire to determine the version."},{"id":"text-400","heading":"Text","content":"Red Hat includes Tripwire as an optional package during install.\nThe Ubuntu/Debian install is as easy as apt-get install tripwire.\nUpon installation it will proceed to scan your entire filesystem to create\na default database of what your system looks like. (files and sizes etc)\nIt took about ten minutes to run on my server!"},{"id":"text-401","heading":"Text","content":"Tripwire configuration files:"},{"id":"text-402","heading":"Text","content":"Tripwire 2.3.0:"},{"id":"text-403","heading":"Text","content":"/etc/tripwire/twcfg.txt\n    \n/etc/tripwire/twpol.txt"},{"id":"text-404","heading":"Text","content":"These files are first edited and then processed by the script\n    /etc/tripwire/twinstall.sh which configures Tripwire after the\n    installation of the Tripwire RPM package."},{"id":"text-405","heading":"Text","content":"Edit and change file: /etc/tripwire/twcfg.txt\n    \n    Change:\n    LOOSEDIRECTORYCHECKING =false\n    à\n    LOOSEDIRECTORYCHECKING=TRUE"},{"id":"text-406","heading":"Text","content":"This was recommended in the comments of the file twpol.txt\n    \n    Edit and change file: /etc/tripwire/twpol.txt\n    \n    Change:\n    severity = $(SIG_XXX)\n    à\n    severity = $(SIG_XXX),emailto = root@localhost\n    ou\n    severity = $(SIG_XXX),emailto = root@localhost;admin@isp.com\noù XXX is the severity level.\n    This will cause Tripwire to email a report of discrepancies for the\n    rule edited. Set the email address to one appropriate for you.\n    \n    I also added:"},{"id":"text-407","heading":"Text","content":"&quot;User binaries&quot; rule:  directory /opt/bin\n        \n&quot;Libraries&quot; rule:  directory /opt/lib"},{"id":"text-408","heading":"Text","content":"I removed/commented out:"},{"id":"text-409","heading":"Text","content":"the rule &quot;System boot changes&quot; as it reports changes due to system boot.\n        \n    Rule: &quot;Root config files&quot;: Many of the non-existent\nfiles listed under /root were commented out to reduce the number of\nerrors reported. \n    Rule &quot;File System and Disk Administraton Programs&quot;: Many\nof the non-existent binaries listed under /sbin were commented out to\nreduce the number of errors reported."},{"id":"text-410","heading":"Text","content":"After configuration files have been edited run the script: /etc/tripwire/twinstall.sh\n    The script will ask for a &quot;passphrase&quot; for the site and local system.\n    This is a similar concept to a password &#8211; remember it!\n    \n    If at any point you want to\n    make configuration/policy changes, edit these files and re-run the\n    configuration script. The script will generate the true configuration\n    files used by Tripwire:"},{"id":"text-411","heading":"Text","content":"/etc/tripwire/tw.cfg\n        (View with command: twadmin --print-cfgfile)\n    \n/etc/tripwire/tw.pol\n        (View with command: twadmin --print-polfile)\n    \n/etc/tripwire/site.key\n    \n/etc/tripwire/ServerName-a-local.key"},{"id":"text-412","heading":"Text","content":"These files are binary and not human readable."},{"id":"text-413","heading":"Text","content":"Tripwire 1.2-3 (Red Hat 6.2 Powertools): /etc/tw.config"},{"id":"text-414","heading":"Text","content":"Tripwire initialization:"},{"id":"text-415","heading":"Text","content":"If at any time you change the configuration file to monitor your system\ndifferently or install an upgrade (changes a whole lot of files which\nwill &quot;trip&quot; tripwire into reporting all changes) you may want to generate\na new database."},{"id":"text-416","heading":"Text","content":"Tripwire 2.3.0-58: /usr/sbin/tripwire --init\n    You will be prompted for your &quot;local passphrase&quot;.\n    This will generate a tripwire database file: /var/lib/tripwire/ServerName-a.twd"},{"id":"text-417","heading":"Text","content":"Tripwire 1.2-3: /usr/sbin/tripwire -initialize\nThis will generate a tripwire database file: ./databases/tw.db_ServerName\n        If you are in root&#39;s home directory, this will create the file  /root/databases/tw.db_ServerName\n        At this point copy it to a usable location:"},{"id":"text-418","heading":"Text","content":"cp -p /root/databases/tw.db_ServerName  /var/spool/tripwire/tw.db_ServerName\n        \nDon&#39;t change /etc/tw.config\n without first running tripwire -initialize\notherwise it will show differences due to settings in tw.config file rather\nthan true differences."},{"id":"text-419","heading":"Text","content":"Cron and tripwire:"},{"id":"text-420","heading":"Text","content":"Cron runs tripwire:"},{"id":"text-421","heading":"Text","content":"Tripwire 2.3.0-58:\n    Fichier: /etc/cron.daily/tripwire-check"},{"id":"text-422","heading":"Text","content":"#!/bin/sh\nHOST_NAME=`uname -n`\nsi [ ! -e /var/lib/tripwire/$HOST_NAME.twd ] ; puis\n        echo &quot;****    Error: Tripwire database for $HOST_NAME not found.    ****&quot;\n        echo &quot;**** Run &quot;/etc/tripwire/twinstall.sh&quot; and/or &quot;tripwire --init&quot;. ****&quot;\nautre\n        test -f /etc/tripwire/tw.cfg &amp;&amp;  /usr/sbin/tripwire --check\nFi"},{"id":"text-423","heading":"Text","content":"You may move this cron script to the directory /etc/cron.weekly/\n    to reduce reporting from a daily to a weekly event.\n    Tripwire reports will be written to: /var/lib/tripwire/report/HostName-Date.twr"},{"id":"text-424","heading":"Text","content":"Tripwire 1.2-3:\n    Fichier: /etc/cron.daily/tripwire.verify\nscript which runs the command: /usr/sbin/tripwire -loosedir -q\n        Note: You may want to move the script to /etc/cron.weekly/tripwire.verify\n to reduce email reporting to root."},{"id":"text-425","heading":"Text","content":"Read tripwire report:"},{"id":"text-426","heading":"Text","content":"Tripwire 2.3.0-58: twprint --print-report -r /var/lib/tripwire/report/report-file.twr"},{"id":"text-427","heading":"Text","content":"Interactive mode:"},{"id":"text-428","heading":"Text","content":"Tripwire 1.2-3:\n      Update tripwire database &#8211; run:\n        tripwire -interactive\n        This will allow you to respond Y/N to files if they should be permanently\nupdated in the tripwire database. This will still run tripwire against the\nwhole file system.\n I ran it from /root and it updated\n        /root/databases/tw.db_ServerName \nYou must then cp -p to /var/spool/tripwire/\nto update the tripwire database."},{"id":"text-429","heading":"Text","content":"Default configuration file:"},{"id":"text-430","heading":"Text","content":"Tripwire 2.3.0-58: /etc/twcfg.txt\nROOT                   =/usr/sbinPOLFILE                =/etc/tripwire/tw.polDBFILE                 =/var/lib/tripwire/$(HOSTNAME).twdREPORTFILE             =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twrSITEKEYFILE            =/etc/tripwire/site.keyLOCALKEYFILE           =/etc/tripwire/$(HOSTNAME)-local.keyEDITOR                 =/bin/viLATEPROMPTING          =falseLOOSEDIRECTORYCHECKING =falseMAILNOVIOLATIONS       =trueEMAILREPORTLEVEL       =3REPORTLEVEL            =3MAILMETHOD             =SENDMAILSYSLOGREPORTING        =falseMAILPROGRAM            =/usr/sbin/sendmail -oi -t"},{"id":"text-431","heading":"Text","content":"Tripwire 1.2-3: /etc/tw.config\n# Log file@@define LOGFILEM E+pugn# Config file@@define CONFM E+pinugc# Binary@@define BINM E+pnugsci12# Directory@@define DIRM E+pnug# Data file (same as BIN_M currently)@@define DATAM E+pnugsci12# Device files@@define DEVM E+pnugsc# exclude all of /proc=/proc E#=/dev @@DIRM/dev @@DEVM#=/etc @@DIRM/etc @@CONFM# Binary directories#=/usr/sbin @@DIRM/usr/sbin @@BINM#=/usr/bin @@DIRM/usr/bin @@BINM#=/sbin @@DIRM/sbin @@BINM#=/bin @@DIRM/bin @@BINM#=/lib @@DIRM/lib @@BINM#=/usr/lib @@DIRM/usr/lib @@BINM=/usr/src E=/tmp @@DIRM\nAjouter:\n    \n/var/named @@CONFM                   - If you are running Bind DNS slave"},{"id":"text-432","heading":"Text","content":"/home/httpd/cgi-bin @@BINM\n        \nDelete/comment out:\n#/dev @@DEVM\nThis eliminated the reporting of too much junk due to a reboot of the system."},{"id":"text-433","heading":"Text","content":"Man pages:"},{"id":"text-434","heading":"Text","content":"Tripwire 2.3.0-58:"},{"id":"text-435","heading":"Text","content":"tripwire &#8211; a file integrity checker for UNIX systems\n      \ntwintro &#8211; introduction to Tripwire software\n      \ntwadmin &#8211; Tripwire administrative and utility tool\n      \ntwprint &#8211; Tripwire database and report printer\n      \nsiggen &#8211; signature gathering routine for Tripwire\n      \ntwconfig &#8211; Tripwire configuration file reference\n      \ntwpolicy &#8211; Tripwire policy file description reference (For file /etc/tripwire/twpol.txt)\n      \ntwfiles &#8211; Overview of files used by Tripwire and file backup process"},{"id":"text-436","heading":"Text","content":"Regarde aussi:"},{"id":"text-437","heading":"Text","content":"CHKROOTKIT: Performing a trojan/worm/virus file scan."},{"id":"text-438","heading":"Text","content":"Tripwire will monitor your filesystems for intrusion or addition of a file\nso you may determine what changes have occurred on your system in sensitive\nareas.  Chkrootkit will scan your system for known exploits,\nTrojan commands, and worms used to compromise a system."},{"id":"text-439","heading":"Text","content":"Download chkrootkit from http://www.chkrootkit.org. It is a shell script which should be run as root as well as a\nsmall collection of C programs."},{"id":"text-440","heading":"Text","content":"Installation:"},{"id":"text-441","heading":"Text","content":"avoir du sens  (Compile C programs)\n    \n./chkrootkit (Run shell script and call programs.)"},{"id":"text-442","heading":"Text","content":"Usage:"},{"id":"text-443","heading":"Text","content":"./chkrootkit\n        OU\n./chkrootkit -h (help)"},{"id":"text-444","heading":"Text","content":"See the README file for more info."},{"id":"text-445","heading":"Text","content":"Remarque:"},{"id":"text-446","heading":"Text","content":"This software is constantly being upgraded and updated to include\n    scans for new exploits.\n  \nIf running portsentry, chkrootkit may return a false error while performing the bindshell test."},{"id":"text-447","heading":"Text","content":"NESSUS: Performing a network vulnerability scan/security assessment of your system."},{"id":"text-448","heading":"Text","content":"Let me start by saying that this should only be performed on your own systems.\nIt is considered and attack to run this against the systems of others\nand legal action may be taken against you for performing such an audit.\nThis is not a scan like NMAP. NESSUS will search and locate vulnerabilities\non your system by actively trying to perform known exploits against the\nsystème."},{"id":"text-449","heading":"Text","content":"Nessus is amazingly complete and effective. In fact it is awesome!!\nIt will identify services on your system and try to exploit them.\nIf a vulnerability is found it will make recommendations about upgrades,\nconfiguration changes and where to find patches. It will also explain\nany causes for concern in detail and explain why your system is vulnerable.\nAnd that&#39;s not all! It can output reports in various formats including HTML\nwith pie charts and bar charts!! The HTML reports will have hyperlinks to the\nsecurity reports, upgrades and patches. (I&#39;m impressed)\nIt can scan Unix, Linux and Windows systems for vulnerabilities."},{"id":"text-450","heading":"Text","content":"Remarque:"},{"id":"text-451","heading":"Text","content":"Running &quot;Dangerous Plugins&quot; may cause a crash of the system being audited!!"},{"id":"text-452","heading":"Text","content":"The NESSUS software is available from http://Nessus.org.\nIf compiling source:"},{"id":"text-453","heading":"Text","content":"Edit file: nessus-core/include/config.h (Set USE_AF_UNIX to define socket type)"},{"id":"text-454","heading":"Text","content":"It is also available in RPM form: (See http://freshrpms.net)"},{"id":"text-455","heading":"Text","content":"nessus-client-&#8230;.rpm\n  \nnessus-common-&#8230;.rpm\n  \nnessus-plugins-&#8230;.rpm\n  \nnessus-server-&#8230;.rpm : Nessus plugins which are used to perform\nthe various checks. (Scripts in nasl scripting language) Note that the\nRPM installs an init script which starts nessusd during boot. Disable\navec chkconfig --del nessusd\n  \nnessus-devel-&#8230;.rpm : Nessus development libraries and headers."},{"id":"text-456","heading":"Text","content":"Running NESSUS:"},{"id":"text-457","heading":"Text","content":"Configuration file: /etc/nessus/nessusd.conf"},{"id":"text-458","heading":"Text","content":"You may also consider a popular branch of Nessus, OpenVAS: Open Vulnerability Assessment System"},{"id":"text-459","heading":"Text","content":"Useful links and resources:"},{"id":"text-460","heading":"Text","content":"Livres:"},{"id":"text-461","heading":"Text","content":"&quot;Linux Firewalls&quot;\n    by Robert L. Ziegler, Carl Constaintine\n    ISBN #0735710996, New Riders 10/2001"},{"id":"text-462","heading":"Text","content":"This is the newer version. It includes updates on the Linux 2.4 kernel,\n    VPN&#39;s and SSH."},{"id":"text-463","heading":"Text","content":"&quot;Linux Firewalls&quot;\n    Robert L. Ziegler\n    ISBN #0-7357-0900-9, New Riders 11/1999"},{"id":"text-464","heading":"Text","content":"Most complete Linux firewall/security book in publication.\n    Covers ipchains, bind and a complete review of possible firewall configurations."},{"id":"text-465","heading":"Text","content":"&quot;Hack Proofing Linux : A Guide to Open Source Security&quot;\n    by James Stanger, Patrick T. Lane\n    ISBN #1928994342, Syngress"},{"id":"text-466","heading":"Text","content":"&quot;Real World Linux Security: Intrusion Prevention, Detection and Recovery&quot;\n    by Bob Toxen\n    ISBN #0130281875, Prentice Hall"},{"id":"text-467","heading":"Text","content":"&quot;Hacking Linux Exposed&quot;\n    by Brian Hatch, James B. Lee, George Kurtz\n    ISBN #0072225645, McGraw-Hill (2nd edition)"},{"id":"text-468","heading":"Text","content":"From the same authors of &quot;Hacking Exposed&quot;."},{"id":"text-469","heading":"Text","content":"&quot;Maximum Linux Security: A Hacker&#39;s Guide to Protecting Your Linux Server and Workstation&quot;\n    by Anonymous and John Ray\n    ISBN #0672321343, Sams"},{"id":"text-470","heading":"Text","content":"Covers not only audit and protection methods but also investigates and\n    explains the attacks and how they work."},{"id":"text-471","heading":"Text","content":"&quot;Network Intrusion Detection: An Analyst&#39;s Handbook&quot;\n    by Stephen Northcutt, Donald McLachlan, Judy Novak\n    ISBN #0735710082, New Riders Publishing"},{"id":"text-472","heading":"Text","content":"&quot;SSH, the Secure Shell : The Definitive Guide&quot;\n    by Daniel J. Barrett, Richard Silverman\n    ISBN #0596000111, O&#39;Reilly &amp; Associates"},{"id":"text-473","heading":"Text","content":"&quot;Nessus Network Auditing (Jay Beale&#39;s Open Source Security)&quot;\n    by Renaud Deraison, Noam Rathaus, HD Moore, Raven Alder, George Theall, Andy Johnston, Jimmy Alderson\n    ISBN #1931836086, Syngress"},{"id":"text-474","heading":"Text","content":"&quot;Computer Security Incident Handling Step by Step&quot;\n    by Stephen Northcutt\n    ISBN #0967299217"},{"id":"text-475","heading":"Text","content":"&quot;Security Assessment: Case Studies for Implementing the NSA IAM&quot;\n    by Russ Rogers, Greg Miles, Ed Fuller, Ted Dykstra\n    ISBN #1932266968, Syngress"},{"id":"text-476","heading":"Text","content":"&quot;Network Security Assessment&quot;\n    by Chris McNab\n    ISBN #059600611X, O&#39;Reilly"},{"id":"text-477","heading":"Text","content":"&quot;A Practical Guide to Security Assessment&quot;\n    by Sudhanshu Kairab\n    ISBN #0849317061, Auerbach Publications"},{"id":"text-478","heading":"Text","content":"&quot;Aggressive Network Self-defense&quot;\n    by NEIL R. WYLER\n    ISBN #1931836205, Syngress Publishing"},{"id":"text-479","heading":"Text","content":"Security Source Magazine\n Security Source Magazine&#39;s cover story is about keeping\nthe network secure, from the gateway to the desktop. Subscribe now and\ncontinue to learn about valuable security topics and strategies in each\nquarterly issue."},{"id":"text-480","heading":"Text","content":"LibreSubscription"},{"id":"text-481","heading":"Text","content":"Info Security Magazine\n Business and management of information security. C&#39;est un\ninternational magazine, with an European focus. It is published in both\nprint and digital editions, the latter containing the full content of\nthe print publication, accessible via the web. Its experienced\neditorial team delivers stories that deal with the big picture issues\nof information security. Our sources and columnists are the expert\nsecurity researchers and practitioners who define, drive, and lead the\nfield. And our journalists are in demand by the IT trade and broadsheet\npress."},{"id":"text-482","heading":"Text","content":"LibreSubscription"},{"id":"text-483","heading":"Text","content":"Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]"}],"media":{"primary_image":""},"relations":[{"rel":"canonical","href":"https://tutos-gameserver.fr/2019/05/02/tutoriel-sur-la-securite-et-la-configuration-de-linux-internet-server-serveur-dimpression/"},{"rel":"alternate","href":"https://tutos-gameserver.fr/2019/05/02/tutoriel-sur-la-securite-et-la-configuration-de-linux-internet-server-serveur-dimpression/llm","type":"text/html"},{"rel":"alternate","href":"https://tutos-gameserver.fr/2019/05/02/tutoriel-sur-la-securite-et-la-configuration-de-linux-internet-server-serveur-dimpression/llm.json","type":"application/json"},{"rel":"llm-manifest","href":"https://tutos-gameserver.fr/llm-endpoints-manifest.json","type":"application/json"}],"http_headers":{"X-LLM-Friendly":"1","X-LLM-Schema":"1.1.0","Content-Security-Policy":"default-src 'none'; img-src * data:; style-src 'unsafe-inline'"},"license":"CC BY-ND 4.0","attribution_required":true,"allow_cors":false}