FTP入門と進級
3543 ワード
一、紹介
1、FTPは何ですか
FTP「File Transfer Protocol」(ファイル転送プロトコル)は、RFC 959において説明されているファイルの転送および共有を実現するために使用される.
FTPはアプリケーション層で動作し,TCPベースでC/Sアーキテクチャである.
2、セッション接続:
制御接続:ポートは21で、FTPサーバーと疎通して、FTPに接続して、指令を送って[クライアントは絶えず開いて、持続的に接続を維持します]
データ接続:ポートは20[アクティブモードでのみ20]であり、FTPサーバとファイル転送を行う[データ要求時接続]
3、動作モード
FTPプロトコルでは,制御接続はクライアントによって開始されるが,データ接続にはPORT方式とPASV方式の2つの動作方式がある.
アクティブ、パッシブはサーバの観点に基づいています.
PORT【Active】モード(アクティブモード)
FTPクライアントはランダムポートNを使用(1024以上)FTPサーバーの21ポートに接続し、ユーザー名とパスワードを送信してログインする.ログイン成功後にリストまたはデータを読み取る場合、クライアントはPORTコマンドをFTPサーバーに送信し、サーバークライアントにアクティブモードを採用してポートN+1を開放するように伝える.FTPサーバーはPORTアクティブモードコマンドとポート番号を受け取った後、サーバーの20ポートとクライアントを通じて開放するポートN+1が接続され、データが送信される.
PASV【Passive】モード(受動方式)
FTPクライアントはランダムポートNを使用(1024以上)FTPサーバーの21ポートに接続し、ユーザー名とパスワードを送信してログインする.ログイン成功後にリストまたはデータを読み取る場合、クライアントはPASVコマンドをFTPサーバーに送信し、サーバークライアントにパッシブモードを採用することを伝え、FTPサーバーはPASVパッシブモードコマンドを受け取った後、ランダムポートを開き、クライアントに知らせる.を使用して接続し、クライアントがサーバのNポートに接続してデータを取得します.
*N >1024
*ftpファイアウォールの構成(生産環境におけるC/S端の設定が必要)
4、データ転送モード:(サーバ自動)
テキスト
バイナリ
二、サービス側プログラム:
windows: serv-U、FileZilla
linux:vsftpd「Very Secure FTP Daemon」は、UNIX系オペレーティングシステム上で動作するサーバの名前です
3種類のユーザーをサポート:匿名ユーザー(デフォルト)、システムユーザー、仮想ユーザー
PAMベースのユーザー認証
Vsftpdをインストールして構成する
生成されたインストールファイル
プロファイルの解析
1、FTPは何ですか
FTP「File Transfer Protocol」(ファイル転送プロトコル)は、RFC 959において説明されているファイルの転送および共有を実現するために使用される.
FTPはアプリケーション層で動作し,TCPベースでC/Sアーキテクチャである.
2、セッション接続:
制御接続:ポートは21で、FTPサーバーと疎通して、FTPに接続して、指令を送って[クライアントは絶えず開いて、持続的に接続を維持します]
データ接続:ポートは20[アクティブモードでのみ20]であり、FTPサーバとファイル転送を行う[データ要求時接続]
3、動作モード
FTPプロトコルでは,制御接続はクライアントによって開始されるが,データ接続にはPORT方式とPASV方式の2つの動作方式がある.
アクティブ、パッシブはサーバの観点に基づいています.
PORT【Active】モード(アクティブモード)
FTPクライアントはランダムポートNを使用(1024以上)FTPサーバーの21ポートに接続し、ユーザー名とパスワードを送信してログインする.ログイン成功後にリストまたはデータを読み取る場合、クライアントはPORTコマンドをFTPサーバーに送信し、サーバークライアントにアクティブモードを採用してポートN+1を開放するように伝える.FTPサーバーはPORTアクティブモードコマンドとポート番号を受け取った後、サーバーの20ポートとクライアントを通じて開放するポートN+1が接続され、データが送信される.
PASV【Passive】モード(受動方式)
FTPクライアントはランダムポートNを使用(1024以上)FTPサーバーの21ポートに接続し、ユーザー名とパスワードを送信してログインする.ログイン成功後にリストまたはデータを読み取る場合、クライアントはPASVコマンドをFTPサーバーに送信し、サーバークライアントにパッシブモードを採用することを伝え、FTPサーバーはPASVパッシブモードコマンドを受け取った後、ランダムポートを開き、クライアントに知らせる.を使用して接続し、クライアントがサーバのNポートに接続してデータを取得します.
*N >1024
*ftpファイアウォールの構成(生産環境におけるC/S端の設定が必要)
4、データ転送モード:(サーバ自動)
テキスト
バイナリ
二、サービス側プログラム:
windows: serv-U、FileZilla
linux:vsftpd「Very Secure FTP Daemon」は、UNIX系オペレーティングシステム上で動作するサーバの名前です
3種類のユーザーをサポート:匿名ユーザー(デフォルト)、システムユーザー、仮想ユーザー
PAMベースのユーザー認証
/etc/pam.d/*
/lib64/security/*
Vsftpdをインストールして構成する
yum install vsftpd -y
service vsftp start
chkconfig vsftpd on
生成されたインストールファイル
/etc/vsftpd/vsftp.conf:
/etc/init.d/vsftpd:
/usr/sbin/vsftpd:
/etc/vsftpd/ftpusers: , ,
/etc/vsftpd/user_list: userlist_enable userlist_deny
/var/log/xferlog:
プロファイルの解析
listen=YES ftp
listen_port=21 FTP
#anonymous_enable=YES (anonymous/ftp)
local_enable=YES
write_enable=YES
local_umask=022
local_root=/var/ftp FPT ( )
local_max_rate (0 ),
download_enable=YES ( 、 FTP NO)
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
#anon_other_write_enable=YES , 、 、
#anon_root=/var/ftp ( /var/ftp)
#anon_umask=022
#anon_world_readable_only=NO
#anon_max_rate=0 (0 ),
dirmessage_enable=YES , YES .message
xferlog_enable=YES ftp , FTP , /var/log/xferlog
xferlog_std_format=YES xferlog , , vsftpd
connect_from_port_20=YES 20
#chown_upload=YES
#chown_username=username
#idle_session_timeout=600
#data_connection_timeout=120
#accept_timeout=60
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
#
chroot_local_user=yes FTP
pam_service_name=vsftpd PAM
userlist_enable=YES user_list
userlist_deny=YES user_list , ftp
tcp_wrappers=YES tcp_wrappers
max_clients=0 FTP (0 )
max_per_ip=0 IP , (0 )
pasv_enable=YES
pasv_min_port=10000
pasv_max_port=11000
use_localtime=YES FTP
dual_log_enable=YES YES [vsftpd.log\xferlog]
log_ftp_protocol=YES ftp