それで、過去2時間の間、私はlocalhostを介して私のコンピュータにSSHを介して接続しようとしました。ところで「権限が拒否されました(公開鍵)」と浮かびます。
VirtualBoxでUbuntu 14 LTSを実行しています。これは私の現在の設定です。
私のもの/ホーム/ユーザー名ディレクトリには、「known_hosts」、「initialkey」、および「initialkey.pub」ファイルを含む「.ssh」フォルダがあります。私が作成した初期キーRSAを含むファイル。
また、「/etc/ssh」フォルダに「ssh_host_rsa_key」と「ssh_host_rsa_key.pub」という2つのRSAファイルがあります(このRSAキーは/ホーム/ユーザー名/.sshフォルダ)。 "sshd_config"ファイルにパスワード確認を無効にする、ルートログインを無効にするそして両方公開鍵とRSA認証を有効にする。 「AuthorizedKeysFile」の値は「/root/.ssh/authorized_keys」に設定されます。
「/root/.ssh/authorized_keys」に上記の「initialkey.pub」ファイルをコピーしました。
すべてのユーザーが少なくとも「r」権限を持つように権限を確認しました。
それでも質問は残っています。私のローカルコンピュータへのSSHの仕組みの私の理解が間違っているかもしれません。現時点では、「opensshサーバー」が私のコンピューターをサーバーに変えていると思います。SSHローカルホストコマンドを使用すると、同じシステムからサーバーにログインすることもできます。
修正する: ホームディレクトリの権限を変更して問題を解決しました。私はコマンドを使用しましたchmod 750 $HOME、問題が修正されました。ご意見ありがとうございます。
答え1
SSHはキーに対して非常に編集的です。所有者以外の人がパスに書き込むことができるディレクトリがある場合、キーは信頼されません。パス内のすべてのディレクトリの権限を確認してください。権限はまたはdrwxr-xr-x
に似ている必要がありますdrwxr-x---
。drwxrwxr-x
または、同じ権限がdrwxrwxrwx
キーを信頼できなくなります。