Linux 서버를 설정하는 경우 FTP 액세스가 필요합니다. 이것은 먼저 Linux에 FTP 서버를 설치하는 것을 의미합니다. 서버 운영 체제를 설치한 후 가장 먼저 해야 할 일 중 하나입니다.
많은 Linux 서버에서 Ubuntu를 실행합니다. 그럼 우분투 서버에서 FTP 서버를 설정하는 방법을 알아보겠습니다.
FTP 서버란 무엇입니까?
FTP 또는 파일 전송 프로토콜은 서버에 파일을 업로드(넣기)하거나 서버에서 다운로드(가져오기)하는 데 사용되는 시스템입니다. 과거에 파일을 가져오거나 웹에 이미지를 업로드할 때 자신도 모르게 사용했을 것입니다. 또는 FTP 클라이언트를 사용하여 FTP 파일 서버에 직접 연결했을 수 있습니다.
이를 위해서는 파일을 호스팅하는 원격 서버에 FTP 서버 소프트웨어가 설치되어 있어야 합니다.
Linux 홈 서버, 웹 서버, 게임 서버를 구축하든 프로젝트에 적합한 서버를 구축하든 FTP는 한 시스템에서 다른 시스템으로 데이터를 전송하는 가장 간단한 방법입니다.
Ubuntu에 서버 설치
Ubuntu에 FTP 서버를 설치하는 것은 간단합니다. 틀림없이 최고의 솔루션은 vsftpd입니다. 아래 단계에 따라 vsftpd를 사용하여 Ubuntu에 FTP 서버를 설치 및 구성하십시오.
1. vsftpd 설치
이미 vsftpd가 설치되어 있을 수 있습니다. 확인하려면 터미널 창을 열고 입력
sudo apt list --installed
목록 맨 아래에서 vsftpd를 찾아야 합니다. 그렇지 않은 경우 다음을 사용하여 설치하십시오.
sudo apt install vsftpd
설치가 완료되면 vsftpd를 구성할 차례입니다. 원본 구성 파일의 복사본을 만들어 시작합니다. 즉, 문제가 발생하면 기본 구성을 복원할 수 있습니다.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_default
완료되면 다음을 사용하여 서비스를 시작하십시오.
sudo systemctl start vsftpd
다음을 사용하여 서버가 실행 중인지 확인하십시오.
sudo systemctl enable vsftpd
vsftpd가 설치된 상태에서 구성을 시작할 수 있습니다.
2. FTP 사용자 생성
가장 먼저 필요한 것은 FTP 사용자 계정입니다. 이를 통해 모든 FTP 클라이언트를 사용하여 vsftpd를 통해 서버에서 호스팅되는 파일에 액세스할 수 있습니다. 터미널에서 다음을 입력하십시오.
sudo useradd –m username
("username"을 원하는 사용자 이름으로 대체하십시오.)
sudo password username
사용자 이름과 비밀번호를 설정하고 계정의 홈 폴더에 테스트 파일을 만들어 작동하는지 확인합니다.
cd /home/username
sudo nano testfile.txt
Ubuntu FTP 서버에 처음 연결할 때 testfile.txt가 표시되어야 합니다.
3. Ubuntu FTP 서버 보호
그러나 연결을 설정하기 전에 FTP 포트가 Ubuntu에서 열려 있는지 확인해야 합니다. 기본적으로 이들은 ufw(복잡하지 않은 방화벽)의 보안상의 이유로 닫혀 있습니다.
포트 20을 통한 액세스를 활성화하려면
를 사용하십시오.sudo ufw allow 20/tcp
배포판이 다른 방화벽을 사용하거나 대안을 설치했다면 설명서를 확인하여 포트를 여세요.
또한 사용자가 파일을 업로드할 수 있기를 원할 것입니다. config 파일에서 설정할 수 있습니다. 편집하려면 엽니다.
sudo nano /etc/vsftpd.conf
write_enabled를 찾고 항목의 주석 처리를 제거하여 "YES"로 설정되었는지 확인합니다.
write_enable=YES
Ctrl+X 누르기 종료하고 Y 저장합니다.
공개적으로 액세스할 수 있는 FTP 서버의 경우 각 사용자의 액세스 권한을 제한해야 합니다. chroot를 사용하면 각 사용자를 홈 디렉토리로 제한할 수 있습니다. vsftpd.conf에서 다음 줄을 찾아 주석 해제(# 제거):
chroot_local_user=YES
다시, Ctrl+X 종료하고 Y 저장합니다.
여러 사용자의 경우 목록을 유지 관리하는 것이 더 현명한 옵션입니다.
먼저 텍스트 편집기에서 vsftpd.chroot_list를 엽니다.
sudo nano /etc/ vsftpd.chroot_list
여기에 자신의 폴더로 제한하려는 사용자 이름을 나열하십시오. 저장하고 종료한 다음 vsftpd.conf로 돌아가서 chroot_local_user=YES가 주석 처리되지 않았는지 확인하십시오.
#chroot_local_user=YES
대신 주석 처리를 제거하세요.
chroot_list_enable=YES
그리고
chroot_list_file=/etc/vsftpd.chroot_list
다음과 같아야 합니다.
다시 저장하고 종료합니다. 마지막으로 FTP 서비스를 다시 시작합니다.
sudo systemctl restart vsftpd.service
마지막으로 호스트 이름을 사용합니다. Ubuntu 서버의 이름을 확인하는 명령입니다. 그런 다음 이를 사용하여 FTP 서버에 연결할 수 있습니다. IP 주소를 사용하려면 IP 주소를 입력하세요. 명령하고 기록해 두십시오.
4. 암호화된 연결:FTP+SSL=FTPS
SSL/TLS를 사용하여 Ubuntu FTP 서버로 들어오고 나가는 트래픽을 강제로 암호화할 수도 있습니다.
vsftpd.conf 파일에서 "SSL 암호화된 연결"에 대한 참조를 찾아 다음을 추가합니다.
ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
파일을 저장하고 종료합니다. 이제 FTP 클라이언트에서 특정 FTPS를 연결 프로토콜로 사용할 수 있습니다.
5. Ubuntu에 FTP 클라이언트 설치
다른 시스템에서 명령줄 도구 또는 데스크톱 앱을 사용하여 Ubuntu FTP 서버에 연결할 수 있습니다.
Linux에서는
를 사용하여 터미널의 서버에 액세스할 수 있습니다.sudo ftp hostname
"호스트 이름"을 서버의 호스트 이름으로 대체해야 합니다. IP 주소를 사용할 수도 있습니다.
sudo ftp ipaddress
메시지가 표시되면 이전에 설정한 사용자 이름과 암호를 입력합니다. 그런 다음 get 및 put 명령을 사용하여 데이터를 전송할 수 있습니다.
더 직관적인 것을 원하거나 다른 운영 체제에서 FTP 서버에 액세스하고 싶으십니까? FTP 클라이언트가 필요하며 틀림없이 가장 좋은 것은 FileZilla입니다. 오픈 소스 솔루션으로 Windows(서버는 물론), macOS에서 사용할 수 있으며 Linux에는 32비트 및 64비트 버전이 있습니다. 안타깝게도 Ubuntu 또는 기타 Linux 배포판용 FileZilla FTP 서버가 없습니다.
다운로드: 파일질라(무료)
FileZilla 클라이언트를 사용하여 Ubuntu FTP 서버에 연결하려면 앱을 설치하고 실행하십시오. 그런 다음:
- 파일> 사이트 관리자를 클릭합니다.
- 여기에서 새 사이트를 클릭합니다.
- 오른쪽 창에서 FTP 를 선택합니다.
- FTPS를 사용하는 경우 TLS를 선택합니다. 암호화용 .
- 다음으로 호스트에 호스트 이름 또는 IP 주소를 입력합니다. 포트 추가 .
- 로그온 유형의 경우 사용자에 계정 자격 증명 입력 및 비밀번호 .
- 연결을 클릭합니다. .
그런 다음 Ubuntu FTP 서버에서 데이터를 자유롭게 업로드 및 다운로드(입력 및 가져오기)할 수 있습니다. 이동하려는 파일을 끌어다 놓기만 하면 됩니다.
다른 FTP 클라이언트를 사용 중이신가요? 단계는 거의 동일해야 하지만 앱 설명서에서 설명을 확인하세요.
Ubuntu에서 FTP 서버를 구축했습니다.
Ubuntu 운영 체제의 데스크탑 또는 서버 버전을 사용 중이든 이제 FTP 서버를 실행합니다. 이것은 웹 페이지 업로드에서 중요한 데이터에 대한 쉬운 액세스 제공에 이르기까지 다양한 목적으로 사용할 수 있습니다. FTP를 사용하면 서버 시스템에 물리적으로 액세스하지 않고도 필요할 때마다 데이터를 가져올 수 있습니다.