ssh “Kötü sahibi veya izinleri ~ / .ssh / config” ile döndürür


366

Başka bir kutuya ssh göndermeye çalıştığımda bu garip hatayı alıyorum

$ ssh hostname
Bad owner or permissions on ~/.ssh/config

Ancak dosyada sahip olduğumdan ve izinlere sahip olduğumdan emin oldum:

ls -la ~/.ssh/
total 40K
drwx------ 2 robert robert 4.0K Mar 29 11:04 ./
drwx------ 7 robert robert 4.0K Mar 29 11:04 ../
-rw-r--r-- 1 robert robert 2.0K Mar 17 20:47 authorized_keys
-rw-rw-r-- 1 robert robert   31 Mar 29 11:04 config
-rw------- 1 robert robert 1.7K Aug  4  2010 id_rsa
-rw-r--r-- 1 robert robert  406 Aug  4  2010 id_rsa.pub
-rw-r--r-- 1 robert robert 6.1K Mar 29 11:03 known_hosts

Ben de aynı mesajı aldım. Benim durumum farklıydı. Global bir IdentityFile ~/.ssh/id_rsaset kuruyordum, bu yüzden user@myserver.com adresine erişmeye çalışırken bu şifreyi sormadan bana id_rsa kullanmaya çalışıyordu. Global IdentityFile'dan sakının, her şey yoluna girecek.
giovannipds

Yanıtlar:


569

Config üzerinde sadece kullanıcı izinleri için rw'ye ihtiyacım vardı. Bu düzeltti.

chmod 600 ~/.ssh/config

Diğerlerinin de belirttiği gibi, dosya sahibi olabilir. (onları oyla!)

chown $USER ~/.ssh/config

22
Bazen sadece izinler değil, aynı zamanda soruna neden olabilecek sahibi de olur; benim durumumda da bunu yapmak zorunda kaldım:chown -R robert:robert ~/.ssh
Nicolas C

3
Benim durumumda 644'ten 600'e gitmek numarayı yaptı.
Magicsowon

2
Sadece okuma izni yeterli olmalı, yani400
030

1
Benim 600için işe yaramadı, sadece 400(Ubuntu Xenial'da)
Martín Coll

@ 030 Dosyayı düzenleme niyetinde olmadığınız sürece ..
Sean the Bean,

64

Bu komutlar izin problemini çözmelidir:

chown $USER ~/.ssh/config
chmod 644 ~/.ssh/config

sudoDosyaların farklı bir kullanıcıya ait olup olmadıklarına ilişkin önek (veya onlara erişiminiz yoksa).

Daha fazla dosya etkileniyorsa, yerini configile *.

Gelen man sshbiz okuyabilir:

Kötüye kullanım potansiyeli nedeniyle, bu dosyanın katı izinleri olmalıdır: kullanıcı için okuma / yazma ve başkaları tarafından yazılamaz. Söz konusu grubun yalnızca kullanıcıyı içermesi koşuluyla, grup olarak yazılabilir.


3
Bu benim için hile yaptı. Ben kullanıyorum cygwin ve cygwin .ssh, windows kullanıcısına .ssh ile bağlanıyor. Bu komutları cygwin penceresinde çalıştırmak zorunda kaldım.
Damodar Bashyal

Bu benim için çalıştı.
Viraj.Hadoop

12

Benim için kullanıcı hesabımın dosyanın sahibi olmaması bir sorun oldu

sudo chown myuser ~/.ssh/config

2

WSL'de (Linux için Windows Alt Sistemi) varsayılan olarak chmod'un hiçbir etkisi yoktur. chmodDiğer cevaplarda belirtilen dosyaları açabilmeniz için önce eklemelisiniz.

[automount]
options = "metadata"

senin için /etc/wsl.confdaha sonra wsl yeniden (17093 veya daha sonra inşa gerektirir).

Mount demeden önce:

C: on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000,case=off)

Mount'dan sonra diyor ki:

C: on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000,metadata,case=off)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.