ºìÁªLinuxÃÅ»§
Linux°ïÖú

Linux¼ÜÉèFTP·þÎñÆ÷Ö®Ò»

·¢²¼Ê±¼ä:2006-10-30 16:29:04À´Ô´:ºìÁª×÷Õß:àÖવδð
Ò»¡¢Ê²Ã´ÊÇFTP:Îļþ´«ÊäЭÒéÔ­Àí

»¥ÁªÍøÎļþ´«ÊäЭÒé(File Transfer Protocol ,FTP) ±ê×¼ÊÇÔÚRFC959˵Ã÷µÄ¡£¸ÃЭÒ鶨ÒåÁËÒ»¸ö´ÓÔ¶³Ì¼ÆËã»úϵͳºÍ±¾µØ¼ÆËã»úϵͳ֮¼ä´«ÊäÎļþµÄÒ»¸ö±ê×¼¡£Ò»°ãÀ´Ëµ£¬´«ÊäÎļþµÄÓû§ÐèÒªÏȾ­¹ýÈÏÖ¤ÒÔºó²ÅÄܵǼÍøÕ¾£¬È»ºó·½ÄÜ·ÃÎÊÔÚÔ¶³Ì·þÎñÆ÷µÄÎļþ¡£¶ø´ó¶àÊýµÄFTP·þÎñÆ÷ÍùÍùÌṩһ¸öGUESTµÄ¹«¹²ÕÊ»§À´ÔÊÐíûÓÐÔ¶³Ì·þÎñÆ÷µÄÓû§¿ÉÒÔ·ÃÎʸÃFTP·þÎñÆ÷¡£

Ò»¸öFTP»á»°Í¨³£°üÀ¨Îå¸öÈí¼þÔªËصĽ»»¥¡£

Óû§½Ó¿Ú ÌṩÁËÒ»¸öÓû§½Ó¿Ú²¢Ê¹Óÿͻ§¶ËЭÒé½âÊÍÆ÷µÄ·þÎñ
¿Í»§ PI ¿Í»§Ð­Òé½âÊÍÆ÷£¬ÆäÏîÔ¶³Ì·þÎñÆ÷ЭÒé»ú·¢ËÍÃüÁî²¢ÇÒÇý¶¯¿Í»§Êý¾Ý´«Êä¹ý³Ì
·þÎñÆ÷PI ·þÎñÆ÷ЭÒé½âÊÍÆ÷£¬ÏìÓ¦¿Í»§Ð­Òé»ú·¢³öµÄÃüÁî²¢Çý¶¯·þÎñÆ÷¶ËÊý¾Ý´«Êä¹ý³Ì
¿Í»§ DTP ¿Í»§Êý¾Ý´«Êä¹ý³Ì£¬Æ为ÔðÍê³ÉºÍ·þÎñÆ÷Êý¾Ý´«Êä¹ý³Ì¼°¿Í»§¶Ë±¾µØÎļþϵͳµÄͨÐÅ
·þÎñDTP ·þÎñÆ÷Êý¾Ý´«Êä¹ý³Ì£¬Æ为ÔðÍê³ÉºÍ¿Í»§Êý¾Ý´«Êä¹ý³Ì¼°·þÎñÆ÷¶ËÎļþϵͳµÄͨÐÅ

ÔÚRFC 959ÖУ¬Ò»°ãʹÓÃÓû§Õâ¸öÃû´ÊÀ´Ö¸´ú¿Í»§¡£RFC 959¶¨ÒåÁË¿Í»§PIºÍ·þÎñÆ÷PI½»»¥µÄ·½Ê½ºÍ¹æ·¶¡£Óû§½Ó¿ÚÓëPIºÍDTP½»»¥µÄ»úÀí¶¼²¢²»ÊÇЭÒé±ê×¼µÄÒ»²¿·Ö¡£PIºÍDTPÍùÍùͨ³£ÊÇÔÚͬһ¸ö³ÌÐòÄ£¿éÖÐʵÏֵġ£

ÔÚFTP»á»°ÖУ¬Ò»¹²»á´æÔÚÓÐÁ½¸ö¶ÀÁ¢µÄÍøÂçÁ¬½Ó£¬Ò»¸öÊÇÓÉÁ½¶ËµÄPIʹÓõģ¬ÁíÒ»¸öÊÇÓÉÁ½¶ËµÄDTPʹÓõġ£PIÖ®¼äµÄÁ¬½ÓÒ»°ã±»³Æ×÷¿ØÖÆÁ¬½Ó(control connection),DTPÖ®¼äµÄÁ¬½Ó±»³Æ×öÊý¾ÝÁ¬½Ó(data connection)

ʹÓÃTCP·þÎñµÄ¿ØÖƺÍÊý¾ÝÁ¬½Ó

ͨ³£Çé¿öÏ£¬FTO·þÎñÆ÷¼àÌý¶Ë¿ÚºÅ21À´µÈ´ý¿ØÖÆÁ¬½Ó½¨Á¢ÇëÇ󡣶øÊý¾ÝÁ¬½Ó¶Ë¿ÚºÅµÄÑ¡ÔñÒÀÀµÓÚ¿ØÖÆÁ¬½ÓÉÏÃüÁͨ³£ÊÇ¿Í»§·¢ËÍÒ»¸ö¿ØÖÆÏûÏ¢À´Ö¸¶¨¿Í»§¼àÌý²¢µÈ´ý·þÎñÆ÷¶Ë·¢ËÍÊý¾ÝÁ¬½Ó½¨Á¢ÇëÇóµÄ¶Ë¿ÚºÅ¡£

¶ÔÊý¾Ý´«ÊäºÍ¿ØÖÆÃüÁî´«ÊäÀ´Ê¹Óò»Í¬µÄ¶ÀÁ¢Á¬½ÓÓÐÈçÏÂÓŵ㣺Á½¸öÁ¬½Ó¿ÉÒÔÑ¡Ôñ²»Í¬µÄºÏÊÊ·þÎñÖÊÁ¿£¬È磺¶Ô¿ØÖÆÁ¬½ÓÀ´Ëµ¸ßÐèÒª¸üСµÄÑÓ³Ùʱ¼ä£¬¶ÔÊý¾ÝÁ¬½ÓÀ´ËµÐèÒª¸ü´óµÄÊý¾ÝÍÌÍÂÁ¿£»¶øÇÒ¿ÉÒÔ±ÜÃâʵÏÖÊý¾ÝÁ÷ÖеÄÃüÁîµÄͨÃ÷ÐÔ¼°ÌÓÒÝ¡£

µ±´«Ê佨Á¢Ê±£¬×ÜÊÇÓÉ¿Í»§¶ËÊ×ÏÈ·¢Æð¡£È»¶ø¿Í»§ºÍ·þÎñÆ÷¶¼¿ÉÄÜÊÇÊý¾Ý·¢ËÍÕß¡£³ýÁË´«ÊäÓû§ÇëÇóÏÂÔØÎļþ£¬Êý¾Ý´«Êä¹ý³ÌͬÑùÔÚ¿Í»§¶ËÇëÇóÁзþÎñÆ÷¶ËĿ¼½á¹¹Ê±½¨Á¢¡£

1.ÃüÁîÑ¡Ôñ

µ±Ò»¸ö´«Ê佨Á¢Ê±£¬Ò»°ãͨ³£ÐèÒªÖ¸¶¨Ëĸö·½ÃæµÄÊôÐÔ£º

ÎļþÀàÐÍ
¸ÃÊôÐÔÖ¸¶¨ÈçºÎ½«ÎļþµÄÊý¾ÝÆ¥Åä³ÉÊÊÓÚ´«ÊäµÄ¸ñʽ£¬Ò»¹²ÓÐËÄÖÖ¿ÉÄܵÄÑ¡Ôñ£º

ASCIIÎļþÀàÐÍ
ÔÚ·¢ËͶˣ¬Îļþ´Ó±¾µØÎı¾Îļþ¸ñʽת»»Îª NVT ASCII¸ñʽ£¬Ã¿ÐнáÊøÓÐÒ»¸öCR/LF¶ÔÀ´±êʶ¡£ ÔÚ½ÓÊնˣ¬ÔÙ±»×ª»»Îª±¾µØµÄÎı¾¸ñʽ¡£

Õâ˵Ã÷ÁËΪʲôUnixÖ÷»úÖ®¼ä´«ÊäÎı¾ÎļþΪºÎ´«ÊäµÄÊý¾ÝÁ¿Òª´óÓÚÎļþµÄʵ¼Ê´óС¡£Èô´«ÊäÒ»¶Î¶Ë»ò´«ÊäÁ½¶Ë¶¼²»Ê¹ÓÃASCIIÎı¾±àÂ룬ÔòÊÇÓ¦¸ÃÓÉÊý¾Ý´«Êä¹ý³ÌÀ´ÊµÏÖ±¾µØ±àÂëºÍNVT ASCII ±àÂëÖ®¼äµÄת»»¡£

EBCDICÎļþÀàÐÍ
ÀàËÆÓÚASCII£¬Çø±ð½ö½öÉÏʹÓÃEBCDIC×Ö·û±àÂë

ͼÏó (»ò¶þ½øÖÆ)ÎļþÀàÐÍ
ÎļþÒÔ±¾µØ´«ÊäÄÚÈÝ´«Ê䣬ÔÚÔ¶¶ËÒÔͬ±¾µØÍêÈ«ÏàͬµÄÄÚÈÝ´æ´¢¡£

±¾µØÎļþϵͳ
ÓÃÔÚ×Ö½Ú´óС²»ÊÇ8λµÄ»·¾³Ï¡£Ã»×Ö½ÚλÊýÓÉ·¢ËÍÕßÖ¸¶¨¡£

ÔÚʵ¼ÊÓ¦ÓÃÖУ¬Ö»ÓÐASCIIºÍͼÏó¸ñʽʹÓõĽ϶ࡣ

¸ñʽ¿ØÖÆ
¸ÃÊôÐÔÊǺͽ«Îı¾Îļþ×îºó´«Ë͵½´òÓ¡É豸Ïà¹ØµÄ£¬ÆäÖÐÓжàÖÖ·½Ê½À´ÊµÏÖ½«´¹Ö±¸ñʽÐÅÏ¢±àÂëµ½ÎļþÖУ¬°üÀ¨Ö¸Ê¾Ò»¸öÐÂÒ³¿ªÊ¼µÄ·½Ê½¡£ÓÐÈçÏ·½Ê½¿É¹©Ñ¡Ôñ£º

ÎÞÐë´òÓ¡¸ñʽ¿ØÖÆ£¬ÕâÊÇȱʡֵ
Telnet´òÓ¡¿ØÖÆ£¬ÔÚtelnetЭÒéÖж¨ÒåµÄ¿ØÖÆ×Ö·û°üº¬ÔÚÊý¾ÝÁ÷ÖС£.
Fortran´òÓ¡¿ØÖÆ£¬
¸ÃÊôÐÔÔÚʵ¼ÊÖкÜÉÙʹÓá£

½á¹¹
Îļþ¿ÉÒÔÓµÓÐÄÚ²¿½á¹¹£¬ÔÚ´«ÊäÖиýṹ±»±£Áô¡£ÓÉÊý¾Ý´«Êä¹ý³ÌÀ´¸ºÔðÔÚ´«ÊäÖеĽṹ¼°±¾µØ½á¹¹Ö®¼äÏ໥ƥÅ䣬ÓÐÈýÖÖ¿ÉÄÜÐÔ£º

Îļþ½á¹¹
Õâʵ¼ÊÉÏÒâζ×ÅÎļþ±»¿´×÷ûÓÐÄÚ²¿½á¹¹µÄÁ¬ÐøµÄ×Ö½ÚÁ÷¡£

¼Ç¼½á¹¹
ÎļþÊÇÓÐһϵÁмǼ×é³ÉµÄ½á¹¹¡£ÕâÖ»ÊÊÓÃÓÚÎı¾Îļþ¡£

Ò³Ãæ½á¹¹
Ò²¿ÉÒÔ³Æ×ö¿é½á¹¹¡£Ã¿Ò»Ò³¶¼°éËæÒ»¸öÒ³ºÅÀ´´«Ê䣬´Ó¶øÒÔ˳ÐòµÄ·½Ê½À´Íê³É´«Êä¡£

Ò³Ãæ½á¹¹ºÜÉÙÔÚʵ¼ÊÖÐÓöµ½¡£¼Ç¼½á¹¹Ò²²»ÊǺܳ£¼û¡£¶ÔÓÚÎı¾ÎļþʹÓÃASCIIÎļþÀàÐÍ¿ÉÒÔ»ñµÃÏàͬµÄЧ¹û¡£

´«Êäģʽ
¸ÃÊôÐÔ¿ÉÒÔÈ¡Èý¸ö²»Í¬µÄÖµ£º

Á÷ģʽ
ÎļþµÄÒÔ×Ö½ÚÁ÷µÄ·½Ê½´«Êä¡£

¿éģʽ
ÎļþÒÔÒ»¸ö¿éÁ¬½ÓÒ»¸ö¿éµÄ·½Ê½´«Ê䣬ÿ¸ö¿éµÄ¿ªÍ·¶¼ÓÐÒ»¸öÍ·¡£

ѹËõģʽ
Ò»¸ö¼òµ¥µÄÔ˳̳¤¶ÈѹËõ±àÂë±»Ó¦Óã¬À´Ñ¹ËõÁ¬ÐøµÄÏàͬµÄ×Ö½Ú¡£

ʵ¼ÊÖУ¬Ò»°ãÖ»ÓÐÁ÷ģʽ±»Ê¹Ó᣶øѹËõÒ»°ãͨ¹ýʹÓø÷ÖÖÆäËûµÄ¹¤¾ß³ÌÐòÀ´»ñµÃ¡£

µ±Ò»´Î´«Êä±»½¨Á¢£¬¿Í»§¶ËÒ»°ãÖ¸¶¨Ò»¸ö»ò¶à¸öÇ°Ãæ˵Ã÷µÄÊôÐÔ¡£Èô·þÎñÆ÷¶Ë²»ÄÜÖ§³Öij¸öÑ¡Ï·þÎñÆ÷½«ÓÃÒ»¸ö´íÎóÐÅÏ¢À´ÏìÓ¦¿Í»§¶Ë£¬²¢²»¾ßÓÐЭÉÌ»úÖÆ¡£

FTPÌṩÁ˳ä×ãµÄÃüÁîÀ´Ê¹Óû§ºÍÔ¶³Ì½¨Á¢Á¬½Ó²¢·ÃÎÊÔ¶³ÌÎļþϵͳ¡£

2.ÃüÁî¸ñʽ

ÃüÁîÒÔNVT ASCII´®µÄ¸ñʽ±»´«Ê䡣ÿ¸öÃüÁîÒÔÈý¸ö»òËĸö´óдµÄNVT ASCII×Ö·û¿ªÊ¼£¬ºóÃæ´øÓÐÑ¡Ïî²ÎÊýºÍÒ»¸öCR/LF¶ÔÀ´±êʶÃüÁî½áÊø

Ó¦´ðÓÉÈý¸öNVT ASCIIÊý×Ö¼°Ò»¸öÑ¡ÏîÏûÏ¢×é³É¡£

Ò»¸ö³¤µÄÓ¦´ðÒ²Ðí»áÓжà¸öÏûÏ¢×é³É£¬µÚÒ»¸öÏûÏ¢µÄÈý¸öÊý×Öºó´øÓÐÒ»¸öÆÆÕۺţ¬×îºóµÄÏûÏ¢²»´øÓÐÆÆÕۺš£ÖмäµÄÏûÏ¢ÎÞÐëЯ´øÈý¸öÊý×Ö£¬µ«ÊÇÈç¹û´øÁËÈý¸öÊý×Ö£¬ÔòÒ²ÐèÒªÆÆÕۺš£

ÏÂÃæÊÇËùÓеÄÃüÁîµÄÁÐ±í¡£´øÓÐÐǺŵÄÃüÁîÒ»°ãºÜÉÙʹÓã¬ËùÒÔÍùÍùÔÚ¾ßÌåʵÏÖÖв»Ö§³Ö¡£

String Meaning
ABOR ·ÅÆú´«Êä
*ACCT ijЩϵͳ½«ÕʺźÍÓû§ÓëÎļþϵͳÏà¹ØÁª
*ALLO Ϊ¼´½«´«Ë͵ÄÎļþ·ÖÅä¿Õ¼ä¡£ºóÃæЯ´øµÄ²ÎÊýÀ´È·¶¨×Ö½ÚÊý
*APPE ½«Îļþ¸½¼Óµ½ÒѾ­´æÔÚµÄÎļþºóÃæ
CDUP ÔÚÔ¶³ÌϵͳÉϽ«µ±Ç°Ä¿Â¼Çл»µ½Éϼ¶¸¸Ä¿Â¼
CWD ¸Ä±äÔ¶³ÌϵͳµÄ¹¤×÷Ŀ¼
DELE ɾ³ýÔ¶³ÌϵͳµÄÎļþ
HELP ¶ÁÈ¡·þÎñÆ÷µÄ°ïÖúÐÅÏ¢£¬È磺֧³ÖµÄÃüÁîµÄÁбí
LIST ÔÚÒ»¸öн¨Á¢µÄÊý¾ÝÁ¬½ÓÉÏ·¢Ë͵±Ç°¹¤×÷Ŀ¼ÏµÄÎļþÃûÁбí
MKD ´´½¨Ä¿Â¼
MODE Ö¸¶¨´«Êäģʽ£¬¿ÉЯ´øµÄ²ÎÊýÊÇ£ºS¡¢B»ò C.
NLST ÔÚÒ»¸öн¨Á¢µÄÊý¾ÝÁ¬½ÓÉÏ·¢ËÍÒ»¸öµ±Ç°Ä¿Â¼Ïµġ°ÍêÈ«¡±µÄĿ¼Áбí
NOOP ¿Õ²Ù×÷£¬·ÀÖ¹Á¬½Ó¶Ïµô
PASS Ìṩһ¸öÓû§µÇ¼ÃÜÂ룬±ØÐëÁ¢¼´¸úËæÔÚUSERÃüÁîºó
*PASV Ö¸¶¨·þÎñÆ÷Êý¾Ý´«Êä¹ý³Ì¼àÌýµÈ´ý¿Í»§¶ËµÄÊý¾ÝÁ¬½ÓÁ¬½Ó½¨Á¢ÇëÇó
PORT Ö¸¶¨¿Í»§¶Ë¼àÌýµÈ´ý·þÎñÆ÷¶Ë½¨Á¢µÄÁ¬½ÓµÄ¶Ë¿ÚºÅ
PWD ÏÔʾ·þÎñÆ÷¶ËµÄµ±Ç°¹¤×÷Ŀ¼Ãû
QUIT Í˳öµÇ¼²¢ÖÕÖ¹Á¬½Ó
*REIN ÖØгõʼ»¯£¬Í˳öµÇ¼µ«ÊDz¢²»¶Ï¿ªÁ¬½Ó£¬ºóÃæ±ØÐëËæºó·¢³öÒ»¸öеÄUSERÃüÁî
*REST ´Ó·þÎñÆ÷µÄÒ»¸ö±êʶ´¦ÖØпªÊ¼´«Êä
RETR ´ÓÔ¶³Ìϵͳȡ»ØÒ»¸öÎļþ
RMD ɾ³ýÒ»¸öĿ¼
*RNFR Ö¸¶¨Òª±»ÃüÃûµÄÎļþµÄÀϵÄ·¾¶Ãû£¬Ëæºó±ØÐëÊÇÒ»¸öRNTOÃüÁî
*RNTO Ö¸¶¨Òª±»ÃüÃûµÄÎļþµÄеķ¾¶Ãû
*SITE Õ¾µãÌØÓеķþÎñÆ÷ÌṩµÄ·þÎñ
*SMNT ½á¹¹¼ÓÔØ£¬Ìṩһ¸öÎļþϵͳ½á¹¹µÄÔ¶³Ìϵͳ·¾¶Ãû
*STAT ״̬ÐÅÏ¢
STOR ÉÏÔØÒ»¸öÎļþµ½·þÎñÆ÷ÉÏ£¬ÈôÎļþÒѾ­´æÔÚÔò¸²¸Ç
*STOU ÉÏÔØÒ»¸öÎļþµ½·þÎñÆ÷ÉÏ£¬²»¸²¸ÇÒѾ­´æÔÚµÄÎļþ
STRU Ö¸¶¨Îļþ½á¹¹£¬²ÎÊý¿ÉÒÔÊÇF¡¢R»òP.
*SYST ±¨¸æÔ¶³ÌϵͳµÄ²Ù×÷ϵͳÀàÐÍ
TYPE Ö¸¶¨ÎļþÀàÐÍ£¬²ÎÊý¿ÉÒÔÊÇA¡¢E¡¢I¡¢LÖ»ÓÐTYPE AºÍTYPE I³£ÓÃ

¿ØÖÆÁ¬½ÓÃüÁîÓ¦´ðÓÐÈçÏÂÐÎʽ£º

Type Description
1yz Ö÷¶¯³õ²½Ó¦´ð£¬ÔÚ·¢ËÍÁíÒ»¸öÃüÁîÒÔÇ°µÈ´ýÁíÒ»¸öÓ¦´ð
2yz Ö÷¶¯×îºóÓ¦´ð£¬×îºóÒ»¸öÃüÁî³É¹¦½áÊø
3yz Ö÷¶¯ÖмäÓ¦´ð£¬±ØÐëÔÙ·¢ËÍÒ»¸öÃüÁî
4yz ÔÝʱ±»¶¯Ó¦´ð£¬ÒªÇóµÄ¶¯×÷µ±Ê±²»ÄÜÍê³É£¬µ«¿ÉÒÔÖØÊÔ
5yz ÓÀ¾Ã±»¶¯Ó¦´ð£¬ÒªÇóµÄ¶¯×÷²»ÄÜÍê³É£¬²»Ó¦¸ÃÖØÊÔ

"y"Êý×Ö±àÂë½øÒ»²½µÄÐÅÏ¢

Digit Meaning
0 Óï·¨´íÎó
1 ÐÅÏ¢
2 Á¬½Ó״̬
3 ÈÏÖ¤ºÍ¼ÇÕÊ
4 ±£Áô
5 File sÎļþϵͳ״̬

ÏÂÃæÊÇһЩµäÐ͵ÄÏûÏ¢£º

Number Meaning
125 Êý¾ÝÁ¬½Ó´ò¿ª£¬´«Ê俪ʼ
200 ÃüÁîOK
331 Óû§ÃûOK ÐèÒªÊäÈëÃÜÂë
425 ²»ÄÜ´ò¿ªÊý¾ÝÁ¬½Ó
452 ´íÎóдÎļþ
500 Óï·¨´íÎó-²»¿Éʶ±ðµÄÃü

¾ßÌåµÄÏêϸÇé¿ö¿ÉÒԲμûRFC

wu-FtpdµÄ¹Ù·½È¨ÍþÕ¾µãµØÖ·ÊÇ£º¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ