FTP(파일 전송 프로토콜)란 무엇입니까?

FTTP(Fibre To The Premises) 와 혼동하지 않도록 FTP 는 파일 전송 프로토콜을 나타냅니다 . 이것은 1971년에 RFC 114 로 처음 게시된 고전적인 프로토콜입니다. 개인용 컴퓨터가 존재한 이후로 도움이 되었습니다. 또는 파일을 전송할 수 있어야 합니다. 현대 세계에는 수 기가바이트 USB 썸 드라이브와 수 테라바이트 외장 하드 드라이브가 있습니다. 그리고 클라우드 스토리지는 대부분의 사용 사례에 대해 다양한 스토리지 용량과 기능 세트를 제공합니다.

USB가 표준화되고 가장 큰 클라우드 스토리지 회사 중 일부가 설립되기 전에는 상황이 조금 달랐습니다. 1971년에 플로피 디스크가 막 발명되었는데, 이는 장치 간 데이터 전송을 신속하게 가능하게 하는 발명품이었습니다. FTP는 네트워크를 통한 전송을 허용했지만 인터넷은 아직 존재하지 않았습니다.

FTP는 너무 일찍 생겨서 아직 표준화되지 않았기 때문에 TCP도 사용하지 않았습니다. 대신 TCP/IP의 전신인 NCP 또는 네트워크 제어 프로토콜을 사용했습니다. 이것은 한 번도 변경되지 않은 FTP의 특히 독특한 기능인 이중 포트 시스템으로 이어졌습니다. NCP는 간단한 프로토콜이었습니다.

따라서 양방향 통신을 위해서는 두 개의 서로 다른 포트에 두 개의 연결이 있어야 합니다. 하나는 송신용이고 다른 하나는 수신용입니다. 결국 이러한 요구 사항이 없고 단일 이중 포트로 완벽하게 작동할 수 있는 TCP/IP를 사용하도록 이동했음에도 불구하고 FTP 표준은 업데이트되지 않았으며 포트 번호 쌍을 유지합니다.

FTP 사용

FTP가 사용하는 두 개의 포트 번호는 20과 21입니다. 포트 21은 명령을 제어하고 실행하는 데 사용되고 포트 20은 데이터를 전송하는 데 사용됩니다. 파일을 전송하기 전에 연결에서 정리해야 하는 핵심 사항 중 하나는 활성 또는 수동 모드를 사용하는 것입니다. 활성 모드에서 클라이언트는 파일을 요청합니다. 그런 다음 서버는 클라이언트에 대한 데이터 연결을 엽니다. 방화벽과 NAT 모두 FTP 서버에서 들어오는 전송이 다른 포트에 있으므로 올바른 장치에 쉽게 연결할 수 없기 때문에 상당한 문제가 있습니다.

이 문제를 해결하기 위해 수동 모드를 사용할 수 있습니다. 수동 모드에서 사용자가 서버에서 파일을 요청하면 다른 포트에서 클라이언트에 직접 연결을 시도하는 대신 FTP 서버가 연결해야 하는 포트를 클라이언트에 알리고 클라이언트가 연결을 시작하도록 합니다. 이는 활성 모드의 연결 문제를 효과적으로 해결하고 파일 전송 시작 ​​시 약간의 지연 외에 단점이 없습니다.

기술적으로 서버는 데이터 전송에 대해 클라이언트와 동의해야 합니다. 그러나 하나의 모드만 사용됩니다. 이것이 일반적으로 바이너리 모드라고도 하는 이미지 모드입니다. 이미지 모드에서 각 파일은 바이트 단위로 전송됩니다. 대체 모드에는 전체 파일을 텍스트 파일에만 적합한 8비트 ASCII로 변환하는 것이 포함됩니다.

인증 및 보안

특히 초기 프로토콜 표준이기 때문에 FTP가 특별히 안전하지 않다는 말을 들어도 놀라지 않을 것입니다. FTP는 사용자 이름과 암호 인증을 제공합니다. 그러나 어떤 통신도 암호화하지 않습니다. 즉, MitM 또는 중간 위치에 있는 사람은 누구나 "연결된" 트래픽을 "듣고" 로그인하는 데 사용된 사용자 이름과 비밀번호만 읽을 수 있습니다.

FTP는 또한 소프트웨어 업데이트를 제공하는 데 사용되는 개방형 FTP 서버에 유용한 익명 로그인 기능을 제공합니다. 익명 로그인에서는 사용자 이름 anonymous가 사용됩니다. 그런 다음 서버는 암호로 이메일 주소를 요청하지만 모든 값이 허용됩니다. 암호화가 없다는 것은 또한 파일이 안전하지 않게 전송된다는 것을 의미하므로 FTP는 민감한 문서에 사용하기에 적합하지 않습니다.

시간이 지남에 따라 FTP에 보안을 추가하기 위해 다양한 확장 및 대안이 제안되었습니다. FTPS가 기본 옵션입니다. TLS로 인증 및 파일 전송 프로세스를 암호화하는 옵션으로 FTP를 확장하고 표준 FTP 클라이언트와 상호 운용 가능합니다. SFTP, 특히 SSH 파일 전송 프로토콜은 기본적으로 FTP와 동일한 기능을 제공하지만 표준 FTP 클라이언트 및 서버와 호환되지 않는 보안 통신 프로토콜인 SSH를 통해 제공됩니다.

기존 SSH 터널을 통해 연결을 라우팅할 수 있습니다. 그러나 실제로는 제어 연결이 SSH 터널을 통해 연결되고 별도의 데이터 연결이 안전하지 않은 경우가 많습니다. VPN은 귀하와 동일한 네트워크에 있는 해커로부터 일부 보호 기능을 제공하지만 VPN 제공업체는 동일한 공격을 수행할 수 있습니다.

결론

FTP는 파일 전송 프로토콜을 나타냅니다. FTP 서버에서 파일을 업로드하고 다운로드하기 위한 초기 클라이언트-서버 프로토콜입니다. FTP는 기본적으로 보안을 제공하지 않습니다. 사용자 이름과 암호를 사용할 수 있지만 일반 텍스트로 전송되므로 네트워크 스니핑에 취약합니다. FTP에 대한 최신 확장에는 보안을 위해 TLS를 통해 연결하는 옵션이 추가되었습니다.

별도의 클라이언트 없이 FTP 서버를 직접 탐색할 수 있도록 FTP 클라이언트를 포함하는 브라우저가 사용되었습니다. 그러나 2021년에 Chrome과 Firefox는 FTP에 대한 지원을 중단하여 개별 FTP 클라이언트에 대한 지원을 제한했습니다. 현대 세계에서 클라우드 스토리지 솔루션과 빠르고 넓은 USB 스토리지는 향상된 편의성, 보안 및 속도를 제공하여 FTP의 사용 사례를 본질적으로 대체했습니다.



하드 드라이브를 복제하는 방법

하드 드라이브를 복제하는 방법

데이터가 귀중한 자산인 현대 디지털 시대에 Windows에서 하드 드라이브를 복제하는 것은 많은 사람들에게 중요한 프로세스가 될 수 있습니다. 이 종합 가이드

Windows 10에서 드라이버 WUDFRd를 로드하지 못한 문제를 해결하는 방법은 무엇입니까?

Windows 10에서 드라이버 WUDFRd를 로드하지 못한 문제를 해결하는 방법은 무엇입니까?

컴퓨터를 부팅하는 동안 WUDFRd 드라이버를 컴퓨터에 로드하지 못했다는 오류 메시지가 나타납니까?

NVIDIA GeForce Experience 오류 코드 0x0003 수정 방법

NVIDIA GeForce Experience 오류 코드 0x0003 수정 방법

데스크탑에서 NVIDIA GeForce 경험 오류 코드 0x0003을 경험하고 계십니까? 그렇다면 블로그를 읽고 이 오류를 빠르고 쉽게 해결하는 방법을 알아보세요.

Chromebook이 켜지지 않는 이유

Chromebook이 켜지지 않는 이유

내 크롬북이 켜지지 않는 이유는 무엇입니까? 질문에 대한 답을 얻으십시오. Chromebook 사용자를 위한 유용한 가이드입니다.

Fitbit Versa 4에서 시계 페이스를 변경하는 방법

Fitbit Versa 4에서 시계 페이스를 변경하는 방법

Fitbit Versa 4의 시계 페이스를 변경하여 시계를 매일 무료로 다르게 꾸며보세요. 얼마나 빠르고 쉬운지 확인하십시오.

Roomba가 중지, 고정 및 회전 – 수정

Roomba가 중지, 고정 및 회전 – 수정

Roomba 로봇 청소기가 멈추고, 달라붙고, 계속 회전하는 문제를 해결합니다.

Steam Deck에서 그래픽 설정을 변경하는 방법

Steam Deck에서 그래픽 설정을 변경하는 방법

Steam Deck은 손끝에서 바로 강력하고 다양한 게임 경험을 제공합니다. 그러나 게임을 최적화하고 최상의 성능을 보장하려면

격리 기반 보안이란 무엇입니까?

격리 기반 보안이란 무엇입니까?

우리는 사이버 보안 세계에서 점점 더 중요해지고 있는 주제인 격리 기반 보안에 대해 탐구할 것입니다. 이 접근법은

Chromebook에서 Auto Clicker를 사용하는 방법

Chromebook에서 Auto Clicker를 사용하는 방법

오늘은 Chromebook에서 반복적인 클릭 작업을 자동화할 수 있는 도구인 Auto Clicker에 대해 자세히 살펴보겠습니다. 이 도구를 사용하면 시간과

SMPS란?

SMPS란?

컴퓨터에 SMPS를 선택하기 전에 SMPS란 무엇이며 다양한 효율 등급의 의미에 대해 알아보십시오.