FTP転送を記録する場所はありますか?

FTP転送を記録する場所はありますか?

さて、私は古いアプリケーションの責任を負っていますが、その詳細はよく理解されず、私のサーバーを保護しようとしていますが、誰かがFTPにポート21を禁止しようと提案したとします。

しかし、毎日どのプログラムがFTPを実行して使用しているかはわかりません。

サーバーやネットワークに必要なツールをインストールできるソリューションがないとしましょう。私の解決策は何ですか?

  • ポート21をブロックし、ファイアウォールがどのトラフィックをブロックしているかを確認する必要がありますか?
  • AIXサーバーにこのポートを介してアクセスされているサーバーのリストを表示するには、どこに行く必要がありますか?サーバーのIPとファイル名がある場合は、これを実行したプログラムを追跡できます。もしそうなら、FTPにログファイルはありますか?

編集する:

ㅏ)inetd活動ftp的で(@JeffSchallerに感謝)

b) 私は知りたい着信そして出るそのポートのトラフィック - 実行されたコマンド(可能な場合)、つまり私の目標は知っていることです。

  • ローカルFTPサーバーで実行されたコマンド
  • ローカルFTPクライアントが他のサーバーに対してどのコマンドを実行しましたか?

どんな提案でも歓迎します。

ベストアンサー1

ローカルFTPサーバーでどのコマンドが実行されましたか?

AIXシステムでFTPロギングを有効にするには、FTP(inetdによって呼び出される)を再構成してデバッグログをsyslogに送信し、これらのログをファイルに保存するようにsyslogを構成する必要があります。

  1. ftpd行の末尾に編集し/etc/inetd.confて追加します。-d

    ftp     stream  tcp6    nowait  root    /usr/sbin/ftpd  ftpd -d
    
  2. inetd リフレッシュ:refresh -s inetd

  3. ログをどこかに保存する/etc/syslog.confには、次の行を編集して追加します。daemon.debug

    daemon.debug /var/log/ftp.log
    
  4. 記録するsyslog用のファイルを生成します。touch /var/log/ftp.log

  5. システムログを更新します。refresh -s syslogd

grepSyslogはすべてのデーモンのログをこのファイルに送信するため、次のようにフィルタリングする必要がありますgrep 'daemon:debug ftpd' /var/log/ftp.log

FTP経由で送信されたコマンドは文字列を使用して記録されますcommand:。例は次のとおりです。

May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: command: USER username-here^M
May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: <--- 331
May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: Password required for username-here.
May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: command: PASS
May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: <--- 230-
May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: Last login: Fri May 18 10:13:02 EDT 2018 on ftp from ftpclient.example.com
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 230
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: User username-here logged in.
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: command: PORT 10,1,1,1,229,54^M
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 200
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: PORT command successful.
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: command: LIST^M
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 150
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: Opening data connection for /bin/ls.
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 226
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: Transfer complete.

はい、対応するControl-Mはログに表示されます!


ローカルFTPクライアントが他のサーバーでどのコマンドを実行しましたか?

アプリケーションは独自のFTPタスクを実行できるため、/usr/bin/ftpこのタスクをキャプチャするために可能なすべてのクライアントプログラム()をラップするのは困難です。最善の方法は、上記のようにコマンドを記録するようにリモートFTPサーバーを構成することです。 2番目に良い方法は、ポート21へのトラフィックを許可および記録するようにAIXファイアウォールを構成することです。

ipsecファイルセットがインストールされていることを確認してください。

lslpp -L bos.net.ipsec.rte; echo $?

代わりに、戻りコード0としてリストされているファイルセットを表示する必要があります。

lslpp: 0504-132  Fileset bos.net.ipsec.rte not installed.

IPsec デバイスが有効になっていることを確認します。

lsdev -l ipsec_v4

「定義済み」の代わりに「使用可能」という1行の応答を受け取るか、まったく応答がありません。

もし出力またはデバイスが「定義」されていません。

  1. 走るsmitty ipsec4
  2. 選ぶStart/Stop IP Security
  3. 選ぶStart IP Security
  4. デフォルト値をそのままにNow and After RebootしてDeny All Non_Secure = no
  5. エンターキーを押してください。

ipsec device_v4 に「使用可能」と表示されます。

次のコマンドを使用してログファイルを生成します。touch /var/log/ipsec.log

システムログの更新:

echo "local4.debug /var/log/ipsec.log rotate size 100k files 4" >> /etc/syslog.conf
refresh -s syslogd

ポート 21 へのトラフィックを許可および記録するルールを追加します。

# -v 4 == IPv4
# -n 2 == add this after the first rule
# -a P == permit
# -O eq == destination port *equals* 21
# -P 21 == destination port 21
# -w O == outbound connections; change this to “B” to log in both directions
# -c tcp == TCP protocol
# -s, -m, -d, -M = source/dest IP & mask (any)
# -l Y = Log it
# -r L = applies only to packets destined or originated from the local host
genfilt -v 4 -n 2 -a P -O eq -P 21 -w O -c tcp -s 0.0.0.0 -m 0.0.0.0 -d 0.0.0.0 -M 0.0.0.0  -l Y -r L -D “allow and log port 21 traffic”

録音開始:

mkfilt -g start

ルールセットを有効にします。

mkfilt -u

アウトバウンドFTP接続が発生するのを待ってから、次の操作を行います。

grep ipsec_logd /var/log/ipsec.log | grep DP:21

アウトバウンドFTP接続の送信元および宛先IPとタイムスタンプが表示されます。たとえば、次のようになります。

May 18 11:29:40 localhost local4:info ipsec_logd: #:0 R:p  O:10.1.1.1 S:10.1.1.1 D:10.2.2.2 P:tcp SP:55091 DP:21 R:l I:en0 F:n T:0 L:0

それは記録しませんコンテンツ(コマンド)FTPセッションですが、タイムスタンプとターゲットが表示されます。気づくすべてすべてのFTP接続のパケットが記録されます!


引用:

おすすめ記事