ฉันจะปิดใช้งานการรวม gnome-keyring ssh ได้อย่างไร


10

ฉันไม่ต้องการให้ gnome-keyring เข้าคอมมิทบางส่วนเพราะมันล็อคทั้งหน้าจอในขณะที่ขอรหัสผ่านแม้ใน KDE (แม้ว่าตอนนี้ฉันจะเปลี่ยนเป็น GNOME แล้วก็ตาม) ในขณะที่ฉันรู้สึกซาบซึ้งกับความสะดวกสบายที่ไม่ต้องใส่วลีรหัสผ่าน SSH ของฉันในแต่ละครั้งต้องกระโดดจากหน้าต่างหนึ่งไปยังอีกหน้าต่างหนึ่งเป็นการยกเลิกที่เป็นการส่วนตัว มันเป็นแค่ความสะดวกสบาย: /

ฉันพยายามgit config --global --unset credential.helperและgit config --system --unset credential.helperแต่พวกเขาดูเหมือนจะไม่มีผลกระทบ ในขณะที่ฉันกำลังใช้ GNOME ฉันไม่อยากลบ gnome-keyring มีตัวเลือกอื่นที่ฉันสามารถทำได้หรือไม่? ปัจจุบันฉันใช้งาน Ubuntu 14.10 ด้วยการทำสิ่งนี้กับ Kubuntu และ Ubuntu GNOME ขอบคุณ

อัปเดต 17 พฤศจิกายน 2557

เห็นได้ชัดว่ามีผลกระทบต่อ SSH ทั้งหมด ฉันพยายามทำ

sudo rm /etc/xdg/autostart/gnome-keyring-ssh.desktop

แต่นั่นไม่ได้ผล ที่ฉันสามารถทำได้

gnome-keyring-daemon --replace -c pkcs11,secrets,gpg

แต่ละครั้ง แต่ฉันต้องการเก็บถาวร ยังคงตามหา...


คำถามและคำตอบที่เกี่ยวข้องว่าเหตุใดพวงกุญแจ GNOME ถึงขัน: askubuntu.com/q/564821/88802
gertvdijk

คำตอบ:


10

เพียงคัดลอก.desktopไฟล์ที่เกี่ยวข้องจาก/etc/xdg/autostartไปยัง~/.config/autostartและเพิ่มลงHidden=trueใน:

(cat /etc/xdg/autostart/gnome-keyring-ssh.desktop; echo Hidden=true) > ~/.config/autostart/gnome-keyring-ssh.desktop

จากนั้นโหลด gnome-shell อีกครั้ง (กดAlt+ F2จากนั้นพิมพ์rและกดEnter)

นี่เป็นโซลูชันที่ใช้งานง่ายเพียงตัวเดียวที่ได้ผลสำหรับฉัน (เช่นไม่ต้องsoftlinkไฟล์ . desktopเป็น/ dev / nullหรือchmod 0the gnome-keyring-daemon) ในความเป็นจริงการเชื่อมโยง soft / to / nullหยุดทำงานให้ฉันใน GNOME 3.16

เครดิตไปที่ NUS


5
ดูเหมือนว่าสิ่งนี้จะไม่ทำงานใน 16.04 อีกต่อไป ทำไมมันถึงดูเหมือนว่าในทุก ๆ Ubuntu มีวิธีการใหม่ในการเริ่มต้นสิ่งใหม่ ๆ ? เกิดอะไรขึ้นกับ Xsession เก่าที่ดี? :(
Phil

มีคนโปรดตรวจสอบสำหรับรุ่น Ubuntu / Debian / GNOME ที่ใหม่กว่า
George Sovetov

ใน Ubuntu 17.10 (GNOME Wayland) ไม่สามารถรีสตาร์ท GNOME ได้อีกต่อไป ดูsuperuser.com/q/1164174/174311 ใช้gnome-keyring-daemon -r -c pkcs11,secretsเพื่อปิดการใช้งานในเซสชันปัจจุบัน
George Sovetov

มันยังใช้งานได้กับ Debian 9 (ยืด)
Marc Wrobel

2

วิธีที่ดีและสะอาดในการปิดใช้งานเฉพาะองค์ประกอบ ssh-agent ของ gnome-kerying:

gconftool-2 --set --type bool /apps/gnome-keyring/daemon-components/ssh false

2
ดูเหมือนจะไม่ได้ผลอย่างน้อยก็ตอนนี้ ต้องใช้ GNOME 3.14 หรือ 3.16 หรือ gnome-keyring-daemon 3.12+ หรือไม่
andlabs

3
ใครรู้ว่าคำสั่งข้างต้นรุ่น ubuntu 16.04 คืออะไร?
Scott Stensland

2

ฉันไม่สามารถพูดสำหรับ Ubuntu รุ่นอื่นที่ไม่ใช่ Trusty - และ GNOME เป็นเป้าหมายที่เคลื่อนไหวอย่างต่อเนื่องซึ่งคุณสามารถรับประกันได้ว่าทุกรุ่นจะแตกต่างกัน - แต่นี่คือสิ่งที่ฉันพบว่าทำงานได้อย่างน่าเชื่อถือที่สุด:

mkdir -p ~/.config/autostart
cp /etc/xdg/autostart/gnome-keyring-ssh.desktop ~/.config/autostart/
echo "X-GNOME-Autostart-enabled=false" >> ~/.config/autostart/gnome-keyring-ssh.desktop

เซสชั่นเริ่มขึ้นภายใต้ความสามัคคีอย่างน้อยและค่อนข้างอาจ GNOME3 เกินไปแปลก: มันจะเรียกใช้สคริปต์พุ่งพรวดออกมาจาก/usr/share/upstart/sessions/และจากนั้นก็วิ่งทุกรายการสก์ท็อปออโต้ภายใต้/etc/xdg/autostartและgnome-keyringและกิจกรรมอื่น ๆ อีกมากมายทั้งใน (และมันอาจจะทำงานสิ่ง ใน/usr/share/upstart/xdg/autostartด้วยฉันไม่ได้ทดสอบสิ่งนั้น)

gnome-keyring-sshรายการพุ่งพรวดจะตรวจสอบว่าX-GNOME-Autostart-enabled=falseสายทั้งในระบบหรือผู้ใช้เดสก์ทอปท้องถิ่นรายการและกลับออกมาแล้วมาตรฐานssh-agentเซสชั่นจะทำงาน ทั้งระบบgnome-keyring-sshจะเริ่มต้นจาก/etc/xdg/autostartนอกเสียจากว่าคุณจะมีรายการที่ตรงกันในการเริ่มระบบแบบอัตโนมัติในพื้นที่ของคุณซึ่งในกรณีนี้จะทำงานแทน

มันเคยเพียงพอแล้วที่จะมีenable=falseบรรทัดนั้นใน autostart ท้องถิ่น แต่บางครั้งเมื่อเร็ว ๆ นี้ (ในเดือนพฤษภาคม 2559 นานกว่าสองปีในยุค LTS ของ Trusty) พฤติกรรมนั้นเปลี่ยนไปและคุณต้องการบางสิ่งที่คล้ายกับรายการเต็มรูปแบบ ฉันยังคงตรวจสอบชุดของคีย์ที่จำเป็นและการปรับปรุงแพ็คเกจที่กระทำผิด

ทำไมคน GNOME ไม่ได้เป็นเพียงแค่พร็อกซี่ผ่านไปยังตัวแทนที่สำคัญ OpenSSH คือเดาของทุกคน คุณอาจต้องการที่จะแนะนำว่าพวกเขาใช้พฤติกรรมที่เหมาะสมมากขึ้นในรายการ Bugzillaนี้


ลิงค์นี้แปลว่าการใช้ X-GNOME-Autostart-enabled = false นั้นเลิกใช้แล้ว ไม่ว่าในกรณีใด ๆ ดูเหมือนว่าคุณสมบัติที่ซ่อนอยู่ที่อธิบายไว้ในมาตรฐานเริ่มอัตโนมัติให้ฟังก์ชันการทำงานเดียวกัน ใช้ Hidden = true gist.github.com/najamelan/b44e943145b03e018229
Nomadrc

2

ฉันจะสิ้นสุดการถอนการติดตั้ง gnome-keyring เสมอ

sudo apt-get remove gnome-keyring

ปรากฎว่าถ้าคุณใช้หลาย ๆ คีย์ (มากกว่าสาม) คุณจะไม่สามารถเข้าสู่โฮสต์ที่ จำกัด จำนวนครั้งในการพยายามที่จะสาม ... นอกจากนี้gnome-keyringชื่อคีย์ที่แตกต่างกว่าเมื่อใช้ssh-addดังนั้นฉันไม่รู้รหัสผ่านที่จะใช้ .

การถอนการติดตั้งgnome-keyringอาจทำให้สิ่งต่าง ๆ มากมายบน GNOME ฉันไม่รู้ว่าใช้ Kubuntu หรือไม่ บน Kubuntu ทั้งหมดที่หายไปนอกจากมีและpython-ubuntu-sso-clientubuntu-sso-client


1
ขออภัยสำหรับการตอบกลับปลาย. นั่นคือสิ่งที่ฉันคิดว่าฉันได้ทำเมื่อฉันมี Kubuntu (และมันใช้เวลาสักครู่ในการคิดออก) แต่ตอนนี้ฉันไม่แน่ใจ สำหรับตอนนี้ แต่เนื่องจากพวงกุญแจเป็นส่วนหนึ่งของ GNOME คุณลบที่จะลบubuntu-gnome-desktopและไม่กี่ชิ้นส่วนอื่น ๆ ที่เกี่ยวข้อง ( oneconf, python-ubuntu-sso-client, seahorse, software-centerและubuntu-sso-clientไม่นับซอฟต์แวร์ที่จะกลายเป็นผู้สมัคร autoremove เป็นผล): / ขอบคุณแม้ว่า; ฉันจะลงคะแนนเพราะจะช่วยผู้ใช้ที่ไม่ใช่ GNOME ที่บังเอิญได้รับสถานการณ์เช่นนี้
andlabs

0

ฉันยืนยันว่าสคริปต์

#!/usr/bin/python
import gnomekeyring
gnomekeyring.unlock_sync(None,"mypassword");

แก้ไขปัญหาใน 16.04, amd64 สคริปต์อาจถูกบันทึกเป็นukr.pyแล้วchmod +x ukr.pyแล้วเพิ่มเป็นโปรแกรมเริ่มต้นในukr.py gnome-session-propertiesโมดูล (เพิ่มเติม) ได้gnomekeyringรับการติดตั้งผ่านทาง

sudo apt-get install python-gnomekeyring

0

วิธีที่ง่ายที่สุดคือการแทนที่เซสชัน gnome-keyring-daemon ที่มีอยู่โดยใช้คำสั่ง:

gnome-keyring-daemon --replace --daemonize --components=pkcs11,secrets,gpg

คุณสามารถดูคำตอบแบบเต็มของฉันในหัวข้อนี้https://askubuntu.com/a/786722/556814

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