FTP๋ ๋ฌด์์ผ๊น
FTP๋ File Transfer Protocol์ ์ฝ์๋ก ๋ง ๊ทธ๋๋ก ํ์ผ์ ์ ์กํ๋ ํต์ ๊ท์ฝ์ ๋๋ค. FTP ์๋ฒ์ ํ์ผ๋ค์ ์ ๋ก๋, ๋ค์ด๋ก๋ํ ์ ์๋๋ก ํด์ฃผ๋ ํ๋กํ ์ฝ์ด๋ฉฐ, ์ด๋ FTP ์๋ฒ์ FTP ํด๋ผ์ด์ธํธ ๊ฐ์ ํต์ ์์ ์ด๋ฃจ์ด์ง๋๋ค.
FTP๋ Active ๋ชจ๋์ Passive ๋ชจ๋๋ผ๋ 2๊ฐ์ ๋ชจ๋๊ฐ ์กด์ฌํ๋ฉฐ ๊ฐ๊ฐ์ ๋ชจ๋์์๋ 2๊ฐ ๋๋ 2๊ฐ ์ด์์ ํฌํธ๊ฐ ์ฐ๊ฒฐ์ ๋งบ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ฌ์ฉ๋๋ ํฌํธ๋ ์ฐ๊ฒฐ์ ์ ์ดํ๋ Command ํฌํธ๊ฐ ์์ผ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ DATA ํฌํธ๊ฐ ์์ต๋๋ค.
FTP๋ TCP ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ ธ ์์ผ๋ฉฐ ๊ธฐ๋ณธ ๋์ ๋ชจ๋๋ก Active ๋ชจ๋๋ฅผ ์ฌ์ฉํ๋ฉฐ 20๋ฒ ๋๋ 1024๋ฒ ์ดํ์ ๋ฐ์ดํฐ(Data) ํฌํธ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ฐ ์ฌ์ฉํ๊ฒ ๋๊ณ , 21๋ฒ ํฌํธ๋ ์ ์ ์์ ์ฌ์ฉ๋๋ ๋ช ๋ น(Command) ํฌํธ์ ๋๋ค.
Active ๋ชจ๋
FTP Active ๋ชจ๋์ ๋์ ๋ฐฉ์์ ๊ทธ๋ฆผ์ผ๋ก ๋ณด๋ฉด ์๋์ ๊ฐ์ต๋๋ค. ์ฐธ๊ณ ๋ก ์๋ ์ฌ์ฉ๋ ๋ช ๋ น(Command) ํฌํธ์ ๋ฐ์ดํฐ(Data) ํฌํธ๋ ์๋ฒ์ ์ค์ ์์ ์์๋ก ์์ ํ์ฌ ์ฌ์ฉํ ์ ์์ต๋๋ค.

- 1) ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ 21๋ฒ ํฌํธ๋ก ์ ์ํ ํ์ ์์ ์ด ์ฌ์ฉํ ๋ ๋ฒ์งธ ํฌํธ๋ฅผ ์๋ฒ์ ๋ฏธ๋ฆฌ ์๋ ค์ค๋๋ค.
- 2) ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์๋ตํฉ๋๋ค. (acks)
- 3) ์๋ฒ์ 20๋ฒ ๋ฐ์ดํฐ ํฌํธ๋ ํด๋ผ์ด์ธํธ๊ฐ ์๋ ค์ค ๋ ๋ฒ์งธ ํฌํธ๋ก์ ์ ์์ ์๋ํฉ๋๋ค.
- 4) ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์์ฒญ์ ์๋ตํฉ๋๋ค. (acks)
์ ๊ณผ์ ์์ ์กํฐ๋ธ ๋ชจ๋๋ โํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ ์์ ํ๋ ๊ฒ์ด ์๋ ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์ ์ ์์ ํ๋ ๊ฒโ์ ํ์ธํ ์ ์์ต๋๋ค. ๋ง์ผ FTP ํด๋ผ์ด์ธํธ์ ๋ฐฉํ๋ฒฝ์ด ์ค์น๋์ด ์๋ ๋ฑ ์ธ๋ถ์์์ ์ ์์ ํ์ฉํ์ง ์๋ ์ํฉ์ด๋ผ๋ฉด FTP ์ ์์ด ์ ์์ ์ผ๋ก ์ด๋ฃจ์ด์ง์ง ์์ ๊ฒ์ ๋๋ค. ์ ์์ด ๋๋๋ผ๋ ๋ฐ์ดํฐ ๋ชฉ๋ก์ ๋ฐ์์ค์ง ๋ชปํ๊ฒ ๋๋ ๊ฒฝ์ฐ๋ ์๊ณ ์.
Passive ๋ชจ๋
์์์ ์ดํด๋ณธ Active ๋ชจ๋์ ๋จ์ ์ ํด๊ฒฐํ๊ธฐ ์ํ Passive ๋ชจ๋๋ฅผ ์ดํด๋ด ์๋ค. ์ญ์๋ ์๋ ๊ทธ๋ฆผ์์ ์ฌ์ฉ๋ ์ปค๋งจ๋ ํฌํธ์ ๋ฐ์ดํฐ ํฌํธ๋ ์๋ฒ ์ค์ ์์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ํนํ Passive ๋ชจ๋์์๋ ๋ฐ์ดํฐ ํฌํธ ๋ฒํธ๋ฅผ ํน๋ณํ๊ฒ ์ง์ ํ์ง ์๋ ๊ฒฝ์ฐ 1024 ~ 65535๋ฒ ์ค์์ ์ฌ์ฉ ๊ฐ๋ฅํ ์์ ํฌํธ๋ฅผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ํฌํธ ๋ฒํธ๋ฅผ ์ง์ ํ ๋๋ 10001 ~ 10005๋ฒ๊ณผ ๊ฐ์ด ๋ฒ์๋ฅผ ์ง์ ํ ์๋ ์์ต๋๋ค.

- 1) ํด๋ผ์ด์ธํธ๊ฐ ์ปค๋งจ๋ ํฌํธ๋ก ์ ์์ ์๋ํฉ๋๋ค. (Passive ๋ชจ๋ ์ฐ๊ฒฐ)
- 2) ์๋ฒ์์๋ ์ฌ์ฉํ ๋ ๋ฒ์งธ ํฌํธ๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ ค์ค๋๋ค.
- 3) ํด๋ผ์ด์ธํธ๋ ๋ค๋ฅธ ํฌํธ๋ฅผ ์ด์ด ์๋ฒ๊ฐ ์๋ ค์ค ํฌํธ๋ก ์ ์์ ์๋ํฉ๋๋ค.
- 4) ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์๋ตํฉ๋๋ค. (acks)
Passive ๋ชจ๋์์๋ ์์ Active ๋ชจ๋์์ ์ฌ์ฉํ๋ 20๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ 1024๋ฒ ์ดํ์ ์์์ ํฌํธ๋ฅผ ๋ฐ์ดํฐ ์ฑ๋ ํฌํธ๋ก ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค.
์ฐ๊ฒฐ ๋ฐฉ์์ ๋ฐ๋ฅธ ์ฃผ์์ฌํญ
Active ๋ชจ๋์ ๊ฒฝ์ฐ๋ ํด๋ผ์ด์ธํธ ์ธก์ ๋ฐฉํ๋ฒฝ์ 20๋ฒ ํฌํธ๊ฐ ์ฐจ๋จ๋์ด ์๋ค๋ฉด, ๋ฐ์ดํฐ ์ฑ๋ ์ฐ๊ฒฐ์ด ๋ถ๊ฐ๋ฅํด์ง๋๋ค. ์ฐ๊ฒฐ์ ๋๋๋ผ๋ ๋ฐ์ดํฐ ์กฐํ๋ถํฐ ์คํจ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์๋ฒ ์ธก์ 20๋ฒ ํฌํธ๋ ์์๋ฐ์ด๋(OUTBOUND, ๋ด ์๋ฒ์์ ์ธ๋ถ ์๋ฒ๋ก ๋ณด๋ด๋ ์์ฒญ) ํ์ฉ, ํด๋ผ์ด์ธํธ๋ ์ธ๋ฐ์ด๋(INBOUND, ์ธ๋ถ์์ ๋ด ์๋ฒ๋ก ๋ค์ด์ค๋ ์์ฒญ) ํ์ฉ์ด ๋ฐฉํ๋ฒฝ ์ค์ ์ ํ์ํฉ๋๋ค.
Passive ๋ชจ๋์ ๊ฒฝ์ฐ๋ ์๋ฒ ์ธก์ ๋ฐ์ดํฐ ์ฑ๋ ํฌํธ๊ฐ ๋งํ์๋ ๊ฒฝ์ฐ ๋ฐ์ดํฐ ์ฑ๋ ์ฐ๊ฒฐ์ด ๋ถ๊ฐ๋ฅํ๊ฒ ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์์ ์๊ฐํ ๊ฒ์ฒ๋ผ ๋ฐ์ดํฐ ์ฑ๋ ํฌํธ์ ๋ฒ์๋ฅผ ์ง์ ํ ์ ์๋๋ฐ, ๋ณ๋๋ก ์ง์ ํ์ง ์๋ ๊ฒฝ์ฐ๋ 1024 ~ 65535๋ฒ์ ํฌํธ๋ฅผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ผ์ INBOUND ๋ชจ๋ ํ์ฉ์ด ํ์ํ๊ฒ ๋๋๋ฐ, ์๋ฒ ์ธก์์ ๋ฐ์ดํฐ ์ฑ๋ ํฌํธ ๋ฒ์๋ฅผ ์ง์ ํ์ฌ ํน์ ๋ฒ์์ ํฌํธ๋ง ํ์ฉํด์ฃผ๋ฉด ๋ชจ๋ ํฌํธ ํ์ฉ์ ๋ฌธ์ ๋ฅผ ์ด๋ ์ ๋ ํด๊ฒฐํ ์ ์์ต๋๋ค.