• 締切済み
  • すぐに回答を!

SFTPをパスフレーズなしで認証できない

仕事で急きょWindowsServer2008にSFTPサーバを構築し、Linuxサーバから公開鍵認証(パスフレーズなし)で接続しなければいけなくなりました。 copSSHでSFTPサーバの構築は完了し、WinSCPでは鍵認証まで確認できたのですが、Linuxサーバからパスフレーズなしでの公開会議認証がうまくできません。 いろいろなサイトを参考に試しているのですがうまくいきません・・・。 急ぎと言うこともあり非常に困っています。 以下は自分でやった内容メモです。 どなたかお分かりの方がいらっしゃいましたらご教授お願い致します。 ▼作業メモ 1)WIndowsServer2008(サーバ側)にcopSSHをインストール 2)C:\Program Files (x86)\ICW\etc\sshd_configの設定変更 RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys TCPKeepAlive yes を有効にする RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys を有効にする(yes/noも上記のとおり変更) PasswordAuthentication no PermitEmptyPasswords yes ChallengeResponseAuthentication no を有効にする(yes/noも上記のとおり変更) 3)Linuxサーバ(クライアント側)で鍵作成 ※パスフレーズなしで作成  $ cd ~/.ssh/  $ ssh-keygen -t dsa 4)サーバ側で、公開鍵を/home/.ssh/authorized_keysとしてコピー 5)クライアント側で、SFTPコマンドを実行  →しかし、下記のとおり失敗。  $sftp -oPort=10022 -oIdentityFile=/home/work/id_dsa sftpUser@192.168.xxx.xxx  Connecting to 192.168.xxx.xxx...   Connection closed

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数1062
  • ありがとう数1

みんなの回答

  • 回答No.1
  • memphis
  • ベストアンサー率40% (972/2391)

大まかな流れは、その手順であっています。 それができないとなると何処かに間違いがあるので ログなどを残すようにして、そこから調べるのがいいと思います。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

お礼が遅れて申し訳ありませんでした。 その後、別環境で試したところ、鍵認証は行うことができたのですが、 ご質問した環境では現在も相変わらずうまくいきません。 あまり時間をかけられない状況と言うこともあり、別環境で作業を進めることとしました。 ご回答ありがとうございました。

関連するQ&A

  • sftpのパスワードなしでログイン

    sftpのパスワードなしで自動化をしたいと考えています。 シェル内で他の処理をして、その後sftpで他のサーバーへコピー(put)します。 シェル内にsftpの起動する内容を記載するのですが、どうしてもパスワードを聞かれてしまいます。 調べてみるとSSH公開鍵認証を使用してパスワードなしのログインが出来るとありました。 試してみたのですが、どうしてもうまくログインできません。 原因と対応策を教えて頂けませんでしょうか。 OS:AIX5.3 おこなった作業は以下です。 サーバー側(ファイルを受ける側) 1、ユーザーのホームディレクトリ上でssh-keygen -t rsa を実行 2、.sshにid_rsa、id_rsa.pubができるので、id_rsa.pubをauthorized_keysへ変更する。 3、authorized_keysをクライアントに送る。 4、id_rsa、authorized_keysのアクセス権を600にする。 5、sshd.confgを編集 <編集箇所> RSAAuthentication yes   →コメントアウト PubkeyAuthentication yes  →コメントアウト AuthorizedKeyFile .ssh/authorized_keys  →コメントアウト PasswordAuthentication no →コメントアウト、yesをnoに変更 PermitEmptyPasswords yes →コメントアウト、noをyesに変更 ChallengeResponseAuthentication no →コメントアウト、yesをnoに変更 6、保存してsshdを再起動 クライアント側(ファイルを送る側) 1、ホームディレクトリの.sshにauthorized_keysを配置する。 2、authorized_keysのアクセス権を600にする。 3、sshdを再起動 以上の作業の後にクライアントからsftpでログインしようとすると、 以下のメッセージが出てしまいます。 sshも同様です。 (ログインしてホームディレクトリにいるとします) $ sftp -i ./ssh/authorized_keys ユーザー名@ホスト名 Enter passphrase for key '.ssh/authorized_keys': Permission denied (publickey). Connection closed $ ssh -i .ssh/authorized_keys ユーザー名@ホスト名 Enter passphrase for key '.ssh/authorized_keys': Permission denied (publickey).

  • sftp時の公開鍵認証

    windowsサーバにSFTPサーバを構築し、公開鍵での認証をかけ、SFTPでファイルやり取りを行いたいのですが、 ファイルやり取りはできるのですが、公開鍵での認証がうまくいきません。 色々なサイトを調べながら以下手順で構築していったのですが、 公開鍵、秘密鍵での認証がうまくいってないように見えます。 なんでもいいので、何か分かる方いましたらご教授お願いします。 ※クライアントPC、サーバともにwindows ◆秘密鍵、公開鍵ファイルの作成(クライアントPC) 1.クライアントPCにSFTP接続ソフト「WinSCP」をインストール 2.「WinSCP」の補助ツール「PuTTYgen」により、秘密鍵ファイル、公開鍵ファイルを作成 3.作成した公開鍵ファイルをサーバへコピー ◆SFTPサーバ構築、公開鍵認証設定(サーバ) 4.サーバにSFTP環境構築ソフト「freeFTPd」をインストール 5.SFTPの接続先(アドレス、ポート22)を設定 6.ユーザー(ID、パスワード)を作成。そのユーザーのSFTP時ホームディレクトリを設定 7.SFTPのサービスを開始 8.6で設定したホームディレクトリの直下に「.ssh」ディレクトリ作成 9.「.ssh」ディレクトリの直下に「authorized_keys」ファイルを作成 10.3でコピーした公開鍵ファイルの中身を、「authorized_keys」ファイルに追加(テキストベースでのコピペ) ◆サーバへのSFTP接続(クライアントPC) 11.クライアントPCで「WinSCP」を起動。SFTPサーバのIP、6で設定したユーザーのID、2で作成した秘密鍵を設定しログイン 12.「Further authentication required Authenticating with public key "dsa-key-20140512" Access denied.」 と表示され、ログインできない 13.秘密鍵を使わず6で設定したユーザーIDとパスワードであれば、ログイン可能。SFTPサーバとのファイルのやり取りも可能 また、「.ssh」ディレクトリと「authorized_keys」ファイルに書き込み権限があるユーザーの場合に、認証が失敗するという情報があったので、 クライアントPCに書き込み権限を持っていないユーザーでログインし、WinSCPを起動してアクセスしてみたのですが、同じ結果でした。

  • DSA認証でパスワードを聞かれてしまう・・

    ssh の公開鍵認証がうまく行きません。 つぎのようにやりました。 #ssh-keygen -t dsa #scp /home/hoge/.ssh/id_dsa.pub hoge@remotehost:/home/hoge/ #ssh hoge@remotehost hoge@remotehost's password:  ←パスフレーズを入力します #cat id_dsa.pub >> /home/hoge/.ssh/authorized_keys このあと、 ●.ssh のモードを 700 ●authorized_keys のモードを 600 に設定します。 こうすると、次のログインでは、 だいたいのホストでは、パスフレーズ入力だけになって、 パスワードは聞かれません。 しかし、ホストによっては、 パスフレーズ入力+パスワード入力が必要になります。 なぜでしょうか? うまく行っていないホストは redhat です。

  • [VPS] 公開鍵認証を設定できません

    閲覧ありがとうございます さくらVPSを借契約して色々と試しているのですが 公開鍵認証の設定ができずに困っています どこが抜けて、あるいは間違えているのか教えてください VPSのOSは"ubuntu 14.04" clientのOSは"windows7"です ssh_config で設定を以下のように変更 ssh 12345 PermitRootLogin no PubkeyAuthentication yes UsePAM no PasswordAuthentication yes #失敗した時のために"yes"にしています .ssh ディレクトリを作成 $mkdir .ssh $chmod 700 .ssh client側でPuTTYを使い公開鍵と秘密鍵を作成 公開鍵をOpenSSHに変換し、VPSに送信 公開鍵を登録、パーミッションの変更 $cat xxx.pub >> $HOME/.ssh/authorized_keys $sudo chmod 600 authorized_keys ユーザーのパーミッションの変更 $chmod 755 /home/user ファイアーウォールは"ufw"で設定しています 変更したsshポートは許可しているので問題はないはずです 公開鍵の登録にコピペをしたいですが、できないため回りくどい方法になっています 何をしても設定ができないようであれば、長いPWを設定して使おうと考えていますが 大丈夫でしょうか?

  • UNIX初心者です。sftpで鍵認証を使いサーバAからサーバBにデータ

    UNIX初心者です。sftpで鍵認証を使いサーバAからサーバBにデータ転送をしたいのですが、うまくいきません。 今までやった事は 1.鍵の生成 SSHクライアントのPuttygenでDSAの鍵 sftp.pubと sftp.ppkを生成しました。 sftp.ppkをサーバAの /home/user_a/.sshにアップロード sftp.pubをサーバBの /home/user_b/.sshにアップロードして %ssh-keygen -i -f sftp.pub >> ~/.ssh/authorized_keys2を実行しました。 各サーバの /.sshのパーミッション->フォルダ700 ファイル600に変更 2.sftpの実行 サーバAから %sftp -oIdentityFile=/home/user_a/.ssh/sftp user_b@server_b.hostname を実行すると普通にパスワードが求められてしまいます。 今つまづいているのは、パスワードなしで鍵認証したいが、パスワードが求められてしまう事です。どこが間違っているでしょうか? やり方を紹介しているURLなどご存知でしたら教えていただけますでしょうか。

  • 公開鍵でのログイン設定について

    さくらのVPSサーバの設定をしています。 公開鍵を利用したログインの設定を、以下の手順で行いました。 ・PuTTY Key Generatorで鍵ペアの作成  SSH-2 RSA(1024byte)パスフレーズ付き ・private kyeをローカルに保存して、PuTTYで読み込みファイルとして設定 ・publick keyを ~/.ssh/authorized_keys へ保存 ・/etc/ssh/sshd_configを設定(以下、有効な行を抜き出します) Port 22 Protocol 2 ServerKeyBits 1024 SyslogFacility AUTHPRIV PermitRootLogin no RSAAuthentication yes PasswordAuthentication no PermitEmptyPasswords no ChallengeResponseAuthentication no GSSAPIAuthentication yes GSSAPICleanupCredentials yes UsePAM yes AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT AcceptEnv LC_IDENTIFICATION LC_ALL X11Forwarding yes Subsystem sftp /usr/libexec/openssh/sftp-server 上記でログイン時にパスフレーズを求められるので、 公開鍵方式でログインできているのだと思うのですが いろいろなサイトを見て、以下の行のコメントを外す必要があるんじゃないかと思っています。 #PubkeyAuthentication yes #AuthorizedKeysFile ~/.ssh/authorized_keys ただ、この2行を有効にするとログインできず、Server refused our keyと表示されてしまいます。 公開鍵の認証をコメントアウトして、鍵の場所すら設定していないのに 公開鍵でログインできるものなのでしょうか?

  • sftpで、 公開鍵を指定できますか?

    sftpで、パスワードなしで他のサーバに接続したいのですが、 ssh の -iオプション(-i .ssh/id_dsa_pub)と同様に sftpでも公開鍵を指定する方法はありますでしょうか? 同じユーザー名だと、公開鍵を指定せず、 パスワードなしで接続できるのですが、 転送元と転送先でユーザー名が違う場合、公開鍵を 指定しないと接続できず困っています。

  • sshについて

    linux初心者です。いまsshについて勉強しています。ssh-keygenで作った鍵を相手に送りました。ちなみにidentity.pubをauthorized_keysにコピーしてから送りました。それからホストの中の~/.sshにmvでauthorized_keysに入れました。しかしsshを使うとパスワードを聞かれます。パスフレーズではいるにはどうしたらよいですか。

  • 多段でsftpは使えない?

    多段でsftpは使えない? 公開鍵接続により、sftpをバッチファイルモードで使おうとしているのですが、別のサーバから多段でログインした場合に接続ができません。サーバは共にLinuxです。 例えば、ローカルサーバがA、リモートサーバがBとすると、 サーバAでsftpコマンドを打って、サーバBにsftp接続する事は可能なのですが、第三のサーバCからいったんサーバAに入り、それからサーバA上でsftpコマンドを打ってサーバBに接続しようとしても接続が出来ません。 つまり、A→Bの接続は可能なのですが、C→A→Bの接続をやろうとすると失敗します。公開鍵は、サーバA上にて作成しています。 公開鍵による多段のsftp接続は不可能なのでしょうか?

  • SSH通信で秘密鍵の読み込みが失敗

    ●質問の主旨 クライアントコンピューターとサーバー間で SSH通信を行いたいと考えています。 公開鍵暗号方式でSSHサーバーに対して、 クライアントコンピュータからリモート接続を行おうとして クライアントのTeraTermを使って秘密鍵でアクセスしようとしたところ、 「SSH2秘密鍵の読み込みに失敗しました」という添付画像のような メッセージが出ます。 このメッセージ出されることなく、クライアント~サーバー間で SSH通信を行うためには、どこをチェックすればよいでしょうか? ご存知の方がいらっしゃいましたら、ご教示願います。 ●質問の補足 現在の状況は以下の通りです。 1.クライアントのTeraTermで秘密鍵(id_rsa)と公開鍵(id_rsa.pub)を作成 2.秘密鍵(id_rsa)はクライアントのCドライブのRSAという任意の名前のフォルダに保存 3. 公開鍵(id_rsa.pub)はSFTPでサーバーの一般ユーザのホームディレクトリに転送 4. 一般ユーザのホームディレクトリ配下に/.ssh/authorized_keysディレクトリを追加 (cat id_rsa.pub > /home/user/.ssh/authorized_keys) 5.chmodコマンドで.ssh及び.ssh/authorized_keysのアクセス権を変更 6.cat authorized_keysで中身を見ると、 公開鍵(id_rsa.pub)の文字の羅列が並んでいる ●環境 上記で言う、クライアントコンピュータはWindows8を使用しています SSHサーバーは、CentOS6.0をディストリビューションとするLinuxを使用しています