私はubuntu上でssh-copy-idを設定しようとしていますが、これに関するセカンドオピニオンが必要です、これは欠落している.pubパスまたはsshの間違った設定です
sammy@samuel-pc:~$ cat ~/.ssh/id_rsa.pub
cat: /home/sammy/.ssh/id_rsa.pub: Permission denied
sammy@samuel-pc:~$ ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: ERROR: failed to open ID file '/home/sammy/.pub': No such file
(to install the contents of '/home/sammy/.pub' anyway, look at the -f option)
sammy@samuel-pc:~$ cd .ssh
-bash: cd: .ssh: Permission denied
sammy@samuel-pc:~$ Sudo ls -l ~/.ssh/id_rsa.pub
[Sudo] password for sammy:
-rwxr-xr-x 1 sammy sammy 397 Jul 12 20:25 /home/sammy/.ssh/id_rsa.pub
また、コンピューターからsshingを試みましたが、認証が壊れていたため、修正しようとしましたが失敗しました
samuel@samuel-pc:~$ ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:
sh: 1: cannot create .ssh/authorized_keys: Permission denied
Sudo ls -lsa ~/.ssh
の結果
sammy@samuel-pc:~$ Sudo ls -lsa ~/.ssh
[Sudo] password for sammy:
Sorry, try again.
[Sudo] password for sammy:
total 28
4 drw-rw-rw- 2 sammy sammy 4096 Jul 13 21:25 .
4 drwxr-xr-x 9 sammy sammy 4096 Jul 19 23:55 ..
4 -rwxr-xr-x 1 sammy sammy 790 Jul 13 21:35 authorized_keys
4 -rwxr-xr-x 1 sammy sammy 1675 Jul 12 20:25 id_rsa
4 -rwxr-xr-x 1 sammy sammy 397 Jul 12 20:25 id_rsa.pub
4 -rwxr-xr-x 1 sammy sammy 1024 Jul 13 12:48 .id_rsa.pub.swp
4 -rwxr-xr-x 1 sammy sammy 222 Jul 12 20:21 known_hosts
ls -ld ~/.ssh
の結果
sammy@samuel-pc:~$ ls -ld ~/.ssh
drw-rw-rw- 2 sammy sammy 4096 Jul 13 21:25 /home/sammy/.ssh
サーバーでsshの正しいアクセスを取得するにはどうすればよいですか?
次のコマンドは、~/.ssh
フォルダーのアクセス許可の問題を修正する必要があります
chmod 700 ~/.ssh
次のコマンドは、~/.ssh
フォルダー内のファイルの正しい許可を設定します
chmod 400 ~/.ssh/*
~/.ssh
フォルダー内のファイルには、所有者読み取り専用権限が必要ですchmod 400
owner read-onlyパーミッションを設定します~/.ssh
フォルダー/ファイルのアクセス許可を修正した後、ssh-copy-id
コマンドを再度実行してみてください。
ssh-copy-id
を使用するには、ssh(id_rsa)キーファイルを生成する必要があります。私の場合、誤ってSudo
でキーを生成した結果、id_rsa
ではなくid_rsa.pub
の下に/root/.ssh/
および/home/user/.ssh/
ファイルが生成されました。そのため、ssh-copy-id someuser@somehost
を達成しようとしています。
/usr/bin/ssh-copy-id: ERROR: failed to open ID file '/home/user/.pub': No such file
(to install the contents of '/home/user/.pub' anyway, look at the -f option)
誘惑は-f
オプションを使用することですが、実際の解決策は単純です:Sudoなしでssh秘密鍵を生成するだけです:
ssh-keygen -t rsa
通常、以下の~/.ssh/
ファイルコンテンツが機能するはずです。
user@ubuntu:~$ ll .ssh/
total 28
drwx------ 2 user group 4096 Dec 30 16:17 ./
drwxr-xr-x 15 user group 4096 Dec 30 16:17 ../
-rw------- 1 user group 1773 Dec 30 17:23 authorized_keys
-rw------- 1 user group 1679 Jan 1 2016 id_rsa
-rw-r--r-- 1 user group 399 Jan 1 2016 id_rsa.pub
-rw-r--r-- 1 user group 2436 Dec 30 16:17 known_hosts
user@ubuntu:~$
そのため、ファイル許可のいくつかのエラーが原因で問題が発生しています。
最初:ディレクトリには実行可能なフラグがありません。これは、システムが実際に変更して、その中のファイルにアクセスできないことを意味します。これで修正されるはずです。
chmod +x ~/.ssh
その後、公開キーと秘密キーのファイルのアクセス許可を調整する必要があります。これは、ユーザーのみが読み取り可能で、他のユーザーは何も読み取れないようにする必要があります。あなたが達成するもの:
chmod 400 ~/.ssh/*
これで問題が解決するはずです。時々sshは本当にうるさく、あなたの/home/user
がグループ/他者によってまだ書き込み可能である場合、まだエラーを引き起こす可能性があります。そのため、安全のために、グループや他の人の書き込み許可をホームから削除してください。
chmod go-w ~/
これで問題が解決するはずです。