コマンドを使用してFTPでマシンAからマシンBにファイルをコピーするにはどうすればいいですか?

コマンドを使用してFTPでマシンAからマシンBにファイルをコピーするにはどうすればいいですか?

コマンドを使用して、ソース マシン A から宛先マシン B にファイルをコピーし、FTP を使用したいと考えています。

これを試してみた

scp /home/varun/Desktop/Test.java username_for_target_machine@ip_address_of_target_machine:/home/Desktop/

The authenticity of host 'ip_address_of_target_machine (ip_address_of_target_machine)' can't be established.
RSA key fingerprint is 4a:49:cc:9d:ab:f6:ec:4f:b2:0b:63:ef:8f:b8:76:76.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'ip_address_of_target_machine' (RSA) to the list of known hosts.
qaserve@ip_address_of_target_machine's password: 

ターゲットマシンのパスワードを入力すると

Permission denied, please try again.

複数回試しましたが、同じ出力が得られます。

  1. どこで間違いを犯しているのでしょうか?
  2. パスワードを尋ねられないように、コマンドでユーザー名とパスワードを指定するにはどうすればよいですか?

更新:1

ssh を使ってみました。以下は私が実行した手順です。

1. ローカルホストとリモートホストがopenSSHを実行していることを確認する

OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013

2. ssh-keygenを使用してローカルホスト上でキーペアを生成する

Generating public/private rsa key pair.
Enter file in which to save the key (/home/jsmith/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): 
Enter same passphrase again:
Your identification has been saved in /home/jsmith/.ssh/id_rsa.
Your public key has been saved in /home/jsmith/.ssh/id_rsa.pub.
The key fingerprint is:
31:3a:5d:dc:bc:81:81:71:be:31:2b:11:b8:e8:39:a0 jsmith@local-host

3. リモートホストに公開キーをインストールします。

[remote-host]$ vi ~/.ssh/authorized_keys 
ssh-rsa ABIwAAAQEAzRPh9rWfjZ1+7Q369zsBEa7wS1RxzWR jsmith@local-host

4. リモート ホスト上の .ssh ディレクトリに適切な権限を付与します。

[remote-host]$ chmod 755 ~/.ssh
[remote-host]$ chmod 644 ~/.ssh/authorized_keys

5. SSH キー認証を使用してローカル ホストからリモート ホストにログインし、正常に動作するかどうかを確認します。

[local-host]$ ssh -l jsmith remote-host

上記のコマンドを実行すると、次の結果が得られます。

ssh: connect to host remote-host port 22: Connection timed out

入力すると

ssh -l ipaddress_of_remote-host remote-host

パスワードを要求しています。パスワードを入力すると、remote_host に接続します。

リモート ホストに公開キーを登録した後、再度パスワードを要求されるのはなぜですか?

アップデート2: ごちゃごちゃしてすみません。

  1. 任意のプロトコルを使用してソースから宛先にファイルをコピーしたい。権限を変更する

  2. [リモートホスト]$ chmod 700 ~/.ssh [リモートホスト]$ chmod 600 ~/.ssh/authorized_key

答え1

  1. リモートサーバーの/home/Desktopへの権限がない可能性があります。/home/username_for_target_machine/Desktopを試してください。
  2. いいえ、そうは思いません。しかし、「ssh 公開鍵認証」を Google で検索することはできます。

答え2

ここではさまざまなことを混同しています。まず、これらはいずれも ftp とは何の関係もありません。scpではなく を使用していますftp。なぜ ftp について言及しているのですか? 次に、IP をユーザー名として使用してホストに接続しようとしているようです (-lは接続するユーザー名を示します)。また、ファイルの権限が間違っています。とではなくと がauthorized_keys必要です。最後に、とにかくそれはキーをコピーするための良い方法ではありません。それが の目的です。600700644755ssh-copy-id

それでは、最初から試してみましょう。ステップ 1 と 2 は問題ありません。次に、次の操作を実行します。

  1. リモート ファイルに追加したエントリを削除しますauthorized_keys

  2. リモート ホストの権限を修正します。

    [remote-host]$ chmod 700 ~/.ssh/
    [remote-host]$ chmod 600 ~/.ssh/authorised_keys
    
  3. ローカル ホストから、キーをリモートにコピーします。

    [local-host]$ ssh-copy-id -i ~/.ssh/id_rsa.pub user@ipaddress_of_remote-host
    
  4. もう一度ログインしてみてください

    [local-host]$ ssh jsmith@ipaddress_of_remote-host
    
  5. ホストがネットワークに名前を正しくエクスポートしていないようです。 簡単に修正するには、次を実行します。

    [ローカルホスト]$ echo "リモートホストのIPアドレス ホスト名" | sudo tee -a /etc/hosts

    これにより、ホストの名前が IP のエイリアスとして保存されます。これで、 に接続できるようになりますssh user@hostname

答え3

パスワードを要求されているので、FTP が設定されていないと思いますので、次のリンクを確認してください:

1)http://www.mpipks-dresden.mpg.de/~mueller/docs/suse10.2/html/opensuse-manual_en/manual/sec.filetrans.copy.html

FTP サーバーを構成するには、次の手順に従います。

**Prepare the FTP server:**

    Install the vsftp package.

    Open a shell, login as root and save a backup copy of /etc/vsftpd.conf:

    cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

    Create an access point for anonymous FTP

    mkdir ~ftp/incoming
    chown -R ftp:ftp ~ftp/incoming

Replace the configuration files depending on the scenario you prefer (refer to the manual page of vsftpd.conf for advanced configuration options):

Allowing Anonymous Read and Write Access

    #
    listen=YES

    # Enable anonymous access to FTP server
    anonymous_enable=YES

    #
    local_enable=YES
    # Enable write access
    write_enable=YES
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    dirmessage_enable=YES
    # Write log file 
    xferlog_enable=YES
    connect_from_port_20=YES
    chown_uploads=YES
    chown_username=ftp
    ftpd_banner=Welcome to FTP service.
    anon_root=/srv/ftp

Grant Restricted Permissions to FTP Users (Home Only)

    chroot_local_users=YES

Restart the FTP server:

rcvsftp start

クライアントではURLを入力するだけですftp://ホストブラウザまたは FTP クライアントで、HOST をサーバーのホスト名または IP アドレスに置き換えます。FTP サーバーの内容を参照するのに適したグラフィカル ユーザー インターフェイスは多数あります。それらの一覧を表示するには、YaST パッケージ マネージャーの検索プロンプトで FTP と入力するだけです。

関連情報