[Protocol] πŸ“HTTP, HTTPS, FTP, FTPS, SSH, IP, κ²Œμ΄νŠΈμ›¨μ΄, μ„œλΈŒλ„·λ§ˆμŠ€ν¬, DNS, CLI κ°œλ… 정리

5
post-thumbnail

πŸ“ ν–‡κ°ˆλ¦¬λŠ” κ°œλ…μ„ λ‹€ λͺ¨μ•„λ³΄μž

0. λ¨Όμ €, ν”„λ‘œν† μ½œμ΄λž€ 뭘까 ?


μ»΄ν“¨ν„°λ‚˜ 원거리 톡신 μž₯λΉ„ μ‚¬μ΄μ—μ„œ λ©”μ‹œμ§€λ₯Ό μ£Όκ³  λ°›λŠ” 양식과 κ·œμΉ™μ˜ 체계

1. μš°μ„  HTTP와 HTTPS의 κΈ°λ³Έκ°œλ…μ„ ν•œλ²ˆ μ•Œμ•„λ³΄μž.

  • HTTPλŠ” ν•˜μ΄νΌ ν…μŠ€νŠΈ 전솑 ν”„λ‘œν† μ½œμ˜(Hypertext Transfer Protocol)의 μ•½μžμž…λ‹ˆλ‹€. μ„œλ‘œ λ‹€λ₯Έ μ‹œμŠ€ν…œλ“€ μ‚¬μ΄μ—μ„œ 톡신을 μ£Όκ³ λ°›κ²Œ ν•΄μ£ΌλŠ” κ°€μž₯ 기초적인 ν”„λ‘œν† μ½œμ΄λ‹€.. μ—¬λŸ¬λΆ„μ΄ μ›Ή μ„œν•‘μ„ ν•  λ•Œ μ„œλ²„μ—μ„œ μ—¬λŸ¬λΆ„μ˜ λΈŒλΌμš°μ €λ‘œ 데이터λ₯Ό 전솑해 μ£ΌλŠ” μš©λ„λ‘œ κ°€μž₯ 많이 μ‚¬μš©λœλ‹€. 그리고 μΈν„°λ„·μ˜ μ΄ˆκΈ°μ— λͺ¨λ“  μ›Ήμ‚¬μ΄νŠΈμ—μ„œ 기본적으둜 μ‚¬μš©λ˜μ—ˆλ˜ ν”„λ‘œν† μ½œμ΄κΈ°λ„ ν•˜λ‹€.

  • HTTPSλŠ” ν•˜μ΄νΌ ν…μŠ€νŠΈ 전솑 ν”„λ‘œν† μ½œ λ³΄μ•ˆ(Hypertext Transfer Protocol Secure)의 μ•½μžμž…λ‹ˆλ‹€. 일반 HTTP ν”„λ‘œν† μ½œμ˜ λ¬Έμ œμ μ€ μ„œλ²„μ—μ„œλΆ€ν„° λΈŒλΌμš°μ €λ‘œ μ „μ†‘λ˜λŠ” 정보가 μ•”ν˜Έν™”λ˜μ§€ μ•ŠλŠ”λ‹€λŠ” κ²ƒμ΄μ—ˆλŠ”λ°μš”. 이 말은 즉, 데이터가 μ‰½κ²Œ λ„λ‚œλ‹Ήν•  수 μžˆλ‹€λŠ” κ²ƒμ΄μ—ˆμŠ΅λ‹ˆλ‹€. HTTPS ν”„λ‘œν† μ½œμ€ SSL(λ³΄μ•ˆ μ†ŒμΌ“ 계측)을 μ‚¬μš©ν•¨μœΌλ‘œμ¨ 이 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. SSL은 μ„œλ²„μ™€ λΈŒλΌμš°μ € 사이에 μ•ˆμ „ν•˜κ²Œ μ•”ν˜Έν™”λœ 연결을 λ§Œλ“€ 수 있게 도와주고, μ„œλ²„ λΈŒλΌμš°μ €κ°€ λ―Όκ°ν•œ 정보λ₯Ό 주고받을 λ•Œ 이것이 λ„λ‚œλ‹Ήν•˜λŠ” 것을 λ§‰μ•„μ€λ‹ˆλ‹€.

  • 두 ν”„λ‘œν† μ½œ 사이에 κ°€μž₯ μ»€λ‹€λž€ 차이점은 λ°”λ‘œ SSL μΈμ¦μ„œμž…λ‹ˆλ‹€. SSL μΈμ¦μ„œλŠ” μ‚¬μš©μžκ°€ μ‚¬μ΄νŠΈμ— μ œκ³΅ν•˜λŠ” 정보λ₯Ό μ•”ν˜Έν™”ν•˜λŠ”λ°, μ‰½κ²Œ λ§ν•΄μ„œ 데이터λ₯Ό μ•”ν˜Έλ‘œ λ°”κΎΌλ‹€κ³  μƒκ°ν•˜λ©΄ μ‰½μŠ΅λ‹ˆλ‹€. μ΄λ ‡κ²Œ μ „μ†‘λœ λ°μ΄ν„°λŠ” μ€‘κ°„μ—μ„œ λˆ„κ΅°κ°€ 훔쳐 λ‚Έλ‹€κ³  ν•˜λ”λΌλ„ 데이터가 μ•”ν˜Έν™”λ˜μ–΄μžˆκΈ° λ•Œλ¬Έμ— 해독할 수 μ—†μŠ΅λ‹ˆλ‹€. κ·Έ 외에도 HTTPSλŠ” TLS(전솑 계측 λ³΄μ•ˆ) ν”„λ‘œν† μ½œμ„ ν†΅ν•΄μ„œλ„ λ³΄μ•ˆμ„ μœ μ§€ν•©λ‹ˆλ‹€.

2. FTP / SSH


FTPλŠ” File Transfer Protocol둜 말 κ·ΈλŒ€λ‘œ νŒŒμΌμ„ μ „μ†‘ν•˜λŠ” 톡신 κ·œμ•½μ΄λ‹€. TCP/IP ν”„λ‘œν† μ½œ 기반으둜 μ„œλ²„μ™€ ν΄λΌμ΄μ–ΈνŠΈ κ°„μ˜ 파일 전솑을 μœ„ν•œ ν”„λ‘œν† μ½œμ΄λ‹€.

SSH(Secure Shell)
원격 컴퓨터에 μ•ˆμ „ν•˜κ²Œ μ—‘μ„ΈμŠ€ν•˜κΈ° μœ„ν•œ μœ λ‹‰μŠ€ 기반의 λͺ…λ Ή μΈν„°νŽ˜μ΄μŠ€ 및 ν”„λ‘œν† μ½œ. κ°•λ ₯ν•œ μ•”ν˜Έν™” κΈ°λŠ₯을 κ΅¬ν˜„ν•΄ λͺ¨λ“  데이터가 μ•”ν˜Έν™” λ˜κΈ°μ— 높은 λ³΄μ•ˆμ„ 지원

secureFX && secureCRTλŠ” FTP(FX)λ‚˜ SSH(CRT)λ₯Ό λ„μ™€μ£ΌλŠ” 툴 정도이닀.
λ‹€λ₯Έκ±Έλ‘œ λŒ€μ²΄ν•΄μ„œ μ‚¬μš©ν•  μˆ˜λ„ 있고, sshλŠ” μœˆλ„μš°μ—μ„œ ssh μ—°κ²°ν•˜λŠ”κ±΄λ° ssh root(ID)@(IP) 치면 μ—°κ²°ν•  수 μžˆλ‹€. μ—°κ²°λ˜λ©΄ password μž…λ ₯ μ°½ λ‚˜μ˜€λŠ”λ° μž…λ ₯ν•˜λ©΄ μ—°κ²°λ˜λŠ”λ° CRT νˆ΄λ³΄λ‹€ λΆˆνŽΈν•  수 μžˆλ‹€.

3. IP / κ²Œμ΄νŠΈμ›¨μ΄ / μ„œλΈŒλ„·λ§ˆμŠ€ν¬


IP address
각각의 컴퓨터듀이 ν•˜λ‚˜μ˜ λ„€νŠΈμ›Œν¬ μ•ˆμ—μ„œ κ³ μœ ν•˜κ²Œ 가지고 μžˆλŠ” μ£Όμ†Œ. λ”°λΌμ„œ, λ‹€λ₯Έ μ‚¬λžŒκ³ΌλŠ” IPκ°€ 쀑볡이 될 수 μ—†μŠ΅λ‹ˆλ‹€.

게이트 웨이(Gate Way)
게이트 μ›¨μ΄λž€, 인터넷을 ν†΅ν•˜μ—¬ μ–΄λ””λ‘ κ°€ λ‚˜κ°€κ³ μž ν• λ•Œ 거치게 λ˜λŠ” 제일 첫번째 관문이라고 μƒκ°ν•˜λ©΄ 쉽닀.
예λ₯Ό λ“€μ–΄ λ‚˜λŠ” 'μ„œμšΈμ‹œ 쀑ꡬ 닀동 000λ²ˆμ§€' 에 μ‚΄κ³ μžˆκ³ , 'μ„œμšΈμ‹œ 쀑ꡬ νƒœν‰λ‘œ1κ°€ 000λ²ˆμ§€' 에 μ‚΄κ³ μžˆλŠ” 친ꡬ의 집을 μ°Ύμ•„κ°€κ³ μž ν•©λ‹ˆλ‹€.
자 이제, μžμ‹ μ˜ 집을 λ‚˜μ™”λ‹€κ³  ν•©λ‹ˆλ‹€. 그럼 집을 λ‚˜μ˜¨ ν˜„μž¬ μžμ‹ μ˜ μ£Όμ†ŒλŠ”'μ„œμšΈμ‹œ 쀑ꡬ 닀동' μž…λ‹ˆλ‹€. 집을 λ‚˜μ™”κΈ° λ•Œλ¬Έμ— λ²ˆμ§€μˆ˜λŠ” λΉΌμ•Όν•œλ‹€.
μ΄λŸ°μ‹μœΌλ‘œ λ”°μ§€κ²Œ 되면 μžμ‹ μ˜ μ§‘μ—μ„œ 친ꡬ μ§‘μœΌλ‘œ κ°€κΈ°μœ„ν•œ 경둜 μ£Όμ†ŒλŠ” μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.
'μ„œμšΈμ‹œ 쀑ꡬ 닀동 000λ²ˆμ§€' -> 'μ„œμšΈμ‹œ 쀑ꡬ 닀동' -> 'μ„œμšΈμ‹œ 쀑ꡬ' -> 'μ„œμšΈμ‹œ 쀑ꡬ νƒœν‰λ‘œ1κ°€' -> 'μ„œμšΈμ‹œ 쀑ꡬ νƒœν‰λ‘œ1κ°€ 000λ²ˆμ§€'
λ”°λΌμ„œ '게이트 웨이'κ°€ λ˜λŠ” μ£Όμ†ŒλŠ” 'μ„œμšΈμ‹œ 쀑ꡬ 닀동' μž…λ‹ˆλ‹€.

μ„œλΈŒλ„·λ§ˆμŠ€ν¬
λ„€νŠΈμ›Œν¬ μ£Όμ†Œμ™€ IPμ£Όμ†Œλ₯Ό κ΅¬λΆ„ν•˜κΈ° μœ„ν•˜μ—¬ μ‚¬μš©λ˜λŠ” 숫자 이닀.
μ‰½κ²Œ 말해 예λ₯Όλ“€μ–΄ 'μ„œμšΈμ‹œ 쀑ꡬ 닀동 000λ²ˆμ§€' λΌλŠ” μ£Όμ†Œκ°€ μžˆμ„ λ•Œ
이 μ£Όμ†Œμ—μ„œ μ§€μ—­μ£Όμ†Œμ™€ μžμ‹ μ˜ 직접적인 λ²ˆμ§€μˆ˜λ₯Ό κ΅¬λΆ„ν•˜κΈ° μœ„ν•˜μ—¬ μ‚¬μš©ν•©λ‹ˆλ‹€.
(μ„œμšΈμ‹œ 쀑고 닀동/ κΉŒμ§€λŠ” 지역 μ£Όμ†Œμ΄κ³  뒀에 000λ²ˆμ§€κ°€ μžμ‹ μ˜ μ£Όμ†Œ 이닀.)

4. DNS λž€ ?


DNSλŠ” λ„λ©”μΈλ„€μž„μ„œλ²„λ₯Ό μΌμ»«λŠ”λ‹€. 인터넷은 μ„œλ²„λ“€μ„ μœ μΌν•˜κ²Œ ꡬ뢄할 수 μžˆλŠ” IPμ£Όμ†Œλ₯Ό κΈ°λ³Έμ²΄κ³„λ‘œ μ΄μš©ν•˜λŠ”λ° 숫자둜 이루어진 쑰합이라 인간이 κΈ°μ–΅ν•˜κΈ°μ—λŠ” 무리가 λ”°λ₯Έλ‹€. λ”°λΌμ„œ DNSλ₯Ό μ΄μš©ν•΄ IPμ£Όμ†Œλ₯Ό 인간이 κΈ°μ–΅ν•˜κΈ° νŽΈν•œ μ–Έμ–΄μ²΄κ³„λ‘œ λ³€ν™˜ν•˜λŠ” μž‘μ—…μ΄ ν•„μš”ν•œλ° 이 역할을 DNSκ°€ ν•˜λŠ” 것이닀.
DNSμ„œλ²„λŠ” 도메인에 μ—°κ²°λœ μ„œλ²„IPλ₯Ό μ°Ύμ•„μ£ΌλŠ” 역할을 λ‹΄λ‹Ήν•©λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄ λ³΄κ² μŠ΅λ‹ˆλ‹€. 고도λͺ°μ— μ ‘μ†ν•˜κΈ° μœ„ν•΄ μ£Όμ†Œμ°½μ— godo.co.kr 도메인을 μž…λ ₯ν•©λ‹ˆλ‹€. 그러면 μ»΄ν“¨ν„°λŠ” godo.co.kr도메인에 μ—°κ²°λœ λ„€μž„μ„œλ²„λ‘œ μ ‘μ†ν•˜μ—¬ μ„œλ²„IPλ₯Ό μš”μ²­ν•©λ‹ˆλ‹€. μš”μ²­ 받은 λ„€μž„μ„œλ²„λŠ” Godo.co.kr의 μ„œλ²„ IP μ£Όμ†Œλ₯Ό 찾은 λ’€, μ»΄ν“¨ν„°μ—κ²Œ IPμ£Όμ†Œλ₯Ό μ•Œλ €μ€λ‹ˆλ‹€. κ·Έ ν›„ μ»΄ν“¨ν„°λŠ” 전달 받은 μ„œλ²„IP둜 μ ‘μ†ν•˜μ—¬ GODO.CO.KR의 정보λ₯Ό μ‚¬μ΄νŠΈμ— λ³΄μ—¬μ£Όκ²Œ λ©λ‹ˆλ‹€. 즉 고도λͺ° 접속이 μ™„λ£Œλ©λ‹ˆλ‹€.

이처럼 도메인에 μ—°κ²°λœ μ„œλ²„μ˜ μ£Όμ†Œλ₯Ό μ°Ύμ•„μ£ΌλŠ” 역할이 λ„€μž„μ„œλ²„(DNS)μž…λ‹ˆλ‹€.

5. CLI λž€ ?


CLI(Command Line Interface)λž€?

λͺ…λ Ή 쀄 μΈν„°νŽ˜μ΄μŠ€(CLI, Command line interface) λ˜λŠ” λͺ…λ Ήμ–΄ μΈν„°νŽ˜μ΄μŠ€λŠ” ν…μŠ€νŠΈ 터미널을 톡해 μ‚¬μš©μžμ™€ 컴퓨터가 μƒν˜Έ μž‘μš©ν•˜λŠ” 방식을 λœ»ν•œλ‹€. 즉, μž‘μ—… λͺ…령은 μ‚¬μš©μžκ°€ 컴퓨터 ν‚€λ³΄λ“œ 등을 톡해 λ¬Έμžμ—΄μ˜ ν˜•νƒœλ‘œ μž…λ ₯ν•˜λ©°, μ»΄ν“¨ν„°λ‘œλΆ€ν„°μ˜ 좜λ ₯ μ—­μ‹œ λ¬Έμžμ—΄μ˜ ν˜•νƒœλ‘œ 주어진닀. ( - μœ„ν‚€λ°±κ³Ό - )

거의 λͺ¨λ“  μš΄μ˜μ²΄μ œμ—μ„œ GUI(Graphic User Interface, κ·Έλž˜ν”„ μœ μ € μΈν„°νŽ˜μ΄μŠ€)λ₯Ό μ§€μ›ν•˜λ©΄μ„œ, μš°λ¦¬κ°€ ν”νžˆ λ§ν•˜λŠ” μœˆλ„μš° 창을 λ³΄λ©΄μ„œ λŒ€λΆ€λΆ„μ˜ 컴퓨터 μž‘μ—…μ„ μ§„ν–‰ν•œλ‹€. ν•˜μ§€λ§Œ μ—¬μ „νžˆ CLI(Command Line Interface, λͺ…λ Ή 쀄 μΈν„°νŽ˜μ΄μŠ€)λ₯Ό 많이 μ‚¬μš©ν•˜κ²Œ λœλ‹€. CLIλ₯Ό 처음 μ ‘ν•˜κ²Œ 되면 λ”±λ”±ν•˜κ³  무슨 말인지 λͺ¨λ₯΄λŠ” λ¬Έμžμ—΄λ“€μ΄ 좜λ ₯이 λ˜λ©΄μ„œ λ‹Ήν™©ν•˜κ²Œ λ˜μ§€λ§Œ, μ‚¬μš©ν•˜λ‹€ 보면 νŽΈλ¦¬ν•œ 뢀뢄이 λ§Žλ‹€λŠ” 것을 느끼게 λ˜λŠ” 것 κ°™λ‹€.
Windows μ‚¬μš©μžλ“€μ΄ μ ‘ν•˜κ²Œ λ˜λŠ” CMD μ°½κ³Ό Mac OS μ‚¬μš©μžλ“€μ΄ μ ‘ν•˜κ²Œ λ˜λŠ” Terminal 창이 λ°”λ‘œ λͺ…λ Ή 쀄 μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ œκ³΅ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ΄λ‹€.

CLI μž‘λ™λ°©μ‹


CLIλŠ” 크게 2개 λ‹¨μœ„λ‘œ ꡬ성 λ˜μ–΄ μžˆλ‹€. β€œμž…λ ₯”과 β€œμΆœλ ₯”이닀.
μš°λ¦¬λŠ” 이런 μž…μΆœλ ₯이 κ°€λŠ₯ν•˜κ²Œ ν•΄μ£ΌλŠ” μ†Œν”„νŠΈμ›¨μ–΄λ‚˜ ν•˜λ“œμ›¨μ–΄λ₯Ό 터미널(terminal)이라고 ν•œλ‹€. λ˜ν•œ, μ‚¬μš©μžκ°€ μž…λ ₯ν•œ λͺ…λ Ήμ–΄λ₯Ό 해석해 μ£ΌλŠ” μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ…Έ(shell)이라고 ν•œλ‹€.
Windowsμ—μ„œλŠ” β€˜>’ ν˜•νƒœλ‘œ, Mac OS, Linux λ“±μ—μ„œλŠ” β€˜$’ ν‘œμ‹œλ‘œ μ‚¬μš©μžμ˜ λͺ…령을 κΈ°λ‹€λ¦¬λŠ” Command Prompt(λͺ…λ Ή ν”„λ‘¬ν”„νŠΈ)κ°€ μ‘΄μž¬ν•œλ‹€. μ‚¬μš©μžλŠ” 이 뢀뢄에 λͺ…λ Ήμ–΄λ₯Ό β€œμž…λ ₯β€ν•œλ‹€.

μ‚¬μš©μžκ°€ νŠΉμ • λͺ…λ Ήμ–΄λ₯Ό 톡해 β€œμž…λ ₯”을 ν•˜κ²Œλ˜λ©΄(보톡 μ—”ν„°ν‚€λ₯Ό μž…λ ₯ν•˜μ—¬ λͺ…령을 μ’…λ£Œν•œλ‹€.), μ…Έ ν”„λ‘œκ·Έλž¨μ΄ μž…λ ₯ 받은 λͺ…λ Ήμ–΄λ₯Ό ν•΄μ„ν•˜κ³  λͺ…령에 ν•΄λ‹Ήν•˜λŠ” μ μ ˆν•œ λ‚΄μš©μ„ 터미널에 좜λ ₯ ν•΄μ€€λ‹€.

profile
α΄…α΄‡Μα΄ α΄‡ΚŸα΄α΄˜α΄˜α΄‡α΄œΚ€. α΄˜Κ€α΄Ι’Κ€α΄€α΄α΄α΄€α΄›Ιͺᴏɴ πŸ”₯

4개의 λŒ“κΈ€

comment-user-thumbnail
2021λ…„ 4μ›” 26일

덕뢄에 쒋은 정보 μ•Œμ•„κ°‘λ‹ˆλ‹€~~ 총총총

1개의 λ‹΅κΈ€
comment-user-thumbnail
2021λ…„ 4μ›” 27일

λŒ€λ‹¨ν•΄μ—¬

1개의 λ‹΅κΈ€