{"id":99,"date":"2008-06-26T10:27:19","date_gmt":"2008-06-26T09:27:19","guid":{"rendered":"http:\/\/blog.guiguiabloc.fr\/index.php\/2008\/06\/26\/serveur-dauthentification-tacacs\/"},"modified":"2008-06-26T10:27:19","modified_gmt":"2008-06-26T09:27:19","slug":"serveur-dauthentification-tacacs","status":"publish","type":"post","link":"http:\/\/blog.guiguiabloc.fr\/index.php\/2008\/06\/26\/serveur-dauthentification-tacacs\/","title":{"rendered":"Serveur d&rsquo;authentification TACACS+"},"content":{"rendered":"<p>Lorsque l&rsquo;on commence \u00e0 avoir un peu de mat\u00e9riel r\u00e9seau (i.e. Cisco \ud83d\ude42 ), il est alors int\u00e9ressant de centraliser l&rsquo;authentification et l&rsquo;autorisation sur ses \u00e9quipements.<\/p>\n<p>Les serveurs que vous rencontrerez le plus souvent sont les Radius (bien connu des internautes :-p ) et plus sp\u00e9cifiquement \u00e0 Cisco, Tacacs+.<\/p>\n<p>On peut d&rsquo;authentifier sur un Cisco de plusieurs fa\u00e7ons, soit part un mot de passe local, soit via un serveur Radius, soit via un serveur <a href=\"http:\/\/fr.wikipedia.org\/wiki\/Terminal_Access_Controller_Access-Control_System\" title=\"tacacs\" target=\"_blank\">TACACS+<\/a>.<\/p>\n<p>C&rsquo;est cette derni\u00e8re solution que nous allons mettre en oeuvre.<\/p>\n<p>Je ne rentrerais pas dans les d\u00e9tails concernant L&rsquo;authentification, l&rsquo;autorisation et l&rsquo;accounting (le fameux AAA) ni dans le choix de TACACS+ plut\u00f4t que Radius, aussi je vous invite \u00e0 lire ce tr\u00e8s bon <a href=\"http:\/\/highsecu.free.fr\/dossiers\/tacacs_et_radius_par_Ben.php\" title=\"tacacs et radius\" target=\"_blank\">article de Ben<\/a>.<\/p>\n<p>Bien \u00e9videmment, j&rsquo;ai choisi mes serveurs OpenBSD pour y install\u00e9 Tacacs+.<\/p>\n<p>De plus le package TACACS+ est diponible pour le poisson qui pique ( tacacs+-4.0.4ap1.tgz pour la version 4.3).<\/p>\n<p>Vous le trouverez s\u00fbrement pour votre distribution Linux favorite sinon, sur le FTP de Cisco, ftp-eng.cisco.com dans \/pub\/tacacs .<\/p>\n<ul>\n<li><strong>Partie Serveur<\/strong><\/li>\n<\/ul>\n<p>La configuration se fait  dans le fichier \/etc\/tac_plus.conf.<\/p>\n<p>Nous allons faire une configuration simplifi\u00e9e qui nous servira a nous authentifier sur nos ciscos avec 2 comptes. Celui de l&rsquo;administrateur et un compte Op\u00e9rateur qui nous servira plus tard pour la sauvegarde \ud83d\ude09 (dans un futur billet) .<\/p>\n<pre class=\"code\">key = macl\u00e9secr\u00e8te    (une cl\u00e9 d'\u00e9change)\r\n\r\naccounting file = \/var\/log\/tacacs\r\n\r\n# Le password Enable :\r\n\r\nuser = $enable$ {\r\n\r\n        login = des \"1234567890\"\r\n\r\n        }<\/pre>\n<p>On \u00e9vitera bien \u00e9videment de mettre les mots de passe en clair&#8230; L&rsquo;utilitaire \/usr\/local\/sbin\/generate_passwd vous permettra de chiffrer vos mots de passe :<\/p>\n<pre class=\"code\">poissonquipique# .\/generate_passwd\r\n\r\nPassword to be encrypted:<\/pre>\n<p>On d\u00e9fini un groupe \u00ab\u00a0Admin\u00a0\u00bb et un groupe \u00ab\u00a0Operator\u00a0\u00bb :<\/p>\n<pre class=\"code\">\r\ngroup = admin {\r\n\r\nlogin = des \"AB12GR54RE98\"\r\n\r\nexpires = \"Dec 31 2099\"\r\n\r\n}\r\n\r\ngroup = operators {\r\n\r\nlogin = cleartext \"motdepassesupersecret\"\r\n\r\nexpires = \"Dec 31 2999\"<\/pre>\n<p>Ici je mets login = cleartext pour d\u00e9finir un mot de passe en clair (c&rsquo;est un exemple hein !!!!), crypt\u00e9 toujours vos mots de passe dans vos fichiers de configuration.<\/p>\n<pre class=\"code\">\r\nuser = charlie {\r\ndefault service = permit\r\nmember = admin\r\n}<\/pre>\n<p>Je d\u00e9finie l&rsquo;admin \u00ab\u00a0charlie\u00a0\u00bb qui fait partie du groupe \u00ab\u00a0admin\u00a0\u00bb et qui a tout les droits (default service=permit).<\/p>\n<pre class=\"code\">\r\nuser = lulu {\r\nmember = operators\r\ncmd = show { permit ver permit ip }\r\ncmd = traceroute { permit .* }\r\ncmd = logout { permit .* }\r\n}<\/pre>\n<p>Je d\u00e9finie l&rsquo;utilisateur \u00ab\u00a0lulu\u00a0\u00bb (oui je sais j&rsquo;ai un humour imparable&#8230;), membre du groupe \u00ab\u00a0operator\u00a0\u00bb et n&rsquo;a le droit d&rsquo;executer que les commandes suivantes :<\/p>\n<p>show version<\/p>\n<p>show ip<\/p>\n<p>traceroute (vers n&rsquo;importe ou)<\/p>\n<p>logout (vaut mieux \ud83d\ude42 )<\/p>\n<p>Ne reste plus qu&rsquo;a lancer le serveur :<\/p>\n<p>\/usr\/local\/sbin\/tac_plus -C \/etc\/tac_plus.conf<\/p>\n<p>(A rajouter bien s\u00fbr dans votre \/etc\/rc.local et n&rsquo;oubliez pas non plus d&rsquo;ouvrir le port 49\/tcp dans PacketFilter si vous faites du filtrage).<\/p>\n<ul>\n<li><strong>Partie Cisco <\/strong><\/li>\n<\/ul>\n<p>Sur les routeurs et switchs :<\/p>\n<pre>aaa new-model\r\naaa authentication login default group tacacs+ enable<\/pre>\n<pre>tacacs-server host ipdupoissonquipique\r\ntacacs-server directed-request\r\ntacacs-server key macl\u00e9secr\u00e8te\r\n\r\nline vty 0 4\r\nexec-timeout 0 0\r\npassword motdepasselocal\r\nlogin authentication default<\/pre>\n<p>Sur un Pix 6.3 :<\/p>\n<pre>aaa-server TACACS+ protocol tacacs+\r\naaa-server TACACS+ max-failed-attempts 3\r\naaa-server TACACS+ deadtime 10\r\naaa-server TACACS+ (inside) host ipdupoissonquipique macl\u00e9secr\u00e8te timeout 10\r\naaa-server LOCAL protocol local\r\naaa authentication ssh console TACACS+ LOCAL<\/pre>\n<p><strong> Attention<\/strong> : N&rsquo;oubliez pas de rajouter enable (ou local) a la fin de la ligne aaa authentication, ceci afin de vous permettre de vous identifier quand le serveur TACACS+ est indisponible (enfin, c&rsquo;est vous qui voyez \ud83d\ude00 )<\/p>\n<p>Et voil\u00e0, d\u00e9sormais vous pouvez vous logguer sur vos Cisco avec le user \u00ab\u00a0charlie\u00a0\u00bb et le mot de passe associ\u00e9.<\/p>\n<p>J&rsquo;ai volontairement simplifi\u00e9 la proc\u00e9dure, il y a \u00e9norm\u00e9ment d&rsquo;options possible, d&rsquo;accounting et d&rsquo;autorisation que je vous laisse potasser tranquillement \ud83d\ude00<\/p>\n<p>Quelques documents <a href=\"http:\/\/www.gazi.edu.tr\/tacacs\/index.php?page=documents\" title=\"docs_tacacs\" target=\"_blank\">ICI<\/a><\/p>\n<p>et <a href=\"http:\/\/www.ciscopress.com\/articles\/article.asp?p=24605&amp;seqNum=5\" title=\"cisco_tac+\" target=\"_blank\">LA<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Lorsque l&rsquo;on commence \u00e0 avoir un peu de mat\u00e9riel r\u00e9seau (i.e. Cisco \ud83d\ude42 ), il est alors int\u00e9ressant de centraliser l&rsquo;authentification et l&rsquo;autorisation sur ses \u00e9quipements. Les serveurs que vous rencontrerez le plus souvent sont les Radius (bien connu des &hellip; <a href=\"http:\/\/blog.guiguiabloc.fr\/index.php\/2008\/06\/26\/serveur-dauthentification-tacacs\/\">Read More <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6,16,8],"tags":[],"_links":{"self":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/posts\/99"}],"collection":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/comments?post=99"}],"version-history":[{"count":0,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/posts\/99\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/media?parent=99"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/categories?post=99"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/tags?post=99"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}