एक अलग एक में प्रमाणित करने के बाद सूडो खिड़की में पासवर्ड क्यों पूछते हैं?


10

अगर मैं xterm, सूक्ति-टर्मिनल आदि में कमांड लाइन का उपयोग कर रहा हूं, तो मैं sudoकुछ सीमाओं के भीतर, पासवर्ड के लिए फिर से संकेत दे सकता हूं, या मैं इसे अक्षम कर सकता हूं।

प्रयोज्यता और सुरक्षा के बीच एक समझौता के रूप में, मैं आमतौर पर बस इस पुन: क्वेरी की प्रतीक्षा-अवधि को लंबा करना चाहता हूं।

डिफ़ॉल्ट रूप से, फिर से इसके लिए संकेत देने से पहले एक sudo पासवर्ड दर्ज करने के बाद केवल 15 मिनट का ग्रेस-पीरियड होता है। इसे 45 मिनट में बदलने के लिए, मैं /etc/sudoersटाइमस्टैम्प_ टाइमआउट को उस प्रतीक्षा अवधि तक संपादित कर सकता हूं , जिसे मैं चाहता हूं (मिनटों में)।

sudoers फ़ाइल

यदि मैं एक ही टर्मिनल सत्र के भीतर हूं, और एक नया शेल शुरू (टाइप कर रहा हूं ) cshया bashतो प्रतीक्षा अवधि का सम्मान किया जाता है।

लेकिन अगर मैं वहां कमांड लाइन का उपयोग करने के लिए दूसरी विंडो पर जाता हूं, तो यदि मैं कोशिश करता हूं तो यह तुरंत मेरा पासवर्ड मांगेगा sudo

एक ही स्यूडोटर्मिनल सत्र के भीतर ( pts) (उदाहरण के लिए, यदि मैं एक ही गनोम-टर्मिनल विंडो के अंदर एक नया शेल स्पॉन करता हूं), तो टाइमआउट का सम्मान किया जाता है।

यदि मैं एक नया xterm, सूक्ति-टर्मिनल, आदि लॉन्च करता हूं, तो मुझे फिर से क्रेडेंशियल दर्ज करना होगा।

मेरे होम सिस्टम (एकल-उपयोगकर्ता प्रणाली), आदि पर एकमात्र उपयोगकर्ता सक्रिय होने के बावजूद, sudo को भरोसा नहीं है कि मेरी सभी ptsप्रविष्टियाँ एक ही उपयोगकर्ता से हैं:

~/pseudoland$ w
 01:27:39 up 1 day, 15:03,  7 users,  load average: 0.32, 0.71, 0.77
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
jgb    tty1                      23:56    1:30m  0.55s  0.51s -bash
jgb    tty7     :0               Tue10   39:03m  2:28m  0.76s gnome-session
root     pts/1    :0.0             00:30   56:23   0.01s  0.01s /bin/bash
jgb    pts/3    :0.0             01:16    0.00s  0.59s  3.22s gnome-terminal
jgb    pts/4    :0.0             01:27   26.00s  0.23s  0.23s /bin/bash
jgb    pts/5    :0.0             01:17    9:26   0.23s  0.23s bash

क्या सूडो को यह बताने का कोई तरीका है कि इसे उन सभी खिड़कियों के बारे में सोचना चाहिए जिन्हें मैं एक ही उपयोगकर्ता से आता हूं, और अगर पिछले sudo टाइमर की समय सीमा समाप्त नहीं हुई है तो अपने पासवर्ड के लिए फिर से पूछें?

जवाबों:


12

ग्रेस पीरियड को sudo'टिकट' के नाम से जाना जाता है। जब आप sudo के साथ प्रमाणित करते हैं, तो यह इस टिकट को एक निश्चित टाइमस्टैम्प के साथ बनाता है जो मूल रूप से कहता है कि प्रमाणीकरण कब समाप्त होना चाहिए।

डिफ़ॉल्ट रूप से (यह तब सेट किया जाता है जब पैकेज संकलित किया जाता है), यह टाइमआउट है, जैसा कि आपने पाया है, प्रति ट्टी । यह sudo की एक विशेषता है जिसे 'tty_ticket' कहा जाता है। मूल रूप से इसका मतलब यह है कि, प्रति उपयोगकर्ता एक लॉक बनाने के बजाय, sudo एक लॉक प्रति tty बनाता है।

पुराने व्यवहार पर वापस लौटने के लिए और डिफ़ॉल्ट को ओवरराइड करने के लिए, आपको संपादित करने की आवश्यकता है /etc/sudoers। " Defaults" लाइन ढूंढें , जिसे आपने पहले ही टाइमआउट बदलने के लिए संपादित किया था, और ,!tty_ticketsइसे संलग्न करें। यह tty_ticket सुविधा को बंद कर देगा और आपको वह व्यवहार देगा जो आप चाहते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.