43

Azure VM インスタンスで FTP をセットアップするのに助けが必要です。

VM は Windows Server 2012 R2 です。Web サーバーの役割を設定し、IIS で FTP サイトを作成しました。でFTPサーバーにアクセスできることを確認しました

ftp command: open localhost

また、標準ポート 21 用に構成された Azure ポータルで VM の FTP エンド ポイントを構成しました。

最後に、ポート 21 を出入りするすべてのトラフィックを許可するファイアウォール ルールを作成しました。

自宅のマシンから FTP で接続しようとすると、サーバーのパブリック DNS 名が適切な IP とポートに解決されていることがわかりますが、接続できません。

どこかに設定手順がありませんか?

ありがとう

4

5 に答える 5

65

これについては、 Ronald Wildenbergによる2012 年 7 月の「Windows Azure VM の IIS 7.5 で FTP をホストする」という優れたウォークスルーがあります 。彼はデビッドの答えを繰り返します。彼が通過する段階は次のとおりです。

  1. まず、仮想マシンが必要です。SQL Server データベースを備えた Windows マシンが必要だったので、利用可能なテンプレートから「Microsoft SQL Server 2012 Evaluation Edition」を選択しました。
  2. マシンが起動したら、管理ポータルの下部にある接続オプションを使用して RDP でマシンに接続できます。
  3. 入ったら、IIS を構成する必要があります。必要な手順の概要:
    • 「Web サーバー (IIS)」の役割をサーバーに追加します。
    • 必要な IIS 機能を追加します。
    • パブリック ポートとプライベート ポート 80 を使用して、管理ポータルで VM に TCP エンドポイントを追加します。
  4. FTP を有効にするには、IIS の役割に対して「FTP サーバー」の役割サービスを有効にしてください。
  5. 次のステップは、IIS で実際の FTP サイトを作成することです。IIS マネージャーで [サイト] を右クリックし、[FTP サイトの追加…] を選択します。
  6. サイトの名前とローカル パスを指定します。
  7. バインディングと SSL 情報を指定します。
  8. 最後に、FTP サイトにアクセスできるユーザーを指定します。
  9. これで、VM 内から FTP サイトにアクセスできるようになります。コマンドプロンプトを開き、入力ftp 127.0.0.1してログインします
  10. アクティブ FTP の場合、ポート 21 (FTP コマンド ポート) と 20 (FTP データ ポート) へのアクセスを許可する必要があるため、VM に 2 つのエンドポイントを追加する必要があります。
  11. パッシブ FTP を構成します。これを機能させるには、データ接続に使用できるポート範囲を IIS FTP サーバーに伝え、このポート範囲に対応する VM にエンドポイントを追加する必要があります。
  12. パッシブ データ接続のポート範囲と外部 IP アドレスを構成します。これは、IIS マネージャーで見つけることができます
  13. 外部 IP アドレスは、Azure 管理ポータルで見つけることができる仮想 IP アドレスである必要があります。
  14. IIS マネージャーでデータ チャネルのポート範囲を指定できない場合は、次の場所にある appcmd ユーティリティを使用します%windir%\system32\inetsrvappcmd set config /section:system.ftpServer/firewallSupport /lowDataChannelPort:7000 /highDataChannelPort:7014
  15. Azure portal で 15 個の新しいエンドポイントすべてを指定できますが、それには時間がかかるため、Windows Azure Powershell コマンドレットを使用してください。
  16. パブリッシュ設定ファイルをダウンロードします。1 つの方法は、Windows Azure Powershell を開始し、コマンドレット 'Get-AzurePublishSettingsFile' を使用することです。ブラウザーが開き、Windows Live ID に対応する公開設定ファイルをダウンロードできます。
  17. 発行設定ファイルをダウンロードしたら、'Import-AzurePublishSettingsFile' コマンドレットを使用してインポートできます。エンドポイントの追加を開始する準備が整いました。
  18. 実行したいコマンドのリストを含むテキスト ファイルを作成し、それを Powershell ウィンドウにコピーしましたGet-AzureVM -ServiceName 'myServiceName' -Name 'ftpportal' | Add-AzureEndpoint -Name 'FTPPassive00' -Protocol 'TCP' -LocalPort 7000 -PublicPort 7000 | Update-AzureVM。「myServiceName」はクラウド サービスの名前で、「ftpportal」は仮想マシンの名前です。
  19. Windows ファイアウォールは必要なすべてのトラフィックを許可しているように見えますが、ファイアウォールでステートフル FTP フィルタリングを有効にする必要もあります。netsh advfirewall set global StatefulFtp enable
  20. FTP Windows サービスを再起動すると、起動して実行する必要があります。
    • net stop ftpsvc
    • net start ftpsvc

元の記事のこれらの手順に従うことは、特に各手順に役立つスクリーンショットが含まれているため、価値がありますが、念のためにここで広く引用する価値があると思いました. この記事では、 Active FTP と Passive FTP の比較についても言及しています。

これらの手順を実行した後、Azure VM ベースの FTP サーバーが機能し、アクセスできるようになったことを報告できれば幸いです。しかし、残念ながら、上記の手順では修正されませんでした:-(

于 2013-09-10T08:05:58.707 に答える
3

上記の 15 ポイントのリストでしばらく苦労した後、MS が渡そうとしているメッセージを受け取りました - 「No (easy) FTP for you」...

そこで、古き良きオープンな Linux の世界に戻り、Cygwin を使用して SCP サーバーをセットアップしました。ボーナスとしてリモート シェルも入手できます...

1) Cygwin インストーラーを実行します - https://cygwin.com/setup-x86.exe

2) [パッケージの選択] で次を検索します

  • cygrunsrv (「管理者」の下にあるものを選択)
  • openssh (「ネット」の下にあるものを選択)

3) 完了したら、Cygwin ターミナルを起動し、次のように入力します。

  • ssh-host-config -y -pwd S0me-Str0ng-pa55w0rd

  • cygrunsrv -S sshd

4) Azure VM から SSH エンドポイントを追加します。

5) Windows FireWall で、TCP ポート 22 の受信規則を追加します。

そして viola - もちろん、WinSCP、Notepad++、Putty を使用して接続できます...

ノート:

  • Unix では大文字と小文字が区別されるため、大文字と小文字を区別してユーザーを入力してください。
  • ドライブは /cygdrive の下にあります (c:\ は /cygdrive/c などにあります)

幸運を!

于 2014-08-31T19:58:21.877 に答える