web-dev-qa-db-ja.com

FTPに21以外のポートを使用する方が安全ですか?

通常(私の知る限り)、FTPはポート21を使用します。

このポートはFTPで頻繁に使用されるため、別のポートを使用する方が安全ですか?私の推測では、悪意のある意図を持つ誰かがFTPアカウントを破ろうとすると、ポート21を試みます。

28
Kevin

どのポートでもftpを使用するのは安全ではありません。ネットワークまたはシステムに侵入しようとする悪意のあるユーザーは、システムをスキャンしてポート21をスキャンするのではなく、すべてのポートをスキャンし、実質的にもう一方のポートをすぐに特定します。

あなたはあなたのファイル転送ツールとしてsftpを使う方が良いです。

一方、VPNトンネルを介して実行する場合は、ftp転送とポートにセキュリティを追加するオプションがあります。

63
yetdot

FTPが一般的に安全でないと考えられている理由は、暗号化されていないためです。つまり、誰かがネットワークパスのどこかでトラフィックを盗聴している場合、それを通過するすべてのものが読み取られます。これには、ユーザー名、パスワード、転送されるすべてのデータ、および使用されているポートが含まれます。

非標準のポートを使用してもセキュリティは向上しませんが、接続を試みるボットの数が減る可能性があり、不愉快なことにネットワークログがいっぱいになります。

36
TTT
  1. FTPサーバーが常に最新の状態に保たれている場合、通常は、そのアプリケーションに対する既知のエクスプロイトが存在しないことを意味します。一方、サーバーが古くなっている場合は、ロボットが既知の脆弱性をスキャンする危険があります。

  2. FTPサーバーが適切に構成されていない場合、たとえば、デフォルトのユーザー名/パスワード、または無視された(または特権のある)アカウントに弱いパスワードがある場合、ブルートフォース攻撃は簡単に通過できる可能性があります。

さて、あなたはあなたの質問に具体的に答えるために、2つの最も一般的な攻撃を知っています、そうです、デフォルトではないポート番号は、特に脆弱性についてインターネットをスキャンしているロボットに関して、そのような攻撃の可能性を減らします。

これは多くの場合、あいまいさによるセキュリティと見なされ、その効果が限られているために不快になりますが、特にロボットの脆弱性スキャナーに対するセキュリティがある程度向上していることは否定できません。おそらく、標的型攻撃に対してはそれほどではありません。

提案:

  • デフォルトのポートを変更することは、セキュリティの現状に自信がない場合に簡単に実行できます。
  • FTPサービスを使用する最良の方法は、FTPサービスにアクセスできるIPアドレスを制限することです。これにより、脆弱性スキャンが防止されます。たとえば、FTPサーバーへのアクセスに使用する特定の建物のみが世界にある可能性があります。他のIPアドレスからのアクセスを許可する必要はありません。

  • highly FTPの使用を停止し、SFTP(SSH)に切り替えて、認証情報が取得されないようにすることをお勧めします。 FTPは暗号化されていないため、質問には当てはまりませんが、オンサイトLANアクセス以外のすべてに暗号化されていない接続を使用することは非常に危険です。

  • 安全なリモートLANアクセスを提供するVPNの使用も検討してください。

12
Bryan Field

はい、ただし非常にマイナーな方法でのみです。

リスク評価では、提供されるセキュリティと比較してコストの要素があります。

FTPを標準以外のポートに移動すると、ぶら下がっている果物での着信の試行が減少します。言い換えると、ポート21のみで辞書リストを試行する script kiddies は、攻撃者と見なされなくなります。このようにして、それはより安全です。

ただし、すべてのファイアウォール(管理外のファイアウォールを含む)を調整する必要がある場合があります。クライアントは設定を変更する必要があり、ユーザーは非標準の手順に従う必要があります。これらは小さなものですが、あなたの利益は小さいです。

これらのメリットだけで、他のすべてのメリットはありませんが、それは危機一髪です(質問については価値があります)。

とは言っても、より良いセキュリティを実現するためのより良い方法があります。 IPアドレスのホワイトリストは安価で簡単です。ポートの変更よりもセキュリティが強化されています。 FTPのVPNアクセスは、すでにVPNを設定している場合のもう1つの「簡単な」パスです。

これらの方法または他の方法を使用してFTPを保護することは、一般に「安価」であり、単にポートを切り替えるよりも安全です。

大きなスーパー重要な注意事項

FTPにはその用途がありますが、安全であると考えるべきではありません。代わりに [〜#〜] sftp [〜#〜] を使用してください。

4
coteyr

自動スキャンを減らすか(yes)、どちらの場合でもFTPからのセキュリティを期待できるか(no)の問題は別として、標準以外のポートでFTPをセットアップすると、セットアップ全体のセキュリティが損なわれる可能性さえあります。 。

HTTPサーバーと同じホスト上の非標準ポートでFTPサーバーを実行している場合、一部のブラウザーでは、FTPサーバーを使用してHTTPサーバーでXSSを実行できます。 アーカイブリンク

IIRCは、HTTPを使用してHTML + JSデータをFTPサーバーにPOSTすることで機能します。これは、FTPサーバーが非標準ポート上にあるためブラウザーが許可し、ブラウザーがFTPであることを認識せず、これを拒否する理由がないことを示します。 。 FTPサーバーは、投稿された無効なデータを含むエラーメッセージで応答します。応答にはHTTPヘッダーが含まれていませんが、これによりブラウザはHTTP/0.9応答であると想定します。そのため、サーバーは送信したペイロードを含む応答を返しました。少なくとも古いバージョンのIEはポートと同じSame-Origin-Policyを無視したため、HTTP側で何も問題なくXSSを手に入れました。

最近のブラウザーでこれがどの程度軽減されたか(HTTP/0.9サポートの削除、すべてのHTTP/0.9応答のtext/plainとしての解釈、IEのポートの修正など)はわかりませんが、それは間違いなく表示されますcanが他の場所に意図しない結果をもたらすこと(それでも、少なくともユーザーが古いIEを使用している場合は)

[少なくとも]いくつかの古いブラウザーでの自動スキャンまたはXSSのどちらがより小さな悪であるかについては、おい、FTP全体をすでに捨ててしまっている:)

2
Aleksi Torhamo

短編:ポートの変更は、ファイル転送サービスを保護するための方法ではありません。

より詳細な説明のために。マシン上にFTPサーバーを配置する理由がない場合、最も安全なのは、何もインストールしないことですどのポートでも。また、パブリックファイルサービスを除いて、FTPサーバーはほとんど必要ありません。これは、TCP/IPの世界で最も古いプロトコルの1つであり、ファイルの交換のみを目的としています。接続の両端を制御する場合、つまり、接続を使用するすべてのユーザーがユーザー名とパスワードでシステムに認識されている場合は、sshの特別な使用例であるsftpを使用する必要があります。 sshの上に構築されているため、すべての交換は完全に暗号化されており、すぐに使用できる非常に安全な公開鍵認証システムを提供します。もちろん、一部のブラウザーは使用できなくなります(Filezillaは、通知に@ dave_thompson_085を使用したおかげで使用できます)が、インターネット接続を介して通常のFTPサーバーで実際のパスワードを使用するのは大変です。poor暗号化されずに渡されるため、セキュリティの実践。つまり、それをしないでください!とにかく、sftp GUIクライアントを見つけることができます。

FTPはまだパブリックファイルサーバーに頻繁に使用されています。厳しくテストされた(実装の欠陥がありそうもないことを意味する)確かな実装を見つけることができ、すでにダウンロードされたものを失うことなく中断された転送を再開する機能などの素晴らしい機能が付属しています。そのため、すべての主要なLinuxおよびBSDディストリビューションはFTPサーバー上にあります。しかし、何十年も自分のマシンにFTPサーバーがありません...

また、非標準ポートを使用することでセキュリティが向上する可能性があるため、幻想を忘れてください。ポートスキャンを実行すると、すぐにそれが明らかになる可能性があります。ネットワーク上の単純な無差別パケットスキャナーとは異なります。さらに悪いことに、初心者の管理者は、すばやく設定されたFTPサーバーを非標準のポートにインストールして自分自身で使用するように誘惑する可能性があります誰もそこにそれを見つけられないので、セキュリティの確保に時間を費やしません 。実際の結果は次のとおりです。

  • 単純なポートスキャンで明らかになる
  • トラフィックは暗号化されていないので、promicuousモードのスキャナーを使用している途中のマシンは、警告なしでユーザーとパスワードを表示します=>資格情報が管理者権限を与えるとどうなるか想像してみてください...

また、よく知られているポートを変更すると、企業プロキシの背後にいるユーザーがサーバーにアクセスできなくなる可能性があります。

重要な注意点

この部分は質問自体には直接関係していませんが、一般的な肯定に関してはFTPは安全ではありません。使用しないでください、これは正しくありません。

FTPは、sshの前に安全な認証を行う安全なプロトコルとして使用されました。現在ではほとんど使用されていないことは事実ですが、 ワンタイムパスワード は、資格情報が盗まれるリスクを軽減する方法です。もちろん、ネットワーク上の誰もがパスワードを見ることができますが、それが使用されるとすぐに、それは即座に取り消されます。私は80年代にそれを集中的に使用しましたが、安全でない回線を介した安全な接続のためのOPIEまたはOTPWには自信があります。 telnet + ftp + OPIEの代わりにsftpとsshを使用することに同意しなければならない場合でも、:-)

私が言いたいのは、FTP自体は安全ではなく、安全に使用できるということです。 FTPの単純な使用は、一般的に安全ではありません。

2
Serge Ballesta

脅威モデルによる

トラフィックスニファリングの場合、ポートを変更しても違いはありません。システムの脆弱性を分析しようとする人間のハッカーに対してはほとんど役立ちません。

標準的なポートを想定する傾向があるため、自動メカニズム(ボットネット、ワーム)に対して役立ちます。

2
enkryptor

あなたの質問は本当に2つの質問です。 1つはFTPを使用する際のセキュリティについてであり、もう1つはネットワークプロトコルのデフォルトポートを変更することの利点についてです。

一部の人々は、デフォルトのポートを変更することは、あいまいであることによるセキュリティの例であると主張します。ただし、これが適切な唯一のセキュリティ管理である場合にのみ当てはまります。デフォルトのポートを変更することは、正当なセキュリティ制御になる可能性がありますが、それが他のセキュリティ制御と組み合わされている場合に限られます。これは特に強力な制御ではなく、中程度の知識を持つ人なら誰でも、プロトコルがリッスンしている新しいポートを見つけるでしょう。ただし、これは、さまざまなシンレイヤーのみであり、セキュリティはすべて保護層に関するものである場合でも、追加の保護層です。経験豊富な人物がシステムに侵入しようとするのを阻止することはできませんが、自動化された、または単純なスクリプトベースの攻撃の多くを阻止することができます。

このようなアプローチの欠点は、ユーザビリティに影響を与えることです。サービスの正当なユーザーは新しいポートを知る必要があり、サービスを使用するには追加のコマンドラインまたは構成設定を使用する必要があります。状況によっては、これで問題ない場合もありますが、場合によっては、不便または混乱するだけです。それは本当にあなたの状況とあなたが何を防御しようとしているのかに依存します。

たとえば、SSHサービスをポート22から別のポートに移動することがよくあります。これはセキュリティへの影響が最小限ですが、システムにアクセスする非常に単純化された試行でログに記録される「ノイズ」を減らし、サービスへの影響が最小限になる可能性がある、自動化された多数のスクリプトを回避できるという利点があります(私が働いていた場所の1つで、1日あたり平均22万回ポート22へのログインが試行されていました。 SSHを使用してこのシステムに接続する正当な理由がある唯一のユーザーであったため、デフォルトのポートを変更することによる不都合は最小限であり、別のポートに移動すると、週に数回しか試行されませんでした。ただし、これはSSHであり、SSHはデフォルトで安全になるように設計されています。 FTPはさまざまな話です。

FTPの場合、デフォルトのポートを移動する以外に何もしないと、それはあいまいさによるセキュリティであり、全体的なセキュリティにほとんど影響を与えません。これは、ユーザビリティを低下させ、FTPの根本的な弱点に対処するために何もしません。システムの基本的なセキュリティは、ポートスキャンを実行してFTPサービスがリッスンしている新しいポートを識別することは簡単であるため、大幅な改善はありません。

他のいくつかの投稿やコメントで指摘されているように、ここでの本当の問題は、FTPが単に安全でないプロトコルであることです。機能的に同等の代替案がいくつかあります。したがって、セキュリティが心配な場合は、FTPを使用しないことが最善策です。 FTPのバージョンとそれをより安全にすることができるFTPを構成する方法がありますが、大部分は、これらは「事後」のプロトコルへの追加/拡張であり、セキュリティを備えたプロトコルほど安全ではない可能性があります最初から組み込まれています。したがって、セキュリティが懸念される場合の本当の答えは、FTPやTelnetなどの古いプロトコルを使用しないことです。 SCPやSFTP、SSH、さらにはHTTPSのようなものを使用します。

2
Tim X

他の回答が明確にしていないことは、インターネット上のほとんどの場合、ハッキングトラフィックは既知のポート(FTPポート21など)の既知のポートをスキャンし、スキャンが有用なものを返した場合にのみ機能するボットから来るということです(FTPサーバーのように)。サーバーが人間のハッカーのターゲットになる可能性が高い場合を除き、おそらく心配する必要はありません。

FTPは一般的に安全ですか? 番号

公にアクセス可能な方法で使用する必要がありますか? 番号

パブリックIPのポート21で使用すると、ボットはデータを盗みますか? 可能性があります。

パブリックIPの非標準ポートで使用すると、ハッカーがデータを盗んだり、データを危険にさらしたりしますか? おそらくそうではない。

1
js441