카테고리 없음

FTP server 구축

딸기뚜왈기 2024. 3. 23. 19:47

[FTP Sever 구축]

>종류 : 
1)FTP(20, 21)<--인증, 
2)Anomymous FTP(20, 21)<--인증 ID: anonymous, password:E-Mail , 
3)TFTP(69) <-- 인증x

01. 프로그램 설치
1) 서버: vsftpd
2) 클라이언트: ftp

02. 환경 설정 파일
> /etc/vsftpd/vsftpd.conf

03. 포트변경 
21 --> 2121

listen_port=2121
local_max_rate=300000

04.사용자 접근 제한 
> : /etc/user_list

 

 

====================================

[100번 서버]

yum -y install vsftp&
yum -y install vsftp*
yum -y install ftp

 

>방화벽 차단 > 안하면 접속 안됨.

[root@localhost vsftpd]# systemctl stop firewalld
[root@localhost vsftpd]# grubby --update-kernel ALL --args --selinux=0
[root@localhost vsftpd]# systemctl restart vsftpd

 

--> 방화벽 차단 안해서 생기는 실수를 줄이기 위해 disable 시켜버려

 

cd /etc/vsftp
cd /etc/vsftpd
vi vsftpd.conf

systemctl restart vsftp
systemctl restart vsftpd

 

[100번 새창]

# cd /home/test
[root@localhost test]# touch file1
[root@localhost test]# ll

 

 




 

 

 

 

 

 

 

 

# cd /home
# cd test

ll

 

 

 

 

 

 

 

 

listen_port=2121

 

 

 

local_max_rate = 300000 <-- 위 설정은 300KByte/Sec의 대역폭을 제공합니다.

 

 

 

 

 

cd /etc/vsftpd

[root@localhost vsftpd]# vi user_list
[root@localhost vsftpd]# vi ftp_users

 

안에 등록되어있으면 차단된다.

 

 

cd /etc/vsftpd

[root@localhost vsftpd]# vi user_list
[root@localhost vsftpd]# vi ftp_users

들어가서 root를 주석처리 해주면

접속이 허가된다.

 

 

 

새로운 계정 생성한 후

[root@localhost vsftpd]# useradd user1
[root@localhost vsftpd]# passwd user1

 

[root@localhost vsftpd]# vi user_list
[root@localhost vsftpd]# vi ftp_users

안에 넣어주면 허가되지 않는다.

 

ㅇ--------------------------------

[Anonymous FTP]

01.환경설정
>anonymous_enable = YES

02. 파일 업로드 설정
>anon_upload_enable=YES
> /var/ftp/pub 디렉터리 허가권 변경
#chmod 777 pub

 

 

 

anonymous_enable = YES 

 

>익명접속 완료

 

>업로드가 안됨.

 

 

 

> vi vsftpd.conf 수정

 

 

[root@localhost vsftpd]# cd /var

[root@localhost var]# cd ftp
[root@localhost ftp]# chmod 777 ftp
chmod: cannot access 'ftp': 그런 파일이나 디렉터리가 없습니다
[root@localhost ftp]# chmod 777 pub

 

 

 

#파일업로드 => 실패

 

사용자 : anonymous

password : 

 

C:\>cd winnifs

 

 

#파일다운로드 => 성공

 

#파일 삭제 => 실패

 

 

 

 

 

 

#포트 고정하기

 

제어포트는 2121로 한 상태

서버 접속은 되는데

데이터는 못불러오는 상태

데이터 불러오기 위해

 

-=> 포트를 고정해줘야한다.

 

 

먼저 100번 서버에서 방화벽을 활성화해준다.

[root@localhost vsftpd]# systemctl restart firewalld

 

[root@localhost vsftpd]# vi vsftpd.conf

에서 

listen_port=2121 로 한상태에서

연결 시도해보기

 

 

 

위 현상을 해결하기 위해

방화벽에서 원하는 포트 열어주기.

포트 고정하기.

 

 

패싱모드로 작성되는 순간.

(21번 이외의 포트로 열면)

데이터 포트를 랜덤하게 열어주기 때문에 

방화벽에서 원하는 포트 열어줘야한다. => 포트 고정.

 

listen_port=2121
pasv_enable=YES

pasv_min_port=2020 <--

pasv_max_port=2020

만약 2050으로 하면 30개 중에 랜덤하게 잡힘

하나만 하기 위해 min max 2020으로 

 

인증은 끝나서 서버는 들어왔지만

데이터는 여전히 불러오지 못함

 

 

 

 

방화벽에서 포트 추가하기> port =2020으로 묶어두기.(하나로 고정하기 위해)

 

 

다시 접속하면

접속 및 인증은 2121포트로 연결되고

데이터 불러오기는 2020으로 완료된다.

\

 


[SAMBA]
==================

[FTP Sever 구축]

>종류 : 
1)FTP(20, 21)<--인증, 
2)Anomymous FTP(20, 21)<--인증 ID: anonymous, password:E-Mail , 
3)TFTP(69) <-- 인증x

01. 프로그램 설치
1) 서버: vsftpd
2) 클라이언트: ftp

02. 환경 설정 파일
> /etc/vsftpd/vsftpd.conf

03. 포트변경 
21 --> 2121

listen_port=2121
local_max_rate=300000
----------------------------------------------------------------
>제어 포트 변경 시 데이터 포트 랜덤 접속에 따른 포트 고정
>Passive Mode 작동

pasv_min_port=2020
pasv_max_port=2020

>방화벽 포트에 추가 및 적용
[root@localhost vsftpd]
# firewall-cmd --permanent --add-port=2121/tcp <---접속/인증
# firewall-cmd --permanent --add-port=2020/tcp <---데이터 불러오기
# firewall-cmd --reload
success


04.사용자 접근 제한 
> 파일명: /etc/user_list <---등록된 사용자 제한
> /etc/ftpusers<---PAM로 등록된 사용자 제한


--------------------
[Anonymous FTP]

01.환경설정
>anonymous_enable = YES

02. 파일 업로드 설정
>anon_upload_enable=YES
> /var/ftp/pub 디렉터리 허가권 변경
#chmod 777 pub


03. 파일 다운로드 설정
>anon_world_readable_only=NO

04. 전송 속도 제한
>anon_max_rate=300000

05. 파일 삭제 허용
>anon_other_write_enable=YES


포트 고정하기