Ubuntu Server 22.04 / vsftpd로 FTP 서버 구축하기

vsftpd

vsftpd(Very Secure FTP Daemon)는 유닉스와 리눅스에서 사용할 수 있는 가벼운 FTP 서버입니다. 주요 특징은 다음과 같습니다.

  • Virtual IP configurations
  • Virtual users
  • Standalone or inetd operation
  • Powerful per-user configurability
  • Bandwidth throttling
  • Per-source-IP configurability
  • Per-source-IP limits
  • IPv6
  • Encryption support through SSL integration

설치

vsftpd는 우분투 패키지에 포함되어 있으므로 다음과 같이 명령하여 설치할 수 있습니다.

# apt install vsftpd

방화벽을 사용 중이라면 다음과 같이 명령하여 포트를 열어줍니다.

# ufw allow ftp

서버 부팅 시 자동으로 시작하게 하려면 다음과 같이 명령합니다.

# systemctl enable vsftpd

설정 변경 후 적용시키려면 서비스를 다시 시작하거나

# systemctl restart vsftpd

다시 로드합니다.

# systemctl reload vsftpd

주요 설정

설정 파일은 /etc/vsftpd.conf입니다.

주요 기본 설정은 다음과 같습니다.

  • 익명 사용자 접속 불가
  • 사용자는 읽기 전용으로 접속
  • 다른 폴더 보기 가능

사용자 쓰기 가능하게 하기

사용자는 읽기 전용으로 접속하므로 파일을 업로드하거나 삭제하는 것이 불가능합니다. 쓰기 가능하게 하려면 다음 코드에서 주석(#)을 제거합니다.

#write_enable=YES

사용자 홈 디렉토리를 벗어나지 못하게 하기

사용자는 홈 디렉토리를 벗어나서 다른 디렉토리나 파일 목록을 볼 수 있습니다. 다운로드나 업로드는 불가능하나 목록을 보는 거 자체가 문제가 될 수 있습니다. 접속한 사용자가 홈 디렉토리를 벗어나지 못하게 하려면 다음 코드에서 주석을 제거하고...

#chroot_local_user=YES

다음 코드를 추가합니다.

allow_writeable_chroot=YES

익명 사용자 접속

익명 사용자, 즉 누구나 접속할 수 있게 하려면 다음 설정 코드에서 No를...

anonymous_enable=NO

YES로 변경합니다.

anonymous_enable=YES

읽기 전용으로 /srv/ftp에 접속됩니다.

익명 사용자에게 업로드, 쓰기 권한 부여

익명 사용자가 업로드와 쓰기가 가능하게 하려면 두 가지 작업을 해야 합니다.

설정 파일 수정

설정 파일에서 다음 두 코드에서 주석을 제거합니다.

#anon_upload_enable=YES
#anon_mkdir_write_enable=YES

디렉토리 권한 설정

예를 들어 /srv/ftp/pub 디렉토리에 업로드와 쓰기가 가능하게 하고 싶다면, 디렉토리를 만들고...

# mkdir /srv/ftp/pub

쓰기 가능하게 권한을 부여하거나...

@ chmod 777 /srv/ftp/pub

ftp 사용자에게 소유권을 부여합니다.

# chown ftp:ftp /srv/ftp/pub
같은 카테고리의 다른 글

리눅스 / RAID / Linear RAID, RAID0, RAID1, RAID5, RAID6

RAID 뜻과 종류 RAID Redundant Array of Inexpensive Disk or Redundant Array of Independent Disk 여러 개의 하드디스크를 하나처럼 사용하게 하는 기술. 예를 들어 1TB 하드디스크 두 개를 묶어서 2TB 하드디스크처럼 사용할 수 있다. 크게 하드웨어 RAID와 소프트웨어 RAID로 구분할 수 있다. 하드웨어 RAID는 성능이 좋으나 비싸다. 소프트웨어 RAID는 운영체제에서 지원하는 것으로 OS RAID라고도 한다. Linear RAID 두 ...

버추얼박스 / 호스트 키 사용법과 호스트 키 설정하는 방법

버추얼박스 / 호스트 키 사용법과 호스트 키 설정하는 방법

호스트 키 버추얼박스의 호스트 키는 가상 머신에서 하는 여러 작업에 사용됩니다. 예를 들어 마우스가 가상 머신 밖으로 나오지 않는 경우 호스트 키를 누르면 가상 머신 밖으로 빠져나옵니다. 호스트 키와 E를 누르면 가상 머신의 화면을 캡쳐합니다. 호스트 키와 DEL을 누르면 가상 머신에 Ctrl+Alt+Del을 전송합니다. 호스트 키 설정하는 방법 버추얼박스의 기본 설정 호스트 키가 불편하다면 ...

MobaXTerm / 사용법

MobaXTerm / 사용법

다운로드 MobaXTerm 다운로드 : https://mobaxterm.mobatek.net/download.html Home Edition과 Professional Edition 두 가지가 있고, Home Edition은 기능 제한이 있는 무료이다. Download now를 클릭한다. Portable edition은 설치가 필요 없고, Installer edition은 설치를 해야 한다. 원하는 것을 다운로드한다. SSH 기본 MobaXTerm을 실행하고, 을 클릭한다. SSH를 클릭한다. 접속에 필요한 정보를 입력하고, 를 클릭하면... 새 탭이 생기면서 연결된다. 로그인하면 아래와 같은 화면이 나온다. 로그아웃하면 세션이 끊기고, 엔터키를 누르면 ...

크롬 / 비밀번호 저장 설정하는 방법

크롬 / 비밀번호 저장 설정하는 방법

구글 크롬에는 비밀번호 저장 기능이 있다. 비밀번호 저장을 하면 동기화한 모든 기기에서 저장된 암호를 사용할 수 있다. 편리하긴 하지만, 공용 PC에서는 사용에 주의를 기울여야 한다. 비밀번호 저장 기능 사용 여부는 에서 한다. 를 클릭하고... 를 클릭한다. 을 클릭한다. 비밀번호 저장 기능을 사용했다면 저장된 비밀번호 목록을 볼 수 있다. 사이트를 클릭해서 ...

안드로이드 / 앱 / 원스토어 / 설치하는 방법

안드로이드 / 앱 / 원스토어 / 설치하는 방법

원스토어는 네이버와 통신 3사가 협력해서 만든 앱 장터입니다. 국내를 대상으로 하는 거라 사용이 편하고 이벤트도 많이 있습니다. 통신사를 통해 구입한 스마트폰에는 대부분 원스토어가 기본적으로 설치되어 있습니다. 하지만 제조사로부터 직접 구입한, 특히 외국에서 만든 스마트폰의 경우 원스토어가 설치되어 있지 않습니다. 만약 원스토어를 이용하고 싶다면 별도로 원스토어 앱을 설치해야 합니다. 다음은 크롬 웹브라우저에서 설치를 ...

PuTTY / 사용법 / SSH / 자동 로그인하는 방법

PuTTY / 사용법 / SSH / 자동 로그인하는 방법

PuTTY로 리눅스 서버에 접속할 때 사용자 이름과 비밀번호를 입력합니다. 그 과정이 번거롭다면 Key를 이용하여 자동으로 로그인하도록 만들 수 있습니다. 그 방법을 정리합니다. 서버에서 Key 생성 서버에 root으로 로그인했고, 현재 디렉토리는 /root이라고 가정합니다. 다음과 같이 명령하여 Key를 생성합니다. 몇 가지 질문을 하는데 계속 엔터를 치면 됩니다. ssh-keygen .ssh 디렉토리로 이동합니다. cd .ssh id_rsa와 id_rsa.pub 두 개의 파일이 있습니다. id_rsa.pub 파일의 ...

Ubuntu 20.04 Server / Samba / 설치하고 공유 폴더 만드는 방법

Ubuntu 20.04 Server / Samba / 설치하고 공유 폴더 만드는 방법

Samba를 이용하여 Ubuntu Server에 공유 폴더를 만들고, Windows 클라이언트에서 접속하는 방법을 알아본다. Samba 설치 Samba를 설치한다. 설치하면 바로 시작하고, 재부팅을 해도 자동으로 시작한다. apt install samba 공유할 폴더를 만들고 권한을 777로 설정한다. mkdir /sharedfolder chmod 777 /sharedfolder 설정 파일은 /etc/samba/smb.conf이다. 텍스트 에디터로 열고 제일 밑에 다음 코드를 추가한다. 폴더 이름은 sharedfolder이지만, 네트워크에서는 Shared Folder로 보인다. comment = ...

엡손 무한 복합기 L455 / 잉크 리필하는 방법

엡손 무한 복합기 L455 / 잉크 리필하는 방법

엡손 무한 복합기 L455의 잉크를 리필하는 방법은 처음 구입 시 잉크를 넣는 방법과 동일하다. 잉크는 하이마트나 인터넷 쇼핑몰에서 구입할 수 있는데, 배송비까지 생각하면 하이마트가 더 저렴한 듯 하다. 가격은 계속 오르니 미리 많이 사두는 것이 좋다. 잉크 리필 과정은 다음과 같다. 잉크의 뚜껑을 열고... 은박지(?)를 제거하고 뚜껑을 닫는다. 잉크통을 엽으로 눕히고... 잉크의 꼭지를 따고 부으면 ...

워드프레스 / Ultimate Member / 메모

워드프레스 / Ultimate Member / 메모

필수 입력 필드 별표(*) 표시 얼티밋 멤버 - 설정 - 기타 회원 가입 후, 로그인 후 이동할 페이지 설정 얼티밋 멤버 - 사용자 역할 사용자 정의 유효성 검사 만들기 예를 들어 0000-00-00 형식의 날짜를 입력 받고 싶다면, 테마의 functions.php에 다음 코드를 추가한다. function um_custom_validate_jb_date( $key, $array, $args ) { if ( isset( $args ) && ...

포토샵 / 아이콘 폰트 Font Awesome 사용하는 방법

포토샵 / 아이콘 폰트 Font Awesome 사용하는 방법

Font Awesome은 아이콘 폰트입니다. 모양은 아이콘이지만 글자처럼 사용할 수 있습니다. 즉, 크기를 변경하거나 색을 바꾸거나 하는 작업이 그림보다는 쉽다는 것입니다. 보통 웹에서 HTML 코드로 사용하지만, 포토샵에서도 사용할 수 있습니다. Font Awesome 4를 어떻게 포토샵에서 사용하는지 알아보겠습니다.(Font Awesome 5는 아이콘별로 SVG를 제공하므로, SVG 파일을 다운로드하여 사용하면 됩니다.) https://fontawesome.com/v4.7.0/get-started/에서 폰트를 다운로드합니다. Font Awesome 5를 사용하라는 ...