web-dev-qa-db-ja.com

AzureでFTPをセットアップする方法VM

Azure VMインスタンス。

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

ftp command: open localhost

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

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

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

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

ありがとう

40
ChiliYago

2012年7月から素晴らしいウォークスルーがあります ' Windows Azure VMでのFTPのホスティングIIS 7.5 ' by Ronald Wildenberg これについて。 デビッドの答え 。これらは彼が通過する段階です:

  1. まず、仮想マシンが必要です。 SQL Serverデータベースを備えたWindowsマシンが必要だったため、利用可能なテンプレートから「Microsoft SQL Server 2012 Evaluation Edition」を選択しました。
  2. マシンが起動したら、管理ポータルの下部にある接続オプションを使用してRDPを実行できます。
  3. 入ったら、IISを構成する必要があります。必要な手順の要約:
    • 「Webサーバー(IIS)」ロールをサーバーに追加します。
    • IIS必要な機能を追加します。
    • TCP=エンドポイントを、パブリックおよびプライベートポート80の管理ポータルのVMに追加します。
  4. FTPを有効にするには、IIS=役割の「FTPサーバー」役割サービスを有効にしてください。
  5. 次のステップは、IISで実際のFTPサイトを作成することです。 IIS Managerの[サイト]を右クリックし、[FTPサイトの追加…]を選択します
  6. サイトの名前とローカルパスを指定します。
  7. バインディングおよびSSL情報を指定します。
  8. 最後に、誰がFTPサイトにアクセスする必要があるかを指定します。
  9. これで、VM内からFTPサイトにアクセスできるはずです。コマンドプロンプトを開き、ftp 127.0.0.1と入力してログインします
  10. アクティブFTPの場合、ポート21(FTPコマンドポート)および20(FTPデータポート)へのアクセスを許可する必要があるため、2つのエンドポイントをVMに追加する必要があります
  11. パッシブFTPを構成します。これが機能するには、IIS FTPサーバーがデータ接続に使用できるポート範囲を指定する必要があり、エンドポイントをVMこのポート範囲に対応します。
  12. パッシブデータ接続のポート範囲と外部IPアドレスを構成します。これはIIS Managerにあります
  13. 外部IPアドレスは、Azure管理ポータルで見つけることができる仮想IPアドレスである必要があります。
  14. IIS Managerでデータチャネルポート範囲を指定できない場合は、%windir%\system32\inetsrvappcmd set config /section:system.ftpServer/firewallSupport /lowDataChannelPort:7000 /highDataChannelPort:7014にあるappcmdユーティリティを使用してください。
  15. Azureポータルで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

これらの手順に従うことは価値があります 元の記事 特に、彼は各手順の便利なスクリーンショットを含んでいますが、念のためここで詳しく引用する価値があると思いました。この記事では、 アクティブFTPとパッシブFTP、明確な説明 を読む価値があるとも述べています。

これらの手順を実行した後、Azure VMベースのFTPサーバーが機能し、アクセス可能になります。しかし、残念ながら 上記の手順では修正できませんでした :-(

62
dumbledad

FileZilla FTP Serverの使用を気にしない場合は、

これが、VMへのFTP接続を有効にするために行ったことです。

1. Go to Azure VM (manage.windowsazure.com), and add 2 endpoints:
    1. Name: FTP (Protocol TCP, Public Port 21, Private Port 21)
    2. Name: FTP Passive (Protocol TCP, Public Port 60000, Private Port 60000)
2. Go back to VM (via RDP), Open connection for port 21, and 60000 on Windows Firewall inbound rule.
3. Download and open FileZilla Server.
4. Click Edit -> Users and add user and shared directory as needed.
5. Click Edit -> Settings. On the sidebar click Passive Mode Settings.
6. Check "use custom port range" and enter 60000 - 60000
7. On ip4specific part, select radio button "use the following ip", and enter your xxxx.cloudapp.net.
8. Save, and run the server. That's it, you can now connect to FTP from outside of VM.

それが誰かを助けることを願っています。

乾杯

8
dexcell

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

そこで、古くて開かれたLinuxの世界に戻り、Cygwinを使用してSCPサーバーをセットアップしました。ボーナスとしてリモートシェルを取得することもできます...

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

2)「パッケージの選択」で

  • cygrunsrv(「Admin」の下にあるものを選択します)
  • openssh(「Net」の下を選択)

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

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

  • cygrunsrv -S sshd

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

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

そして、ヴィオラ-WinSCP、Notepad ++、PuTTYを使用して接続できます...

ノート:

  • Unixでは大文字と小文字が区別されるため、大文字と小文字を正確に入力してください。資本Aを持つ管理者
  • ドライブは/ cygdriveの下にあります(c:\は/ cygdrive/cなどにあります)

幸運を!

3
Zeev Kotzer

追加のポート範囲を追加する必要があります。これは、FTPサーバーがFTP接続ごとに選択するものです。

入力エンドポイントの束を作成する必要があります。各エンドポイントは、指定されたポート範囲のポートの1つを表します。入力エンドポイントの数は限られていることに注意してください(正確な数はわかりませんが、連続するポートで50個の入力エンドポイントを簡単に開くことができるはずです)。次に、同じ範囲を使用するようにftpサーバーをセットアップします。また、入力エンドポイントのパブリックポートを同じプライベートポート番号にマップすると、接続が正しく作成されません。

1
David Makogon

dumbledad's answer のリンクは現在利用できません。そこの手順を実行した後、新しいAzure VMでパッシブFTPを実行するのにまだ問題がありました。

少し検索した後、この作成記事 パッシブFTPおよび動的ポート を見つけました。これはすばらしいチュートリアルであり、VMからFTPをすぐに起動して実行するための簡単なスクリプトを提供します。 IISおよびAzureエンドポイントを手動で構成するのではなく、アクセスします。

1
deadlytoes