์ƒ์„ธ ์ปจํ…์ธ 

๋ณธ๋ฌธ ์ œ๋ชฉ

์‰˜ ์Šคํฌ๋ฆฝํŠธ๋กœ FTP ์ž‘์—… ์ž๋™ํ™”ํ•˜๊ธฐ / FTP ์˜ต์…˜ ๋ฐ ์ปค๋งจ๋“œ

IT/Linux>Shell

by J KIMS 2022. 9. 13. 12:22

๋ณธ๋ฌธ

๋ฐ˜์‘ํ˜•

๐Ÿ’กFTP๋ž€?

<File Transfer Protocol>๋กœ ํŒŒ์ผ์„ ์ „์†กํ•˜๊ธฐ ์œ„ํ•œ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์˜ ์ผ์ข…์ด๋‹ค.

FTP๋ฅผ ํ†ตํ•ด ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์— ํŒŒ์ผ์„ ์ฃผ๊ณ ๋ฐ›๋Š” ๊ฒŒ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

์ต์ˆ™ํ•œ HTTP(HypterText Transfer Protocol)๋„ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ ์ค‘ ํ•˜๋‚˜๋‹ค. 

์ด๋Š” ์›น๋ธŒ๋ผ์šฐ์ €์—์„œ html๋กœ ํ‘œ์‹œ๋œ ํŒŒ์ผ์„ ์„œ๋ฒ„์—์„œ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค.

 

FTP์™€ HTTP ๋‘˜๋‹ค ํŒŒ์ผ์„ ์ฃผ๊ณ ๋ฐ›๋Š” ๊ฑด ๊ฐ™์ง€๋งŒ ์‚ฌ์šฉ๋˜๋Š” ํฌํŠธ๊ฐ€ ๋‹ค๋ฅด๋‹ค.

HTTP๋Š” 80๋ฒˆ ํฌํŠธ๋ฅผ ์“ฐ๊ณ , FTP๋Š” 20๋ฒˆ๊ณผ 21๋ฒˆ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

FTP๋Š” ๋‘๊ฐ€์ง€ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ฌ์„ธํ•œ ์ œ์–ด์™€ ํฐ ํŒŒ์ผ์˜ ์ „์†ก์„ ๊ฐ€๋Šฅ์ผ€ํ•œ๋‹ค.

(ftp ์‚ฌ์šฉ์ค‘ 20๋ฒˆ์ด๋‚˜ 21๋ฒˆ ํฌํŠธ๊ฐ€ ๋‹ซํ˜€์žˆ์–ด์„œ ์—๋Ÿฌ๊ฐ€ ์ƒ๊ธฐ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Œ)

 

FTP ์„œ๋ฒ„๋Š” ์ต๋ช…(anonymous)์„œ๋ฒ„์™€ ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒƒ ๋‘๊ฐ€์ง€๋กœ ๋‚˜๋‰˜๋Š”๋ฐ,

ํ›„์ž์˜ ๊ฒฝ์šฐ ๋กœ๊ทธ์ธ ์•„์ด๋””์™€ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

 

FTP๋Š” ํ†ต์‹ ์ด ์•”ํ˜ธํ™” ๋˜์–ด ์žˆ์ง€ ์•Š์•„ ์ œ3์ž์—๊ฒŒ ์ •๋ณด๊ฐ€ ์œ ์ถœ๋  ์œ„ํ—˜์ด ์žˆ๋‹ค.

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— SSH ํ”„๋กœํ† ์ฝœ๋กœ ์•”ํ˜ธํ™”๋œ SFTP๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒŒ ์•ˆ์ „ํ•˜๋‹ค.

 


โš’๏ธ ์‰˜ ์Šคํฌ๋ฆฝํŠธ๋กœ ftp ์ž‘์—… ์ž๋™ํ™” ํ•˜๊ธฐ

 

ftp์— ์ ‘์†ํ• ๋•Œ๋งˆ๋‹ค ๋กœ๊ทธ์ธ ํ•˜๋Š” ๊ฒŒ ๋ฒˆ๊ฑฐ๋กญ๋‹ค๋ฉด

๋‹ค๋ฅธ ์ฝ”๋“œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์‰˜ ์Šคํฌ๋ฆฝํŠธ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋จผ์ € ๋ณ€์ˆ˜๋“ค์— ์ ‘์†ํ•˜๊ณ ์ž ํ•˜๋Š” ํ˜ธ์ŠคํŠธ๋ช…, ์œ ์ €๋ช…, ๋น„๋ฐ€๋ฒˆํ˜ธ ๋“ฑ๋“ฑ์„ ์ €์žฅํ•ด๋‘”๋‹ค.

๊ทธ๋‹ค์Œ ftp -invp $HOST๋กœ ftp ๋ชจ๋“œ๋กœ ์ „ํ™˜, ์ ‘์† ํ•œ๋‹ค.

 

๊ฐ ์˜ต์…˜์— ๋Œ€ํ•œ ์„ค๋ช…

-i ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋ชจ๋“œ๋ฅผ ๋ฌดํšจํ™”. ํŒŒ์ผ ์—…๋กœ๋“œ ํ›„ ํ™•์ธ ๋ฉ”์„ธ์ง€ ์ƒ๋žต
-n ์ž๋™ ๋กœ๊ทธ์ธ์„ ๋ฌดํšจํ™”ํ•จ. ์Šคํฌ๋ฆฝํŠธ์—์„œ "user" ์ปค๋งจ๋“œ๋กœ ๋กœ๊ทธ์ธํ•˜๊ธฐ ์œ„ํ•ด ํ•„์šฉํ•จ.
-v ์„œ๋ฒ„์—์„œ ์ฒ˜๋ฆฌํ•œ ์ž‘์—… ๋‚ด์šฉ ํ‘œ์‹œ
-p passive ๋ชจ๋“œ๋กœ ์ ‘์†

 

ํŒŒ์ผ ์ „์†ก ๊ณผ์ •์—์„œ ๊ณ„์† ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š”๋ฐ ๋ฐฉํ™”๋ฒฝ ๋•Œ๋ฌธ์ธ ๋“ฏํ•ด์„œ ํŒจ์‹œ๋ธŒ ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค. 

(ํŒจ์‹œ๋ธŒ ๋ชจ๋“œ์— ๊ด€ํ•ด์„  ํ•˜๋‹จ ์„ค๋ช… ์ฐธ์กฐ)

 

FTP ์ „์šฉ ์ปค๋งจ๋“œ

open <์„œ๋ฒ„์ฃผ์†Œ> ์„œ๋ฒ„์— ์ ‘์†
close ์„œ๋ฒ„์™€ ์—ฐ๊ฒฐ ๋Š์Œ
quit ftp๋ชจ๋“œ๋ฅผ ์ข…๋ฃŒ
ls ์„œ๋ฒ„ ๋‚ด ํŒŒ์ผ, ๋””๋ ‰ํ† ๋ฆฌ ํ‘œ์‹œ
mkdir ๋””๋ ‰ํ† ๋ฆฌ ์ž‘์„ฑ
chmod <๊ถŒํ•œ> <ํŒŒ์ผ๋ช…> ํŒŒ์ผ์˜ ๊ถŒํ™˜์„ ๋ฐ”๊ฟ€๋•Œ ์‚ฌ์šฉ
cd ftp์—์„œ ๋””๋ ‰ํ† ๋ฆฌ ๋ณ€๊ฒฝ
lcd ๋กœ์ปฌ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝ
asc ์•„์Šคํ‚ค๋ชจ๋“œ๋กœ ํŒŒ์ผ ์ทจ๊ธ‰
bin ๋ฐ”์ด๋„ˆ๋ฆฌ๋ชจ๋“œ๋กœ ํŒŒ์ผ ์ทจ๊ธ‰
put <ํŒŒ์ผ๋ช…> ์„œ๋ฒ„์— ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•จ
mput <ํŒŒ์ผ1> <ํŒŒ์ผ2> <ํŒŒ์ผ3> ๋ณต์ˆ˜์˜ ํŒŒ์ผ์„ ์—…๋กœ๋“œ
get <ํŒŒ์ผ๋ช…> ์„œ๋ฒ„์—์„œ ๋กœ์ปฌ๋กœ ํŒŒ์ผ ๋‹ค์šด
mget <ํŒŒ์ผ1> <ํŒŒ์ผ2> <ํŒŒ์ผ3> ๋ณต์ˆ˜์˜ ํŒŒ์ผ์„ ๋‹ค์šดํ•จ

 

ls, mkdir, chmod ๊ฐ™์€ ๊ฑด ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฆฌ๋ˆ…์Šค์—์„œ ์“ฐ๋Š” ์ปค๋งจ๋“œ๋ž‘ ๊ฐ™๋‹ค.

์ด๋ฒˆ์—” ftp ์„œ๋ฒ„์—์„œ ํŒŒ์ผ์„ ๊ฐ€์ ธ์˜ฌ ๊ฑฐ๊ธฐ ๋•Œ๋ฌธ์— get ์ปค๋งจ๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค.

 

cd๋Š” ftp์ƒ์—์„œ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ , lcd๋Š” ๋กœ์ปฌ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝํ•œ๋‹ค.

์ฆ‰ cd๋กœ ํŒŒ์ผ์ด ์žˆ๋Š” ๊ณณ์„ ์ฐพ์•„ lcd๋กœ ๋กœ์ปฌ์— ๋‹ค์šด๋ฐ›์„ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

 


๐Ÿ’ก์•กํ‹ฐ๋ธŒ๋ชจ๋“œ vs ํŒจ์‹œ๋ธŒ๋ชจ๋“œ

 

์•กํ‹ฐ๋ธŒ๋ชจ๋“œ๋Š”

์„œ๋ฒ„ -> ์ „์†ก์šฉ(data connection) -> ํด๋ผ์ด์–ธํŠธ

์„œ๋ฒ„ <- ์ œ์–ด์šฉ(control connection) <- ํด๋ผ์ด์–ธํŠธ

๋ฐฉ์‹์œผ๋กœ FTP ํƒ„์ƒ๊ณผ ํ•จ๊ป˜ ์ƒ๊ฒจ๋‚œ ์˜ค๋ž˜๋œ ๋ฐฉ์‹์ด๋‹ค.

 

์•กํ‹ฐ๋ธŒ๋ชจ๋“œ์—์„œ๋Š” ์ „์†ก์šฉ ํฌํŠธ 20๋ฒˆ์„ ์‚ฌ์šฉํ•œ๋‹ค.

 

ํŒจ์‹œ๋ธŒ๋ชจ๋“œ๋Š”

ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ ์„œ๋ฒ„์— ๋ฐ์ดํ„ฐ ์ปค๋„ฅ์…˜์„ ์—ฐ๊ฒฐํ•œ๋‹ค.

์ปจํŠธ๋กค ์ปค๋„ฅ์…˜๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋‹ค. ์ด ๊ฒฝ์šฐ ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ ์ ‘์†์„ ๋„๋งก๋Š”๋‹ค๋Š” ์ ์ด ๋‹ค๋ฅด๋‹ค.

 

๊ธฐ๋ณธ์ ์œผ๋กœ FTP๋Š” 20๋ฒˆ์„ ์ „์†ก์šฉ์œผ๋กœ, 21๋ฒˆ์„ ์ œ์–ด์šฉ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š”๋ฐ

ํŒจ์‹œ๋ธŒ ๋ชจ๋“œ์˜ ์ „์†ก์šฉ ํฌํŠธ๋Š” ๋žœ๋ค์œผ๋กœ ์ •ํ•ด์ง„๋‹ค. 

 

์•กํ‹ฐ๋ธŒ ๋ชจ๋“œ์˜ ์ฃผ์˜์ ์€ ์„œ๋ฒ„->ํด๋ผ์ด์–ธํŠธ๋กœ ์ ‘์† ์‹œ๋„๋ฅผ ํ•˜๋Š” ๊ณผ์ •์—์„œ ๋ฐฉํ™”๋ฒฝ์— ํ†ต์‹ ์ด ๋ง‰ํžˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ.

๋”ฐ๋ผ์„œ ์•กํ‹ฐ๋ธŒ ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„  ๋ฐฉํ™”๋ฒฝ์˜ ํฌํŠธ ์„ค์ •์ด ํ•„์š”ํ•˜๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Š” ๋ณด์•ˆ์ƒ ์œ„ํ—˜ํ•˜๋ฏ€๋กœ ํŒจ์‹œ๋ธŒ ๋ชจ๋“œ๋ฅผ ์“ฐ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

 

 

๐Ÿ“„Reference

1. ใ‚ขใ‚ฏใƒ†ใ‚ฃใƒ–ใƒขใƒผใƒ‰ใจใƒ‘ใƒƒใ‚ทใƒ–ใƒขใƒผใƒ‰ใฎ้•ใ„ใ‚’ๅพนๅบ•่งฃ่ชฌ๏ผITใƒˆใƒฌใƒณใƒ‰

2. ใƒ•ใ‚กใ‚คใƒซ่ปข้€ใฎใ€ŒFTPใ€ใจใฏ๏ผŸ้€šไฟกใฎไป•็ต„ใฟใ‚„ใƒ‡ใƒกใƒชใƒƒใƒˆใชใฉใ‚’่งฃ่ชฌ

3. ftp, windowsใ‚ณใƒžใƒณใƒ‰่™Žใฎๅทป

4. Shell Script to Put File in a FTP Server

๋ฐ˜์‘ํ˜•

๊ด€๋ จ๊ธ€ ๋”๋ณด๊ธฐ

๋Œ“๊ธ€ ์˜์—ญ