FTP서버는 FTP(File Transfer Protocol)를 이용하여 파일을 효율성 있게 전송하기 위한 서버이다.
FTP는 인터넷 초창기부터 오랜기간 동안 사용되어 오고 있는 프로토콜 중에 하나이다.
FTP서비스를 제공하는 서버 소프트웨어에는 Linux 플랫폼에서 동작하는 vsftpd, ProFTPD가 있으며, Windows 플랫폼에서 동작하는 IIS FTP 서버가 있다.
또한 대표적인 FTP 클라이언트 소프트웨어는 웹 브라우저이다. 웹 브라우저는 HTTP/HTTPS 클라이언트이면서 동시에 FTP 클라이언트이기도 하다. 주소창에 "ftp://"로 시작하는 주소를 입력하면 FTP 서버와 통신이 가능하다.
이외에도 FFFTP, NextFTP 등 FTP에 더 특화된 전용 소프트웨어도 있다.
# FTP는 암호화 되어있지 않음
FTP 서버가 갖는 중요한 기능 중 하나가 인증기능이다. 유저별로 파일을 보관하는 공간(유저 디렉토리)을 나누어서, 다른 유저의 파일을 보이지 않게 하거나, 유저별로 읽기나 쓰기 권한을 부여하는 것이 가능하다.
이렇게 현재까지도 프로토콜로서 중요한 역할을 해왔지만 한가지 큰 약점을 가지고 있는데, 그것이 바로 보안이다. FTP는 인증기능을 갖추고 있지만, 데이터 암호화 기능을 갖고 있지 않다. 그래서 FPT서버와 클라이언트가 주고받는 데이터는 그대로 다 보여질 수 있는 것이다.
따라서 보안 문제로 인해 FTP를 SSL로 암호화한 "FTPS(FTP over SSL)"나 SSH로 암호화한 "SFTP(SSH File Transfer Protocol) 등, 다른 프로토콜에의 이행을 고려할 필요가 있다. 최근에는 어떤 FTP 서버 소프트웨어라도 한가지 이상의 암호화 프로토콜에는 대응을 하고 있기 때문에 이행이 이전보다 용이해졌다.
'개발서 > 서버의 기본' 카테고리의 다른 글
5-11 데이터베이스 서버의 역할 (0) | 2020.09.17 |
---|---|
5-10 웹 어플리케이션 서버의 역할 (0) | 2020.09.15 |
5-08 SSL 서버 기술 (0) | 2020.09.04 |
5-07 두가지 암호화 기술 (0) | 2020.09.03 |
5-06 SSL 서버의 역할 (0) | 2020.09.02 |