รหัสผ่าน AAA / TACACS + บนสวิตช์ของ Cisco จะล้มเหลวเสมอในการขอรหัสผ่านครั้งที่สอง


9

เมื่อใดก็ตามที่ลงชื่อเข้าใช้อุปกรณ์เครือข่ายโดยใช้ AAA / TACACS + หากฉันระบุรหัสผ่านหลังจากรหัสผ่านชื่อผู้ใช้การตั้งค่ารหัสผ่านที่สองจะล้มเหลวเสมอแม้ว่ารหัสผ่านจะถูกต้อง ฉันต้องรอการแจ้งชื่อผู้ใช้อีกครั้งและต้องได้รับรหัสผ่านที่ถูกต้องในการแจ้งรหัสผ่านครั้งแรกทันทีหลังจากนั้น กล่าวอีกนัยหนึ่งเมื่อใดก็ตามที่ฉันเห็นพรอมต์รหัสผ่านที่สองมันจะไม่ทำงาน

ดูการโต้ตอบที่ถูกสุขอนามัยและการกำหนดค่าด้านล่าง

การยืนยันการเข้าถึงของผู้ใช้
ชื่อผู้ใช้: ชื่อผู้ใช้
รหัสผ่าน:

รหัสผ่าน: (ล้มเหลวเสมอที่นี่)
% ปฏิเสธการเข้าใช้

การยืนยันการเข้าถึงของผู้ใช้
ชื่อผู้ใช้: ชื่อผู้ใช้
รหัสผ่าน:

เชื่อมต่อกับ s-site-rack-agg2.example.net ที่บรรทัด 1 (ชื่อไซต์)
S-เว็บไซต์ชั้น agg2 #

สิ่งที่อาจแตกต่างกับรหัสผ่านที่สองนั้นแจ้งให้บัญชีสำหรับพฤติกรรมนี้

AAA ทั่วไปและการกำหนดค่าที่เกี่ยวข้องที่ฉันมีคือ:

aaa โมเดลใหม่
aaa รับรองความถูกต้องเริ่มต้นเข้าสู่ระบบกลุ่ม tacacs + สายท้องถิ่น
aaa รับรองความถูกต้องเข้าสู่ระบบ CONSOLE ไม่มี
การรับรองความถูกต้อง aaa เปิดใช้งานกลุ่มเริ่มต้น tacac +
การอนุมัติ aaa ผู้บริหารกลุ่มเริ่มต้น tacacs + ท้องถิ่นหากผ่านการตรวจสอบแล้ว
คำสั่งการอนุญาต aaa 1 กลุ่มเริ่มต้น tacacs + ท้องถิ่นหากผ่านการตรวจสอบแล้ว
คำสั่งอนุญาต aaa 7 กลุ่มเริ่มต้น tacacs + ท้องถิ่นถ้าผ่านการตรวจสอบ
คำสั่งอนุญาต aaa 15 กลุ่มเริ่มต้น tacacs + ท้องถิ่นถ้าผ่านการตรวจสอบ
บัญชี aaa ผู้บริหารกลุ่มเริ่มต้น tacac +
การบัญชี aaa คำสั่ง 0 กลุ่มเริ่มต้นเริ่มต้นแบบครบวงจร tacac +
คำสั่งการบัญชี aaa 1 กลุ่ม start-stop เริ่มต้น tacacs +
การบัญชี aaa คำสั่ง 7 กลุ่มการเริ่มต้นหยุดแบบดีฟอลต์ tacacs +
การบัญชี aaa คำสั่งเริ่มต้นกลุ่มการเริ่มต้นหยุด 15 tacac +
ระบบบัญชี aaa เริ่มต้นเริ่มต้นระบบกลุ่ม tacacs +
!
ip tacacs อินเตอร์เฟสแหล่งที่มา Loopback0
tacacs-server host -prmiaryipremoved- การเชื่อมต่อเดี่ยว
tacacs-server host -secondaryipremoved- การเชื่อมต่อเดี่ยว
การหมดเวลาของเซิร์ฟเวอร์ tacacs 10
ร้องขอเซิร์ฟเวอร์ tacacs
tacacs-key server 7 -removed-
!
บรรทัดที่ 0
 การตรวจสอบการเข้าสู่ระบบ CONSOLE
บรรทัด vty 0 4
 สถานที่ -removed-
 exec-timeout 60 0
 รหัสผ่าน 7 -removed-
 การขนส่งอินพุต telnet ssh

ไม่เคยไปถึงจุดต่ำสุดของเรื่องนี้เนื่องจากรหัสผ่านที่ล้มเหลวใช้เวลาหมดเวลาสำหรับ TACACS เพื่อตอบกลับดังนั้นข้อความแจ้งข้อที่สองมาจากlineรหัสผ่าน รหัสผ่านที่ถูกต้องจะได้รับการตอบกลับจาก TACACS ทันที ย้ายไปยังเซิร์ฟเวอร์ ACS ที่ใหม่กว่าแก้ปัญหาได้แล้วการกำหนดค่าเดียวกันดังนั้นดูเหมือนว่าเป็นปัญหา ACS
generalnetworkerror

คำตอบ:


4

ฉันจะทำการดีบักบนเซิร์ฟเวอร์ TACACS + ของคุณในขณะที่คุณพยายามทำสิ่งนี้

ฉันจะสมมติว่าคุณต้องการใช้การรับรองความถูกต้อง TACACS เท่านั้นและย้อนกลับไปที่การเข้าสู่ระบบในท้องถิ่นเท่านั้นหากไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้

ลองใช้สิ่งนี้:
aaa authentication login default group tacacs+ line
aaa authentication enable default group tacacs+ enable

ดูไซต์นี้ด้วย: มีตัวอย่างและคำอธิบายที่ดี

http://my.safaribooksonline.com/book/networking/cisco-ios/0596527225/tacacsplus/i13896XXNNZZZNXXNNXXNNNXXNNKNNNXNZNZNZNNNNVNNVNNVARBYF_XT_HARTSWARTSWARTSWARTSWARTSWARTSWARTSWARTSWARTSTH http://my.safaribooksonline.com/book/networking/cisco-ios/0596527225/tacacsplus/i13896ZXXNNXXNNXXNNXXNNNXXNNKNFNNNXNNZNNNVNNVXNVARN ลูปครั้งแรก > http: //my.swkWzWNXXNNXXNNNXXNNVNXXNNVNVNVNTAV4TA>>>

ฉันเดาว่าเนื่องจากคุณมีคำหลัก "ท้องถิ่น" ใน:
aaa authentication login default group tacacs+ local line

การรับรองความถูกต้อง TACACS + ส่งคืนความล้มเหลวดังนั้นเราเตอร์พยายามทำการตรวจสอบภายใน ฉันเดาว่าคุณควรให้การline vtyกำหนดค่าที่ถูกสุขลักษณะแก่เรา ถ้าคุณมี
line vty 0 15
login local

จากนั้นจะทำการรับรองความถูกต้องชื่อผู้ใช้ / รหัสผ่านมิฉะนั้นมันทำรหัสผ่าน


เพิ่มการปรับแต่งค่า sanitized lineให้เป็น Q.
generalnetworkerror

จากการตรวจแก้จุดบกพร่องสั้น ๆ ดูเหมือนว่า ACS จะไม่กลับมาเร็วพอสำหรับรหัสผ่านที่ไม่ดีเนื่องจากเงื่อนไขนั้นเป็นครั้งเดียวที่ฉันเห็นการหมดเวลากับเซิร์ฟเวอร์ TACACS ที่รายงาน เวลาอื่นทั้งหมดไม่มีศูนย์หมดเวลา
Generalnetworkerror

4

ฉันคิดว่าการกำหนดค่าของคุณค่อนข้างอันตรายและดูเหมือนว่าไม่แน่ใจว่าคุณกำลังใช้ 'เปิดใช้งาน / สาย' หรือ 'ท้องถิ่น' เป็นทางเลือกคำตอบที่ถูกต้องคือท้องถิ่นไม่ใช้ 'เปิดใช้งาน' และโดยเฉพาะอย่างยิ่งไม่เคย 'บรรทัด' สำหรับสิ่งใด ๆ วิธี 'เข้ารหัส' ไม่ได้ถูกแฮชแบบทางเดียว)

ฉันอยากจะแนะนำการกำหนดค่านี้แทน:

aaa new-model
! uses tacacs, fallsback to local user if tacacs not working
aaa authentication login default group tacacs+ local
! user gets enabled by tacacs or by enable password
aaa authentication enable default group tacacs+ enable
! console user is authorized as well (gets enabled, if such permission)
aaa authorization console
! configuration commands are authorized as well as exec commands (Good to prevent dangerous commands)
aaa authorization config-commands
! user privilege level is recovered from tacacs or from local account
aaa authorization exec default group tacacs+ local
! level 15 commands are authorized (you really only need this) 
aaa authorization commands 15 default group tacacs+ if-authenticated 
! level 1, 15 commands are logged (you really only need these two)
aaa accounting commands 1 default start-stop group tacacs+
aaa accounting commands 15 default start-stop group tacacs+
!
! fallback user consulted only when tacacs is broken
username sikrit privilege 15 secret <password>

ผู้ใช้ 'sikrit' จะต้องใช้เมื่อ tacac ไม่ทำงาน (ไม่สามารถใช้งานได้หากคำตอบของ TACACS) ไม่จำเป็นต้องใช้รหัสผ่าน 'line' ภายใต้ VTY เนื่องจากไม่เคยปรึกษา ไม่จำเป็นต้องใช้รหัสผ่าน 'เปิดใช้' เนื่องจากไม่เคยปรึกษา หากคุณต้องการผู้ใช้สำรองข้อมูลที่ไม่ได้เปิดใช้งานให้สร้างอีกบัญชีหนึ่งด้วย 'สิทธิ์ 1'
อย่างไรก็ตามฉันเพิ่มการสนับสนุนสำหรับ 'เปิดใช้งาน' หากคุณต้องการใช้ด้วยเหตุผลบางประการ

หากคุณใช้ OOB และการเข้าถึง OOB มีความปลอดภัย / รับรองความถูกต้องแล้วคุณอาจต้องการอนุญาตให้ผู้ใช้ OOB ใช้การพิสูจน์ตัวตนในพื้นที่เสมอในกรณีที่ TACACS ใช้งานไม่ได้ แต่ IOS ผิดพลาดคิดว่าไม่ใช่คุณจะเพิ่มสิ่งนี้ :

aaa authentication login CONSOLE local
!
line con 0
 login authentication CONSOLE

แนวคิดเกี่ยวกับการaaa authentication login default group tacacs+ local lineใช้รหัสผ่านบรรทัดเป็น catchall หากเทมเพลต AAA ถูกปรับใช้บนอุปกรณ์ที่ TACACS เสียและไม่มีการกำหนดผู้ใช้ภายใน และจริง ๆ แล้วฉันมีaaa authentication login CONSOLE noneในการกำหนดค่าของฉันที่ฉันไม่ได้แสดง (ใช่ฉันมักจะเชื่อถือการเข้าถึงคอนโซลทางกายภาพกับอุปกรณ์มากกว่าที่ควรจะเป็น)
generalnetworkerror

จริง ๆ แล้วฉันไม่สามารถทำซ้ำในห้องปฏิบัติการปัญหาที่คุณเห็น หากคุณไม่ได้กำหนดค่ารหัสผ่าน 'ท้องถิ่น' ไว้และ IOS คิดว่า TACACS นั้นไม่สามารถเข้าถึงได้มันก็สมเหตุสมผลที่จะถามรหัสผ่าน 'บรรทัด' แต่สำหรับฉันแล้วสำหรับ TACACS ที่เข้าถึงได้มันไม่ถอยกลับไปที่ 'สาย' อาจมีข้อผิดพลาดใน IOS หรือใน TACACS ซึ่งทำให้การตรวจสอบสิทธิ์ล้มเหลวดูเหมือนว่าการเชื่อมต่อ TACACS ล้มเหลว (อาจคุ้มค่าที่จะลองโดยไม่ต้องใช้ 'การเชื่อมต่อเดี่ยว')
ytti

ไม่ใช้รหัสผ่านที่สองพร้อมรับคำโดยไม่ต้องมีชื่อผู้ใช้ที่สอดคล้องกันสองพร้อมรับคำบอกเราแน่นอนว่ามันล้มเหลวกับlineรหัสผ่านในระบบโดยไม่ต้องผู้ใช้ในประเทศใด ๆ ที่สร้างขึ้นเพื่อlocalรับรองความถูกต้อง? [ aaa authentication login default group tacacs+ local line.] tacacs + ล้มเหลวโลคัลข้ามเป็นไม่มีผู้ใช้โลคัลดังนั้นแล้วรหัสผ่านบรรทัด?
generalnetworkerror

ฉันไม่คิดว่ามันควรย้อนกลับไปที่ tacacs + auth_failure แต่ควรทำเฉพาะสำหรับ tacacs + ที่หายไปเท่านั้น ดังนั้นฉันจึงทำการวิจัยเกี่ยวกับตัวเลือกต่างๆว่าทำไม IOS ถึงคิดว่า tacac + ไม่ตอบสนอง (ฉันคิดว่ามันกำลังตอบสนอง) บางทีสิ่งหนึ่งที่ควรลองคือ tacacs config ที่แตกต่างกัน (เช่นลบการเชื่อมต่อเดียว) หากเป็นข้อบกพร่องของ IOS มันอาจลบทริกเกอร์ข้อผิดพลาด
ytti

คุณอาจจะไม่ได้เห็นความคิดเห็นของฉันในคำตอบเกี่ยวกับการแก้ปัญหาการแสดงให้เห็นว่า TACACS + คือการ> 30s ที่จะตอบสนองต่ออีกเพียงเมื่อรหัสผ่านไม่ถูกต้อง; ภายในเวลานั้นระบบจะพิจารณาการตอบกลับเซิร์ฟเวอร์ tacacs ที่หายไปและย้ายไปยังรายการถัดไปในการรับรองความถูกต้อง เมื่อรหัสผ่านถูกต้องการตอบสนอง tacac เป็นทันที
Generalnetworkerror

4

ฉันไม่แน่ใจว่าการกำหนดค่าอุปกรณ์ในพื้นที่ของคุณจะตำหนิสำหรับสิ่งนี้ แต่แทนที่จะเป็นเซิร์ฟเวอร์ TACACS ของคุณเอง TACACS แสดงพรอมต์ชื่อผู้ใช้ / รหัสผ่านจากเซิร์ฟเวอร์ TACACS (และอาจเป็นที่เก็บข้อมูลภายนอก) ไปยังอุปกรณ์ดังนั้นหากคุณใช้ ACS (ตัวอย่าง) และตั้งค่าให้พูดคุยกับ AD เพื่อทำการตรวจสอบผู้ใช้คุณต้อง ให้คิดถึงชื่อผู้ใช้ / รหัสผ่านที่แจ้งว่ามาจากตัวควบคุมโดเมนแทนที่จะเป็นอุปกรณ์

ฉันเพิ่งพบปัญหาเช่นนี้ซึ่งแก้ไขโดย patch ไปยัง ACS - อีกครั้งฉันสมมติว่าคุณกำลังใช้ ACS และดึงมันออกมาจาก AD สำหรับการตรวจสอบผู้ใช้ / การตรวจสอบกลุ่มผู้ใช้ ฯลฯ Cisco bug ID คือ CSCtz03211 และโดยทั่วไป ACS 5.3 กำลังพยายามส่ง ADH หลายครั้งต่อหนึ่งชื่อผู้ใช้ / รหัสผ่านหนึ่งครั้ง สิ่งนี้จะส่งผลให้เกิดพฤติกรรมที่หากผู้ใช้ป้อนรหัสผ่านในครั้งแรกจำนวนผู้ใช้ / รหัสผ่านที่ผิดพลาดหลายครั้งถูกส่งไปยัง AD และบัญชีของผู้ใช้นั้นถูกล็อคเอาไว้จริง ๆ อุปกรณ์แม้ว่าผู้ใช้พิมพ์ชื่อผู้ใช้ / รหัสผ่านอย่างถูกต้องในการลองครั้งที่สอง (พฤติกรรมนี้แน่นอนแตกต่างกันไปตามเกณฑ์การล็อคที่คุณตั้งไว้ในบัญชีผู้ใช้ภายใน AD)

สิ่งที่ควรพิจารณา (โดยปราศจากความรู้เกี่ยวกับการปรับใช้เซิร์ฟเวอร์ TACACS ของคุณ)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.