=======
FTP(File Transfer Protocol)
- 파일 공유를 목적으로 개발 됨
- 네트워크 상에서 파일을 전송 하기 위한 TCP 기반의 프로토콜
- 1971년에 최초로 공개
- 파일 전송시 데이터의 손실을 피하기 위해 TCP를 통해 전송됨
- 사용자 인증과 명령 전달을 위한 제어 연결과 파일 전송을 위한 DATA 연결이 분리 되어 있음
- 제어연결용 Port : TCP 21번 , Data 전송용 | Port : TCP 20번 or Random Port
- 방화벽
- 파이프라인 두개를 만들어 통신을 한다.
- 제어 세션 : 소스 2000 데스티네이션 21 → 솟, 21 데 2000
- 패시브 : 이 단계에서 4000 3000으로 연결하자
- 액티브: 3000, 20으로 연결한다.
- NAT는 내부에서 외부로 나갈 때는 허용해준다. 하지만 외부에서 들어올 때 문제가 됨!!!!!
- 방화벽 내부에 FTP 서버가 존재 할 경우
- sp 2000 dp 21 → 방화벽 통과시 tcp21만 열어 sp21 dp2000 엎플리케이션 계층에선 데이터 송수신 할때 패시브모드일 -때는 소스3000 데스4000으로 하자 해서 클라이언트가 소스3000 데스티4000으로 들이대면 방화벽에 막혀 목록이 보이지 않음!!
- 액티브모드 에선 제어 세션 끝나고 데이터 전송세션에는 서버에서 소스 20 데스티 3000 → 전송 송수신 ok
방화벽 내부에 클라이언트가 존재할 경우
패시브모드에선 목록이 보이고 전송 송수신 ok
액티브모드에선 목록이 보이지 않음
익명(anonymous) FTP
- 계정(ID/Password)이 없는 사용자가 서버 자원에 한정된 접근을 할수있는권한을 제공
- 일반적으로 공유 해야 하는 정보 공유시 사용됨
- 고객 지원, 파일배포 등의 위한 목적으로 사용
- 클라이언트쪽에서 설정함(액티브,패시브)
- 데이터를 전송할 포트를 능동적으로 통보 / 수동적으로 정해달라고 하는 구분
Active Mode 경우
제어세션 : Client에서 시작
데이터세션 : Server에서 시작
Passive Mode 경우
제어세션 : Client에서 시작
데이터세션 : Client에시작
FTP 서버 구성 - Linux [vs FTP]
FTP Server 프로그램 종류
- 알FTP, CuteFTP, gFTP, ncFTP, vsFTP, proFTP ...
vsFTP
- Cris Evans에 의해 개발된 GPL 기반의 FTP 서버
- 매우 안정적 이면서 빠른 속도와 강력한 보안 기능 제공
- http://vsftpd.beasts.
lcd (local change directory)
- 다운로드 받을 디렉터리를 변경한다.
anonymus FTP 업로드 허용 설정
# vi/etc/fsfpd/
- write_neable_=YES (항목 확인만)
- anon_upload_enable=YES (주석제거)
- anon_mkdir_write_enable=YES (주석제거)
- systemctl restart vsftpd
다른 리눅스에서
리눅스 FTP client 프로그램 설치
dnf -y install ftp
ftp >bin 무조건!!!!
ftp > prompt (동시 다운에 물을 건지 묻지마)
ftp > hash 다운로드에 ###### 주기
ftp 서버에서는 lcd 이용 다운로드 받을 위치 바꾸궸다
chown ftp.ftp /var/ftp/pub
ftp 10.60.150.15
name: ftp
웹서버에선 /var/www/html/index.html 에 존재함!!!
NFS : 디렉토리는 본인 원격 마운트(다른 컴퓨터)
백업 시 자주 사용
/var/* ⇒ *.tar.gz ⇒ /rmount ==⇒ B컴퓨터 와 /rmount를 연결
스토리지를 네트워크화 시켜서 자원 공유할 수 있게 함
=======
메일 서비스
- 컴퓨터 통신망을 통해 편지를 주고 받을 수 있는 시스템
- 전자우편 또는 e-mael이라고 칭함
구성요소
MUA(Mail User Agent)
Client가 메일을 보내고 받기 위해 사용하는 프로그램
Program : Outlook Express, Thunderbird, elm, pine 등
MTA(Mail Transper Unit)
전달받은 메일을 다른 MTA 나 MUA 로 전달 해주는 프로그램으로 메일서버를의미함
Program : sendmail, qmail, postfix, exim, Microsoft Exchange Server 등..
MDA(Mail Delivery Agent)
- MTA가 수신한 메시지를 사용자의 우편함에 저장 해주는 역할을하는프로그램
- 별도로 설치 하지 않아도 MTA에서 기본 제공해 주기도 함
- Program : procmail , maildrop등
SMTP(Simple Mail Transfer Protocol)
- 메일을 전송하기 위해 사용되는 프로토콜
- MTA 간메일전송, MUA 에서MTA 로 메일 전송시 사용 됨- TCP 25번 Port 사
POP3 (Post Office Protocol 3)
- 메일을 수신 받기 위해 사용되는 프로토콜
- MTA(혹은 MDA) 에서 MUA 로메일전송시사용됨
- MUA로 메일을 전송한 뒤 메일 서버에서는 삭제됨
- TCP 110번 Port 사용
IMAP (Internet Message Access Protocol)
- 메일을 수신 받기 위해 사용되는 프로토콜
- MTA(혹은 MDA) 에서 MUA 로 메일 전송시 사용됨
- MUA로 메일을 전송한 뒤 메일 서버에서 삭제 되지않음
- TCP 143번 Port 사용
=======
메일 서비스 실습
Mail Server_1 기본 구성(10.0.30.1)- lg.com 도메인의 메일 서버로 운영 예정
- # dnf–y install sendmail sendmail-cf dovecot à 메일 송신(sendmail) 수신(dovecot) 관련 패키지 설치
- #rpm–qa | grep sendmail # rpm–qa | grep dovecot => 2개 패키지 설치 확인
- # vi /etc/hostname
mail.lg.com => 입력 후 저장
- # vi /etc/hosts
10.0.30.1 mail.lg.com -> 입력 후 저장
- # vi /etc/mail/local-host-names
mail.lg.com => 입력 후 저장
- # vi /etc/sysconfig/network
HOSTNAME=mail.lg.com => 입력 후 저장
- # vi /etc/NetworkManager/system-connections/ens160.nmconnection
dns=10.0.30.1 => 변경(10.0.30.1 시스템을 lg메일서버이자 실습 DNS서버로 같이 사용 예정)
- # vi /etc/resolv.conf
nameserver=10.0.30.1 => 파일 하단에 추가
- # reboot
Mail Server_2 기본 구성(10.0.100.1)
- sk.com 도메인의 메일 서버로 운영 예정
- # dnf–y install sendmail sendmail-cf dovecot => 메일 송신(sendmail) 수신(dovecot) 관련 패키지 설치
- # rpm–qa | grep sendmail # rpm–qa | grep dovecot => 2개 패키지 설치 확인- # vi /etc/hostname
mail.sk.com => 입력 후 저장
- # vi /etc/hosts
10.0.100.1 mail.sk.com => 입력 후 저장
- # vi /etc/mail/local-host-names
mail.sk.com => 입력 후 저장
- # vi /etc/sysconfig/network
HOSTNAME=mail.sk.com => 입력 후 저장
- # vi /etc/NetworkManager/system-connections/ens160.nmconnection
dns=10.0.30.1 => 변경(10.0.30.1 시스템을 lg메일서버이자 실습 DNS서버로 같이 사용 예정)
- # vi /etc/resolv.conf
nameserver=10.0.30.1 => 파일 하단에 추가
- # reboot
DNS 구성(10.0.30.1 – 실습 편의상 lg.com 메일서버에 DNS 구성)
- # dnf–y install bind bind-chroot(설치되어 있다면 생략 가능)
- # vi /etc/named.conf
11행 listen-on port 53 {any; };
12행 listen-on-v6 port 53 { none; };
19행 allow-query {any; };
33행 dnssec-validation no;
파일 하단에 다음 내용 추가
zone “lg.com” IN {
type master;
file “lg.com.zone”;
allow-update {none; };
};
zone “sk.com” IN {
type master;
file “sk.com.zone”;
allow-update {none; };
};
- # vi /var/named/lg.com.zone
$TTL 3H
@ SOA @ root. ( 2D 1D 1H 1W 1H)
IN NS @
IN A 10.0.30.1
IN MX 10 mail.lg.com. => 마지막 . 입력할것
mail IN A 10.0.30.1
- # vi /var/named/sk.com.zone
$TTL 3H
@ SOA @ root. ( 2D 1D 1H 1W 1H)
IN NS @
IN A 10.0.100.1
IN MX 10 mail.sk.com. => 마지막 . 입력할것
mail IN A 10.0.100.1
zone file 확인
# named-checkconf
# cd /var/named
# named-checkzone lg.com lg.com.zone
# named-checkzone sk.com sk.com.zone
# systemctl restart named
# systemctl enable named
# systemctl status named
# nslookup => 최종 확인
- > server 10.0.30.1
- > mail.lg.com
- > mail.sk.com
• Mail Server_1(10.0.30.1) 구성
# vi /etc/mail/sendmail.cf
85행 Cwlg.com => 변경, 도메인명 붙여서 입력(lg.com 메일서버를 사용하겠다는의미)
268행 Addr=127.0.0.1 => 이 부분만 삭제(자기자신만 메일을 보낼 수 있다는 의미이므로 외부에서도 메일 송신을 할 수 있도록삭제)
- # vi /etc/mail/access
파일 하단에 추가 => 외부 네트워크 또는 호스트가 메일을 보낼 수 있도록 허가
lg.com RELAY
sk.com RELAY
10.0.30 RELAY
10.0.100 RELAY
10 RELAY
/8 이란 기준에선 10 RELAY 만 쳐도 된다(10대역을 다 되게 한다는것)
Mail Server_1(10.0.30.1) 구성_계속
- /etc/mail/access 파일 설정 후
# makemap hash /etc/mail/access < /etc/mail/access => 설정 내용 적용
- # vi /etc/dovecot/dovecot.conf
24행 주석제거protocols = ~~~~
30행 주석제거listen = ~~~~
33행 주석제거base_dir = ~~~~- # vi /etc/dovecot/conf.d/10-ssl.conf
8행 ssl = yes => yes로 수정
- # vi /etc/dovecot/conf.d/10-mail.conf
25행 주석제거mail_location = ~~~~
121행 주석제거후변경mail_access_groups = mail
166행 주석 제거lock_method = ~~~~
Mail Server_1(10.0.30.1) 구성_계속
- 메일계정사용자추가
# useradd kimlg
# passwd kimlg
패스워드설정-
데몬재구동
# systemctl restart sendmail
# systemctl enable sendmail
# systemctl restart dovecot
# systemctl enable dovecot
Mail Client_1(Windows 시스템, 10.0.20.1) 구성
- 메일 서버 작동 Test를 위한 Client 구성
DNS주소변경: 10.0.30.1
썬더버드(메일클라이언트프로그램) 설치 => 설치는 기본 설정으로 진행
첫실행, 시스템통합 => 기본으로 설정 선택 => 건너뛰고 기존 메일 사용하기
메일계정설정: kimlg / kimlg@lg.com / 패스워드 차례대로 입력
하단 내용 출력시 POP3선택 => 완료
보안 확인 예외 목록 추가 : 기본값, 보안예외확인버튼
좌측 상단 kimlg@lg.com 우클릭 => 설정 => 보내는 서버 선택 => 편집
보내는 서버 창에서 포트 : 25, 보안연결: 없음, 인증방식 : 인증없음 => 확인
메일송신
>쓰기 => 받는사람 : kimlg@lg.com 으로 하여 본인이 본인에게 메일 송신
>받은편지함 새로고침 하여 메일이 잘 도착하는지 확인
Mail Server_2(10.0.100.1) 구성
- sk.com 도메인의 메일서버
# vi /etc/mail/sendmail.cf
85행 Cwsk.com => 변경, 도메인명 붙여서 입력(sk.com 메일서버를 사용하겠다는 의미)
268행 Addr=127.0.0.1 => 이 부분만 삭제(자기자신만 메일을 보낼 수 있다는 의미이므로 외부에서도 메일 송신을 할 수 있도록삭제)
# vi /etc/mail/access
파일하단에추가à외부네트워크또는호스트가메일을보낼수있도록허가
lg.com RELAY
sk.com RELAY
10.0.30 RELAY
10.0.100 RELAY
10 RELAY
• Mail Server_2(10.0.100.1) 구성_계속
- /etc/mail/access 파일 설정 후
# makemap hash /etc/mail/access < /etc/mail/access => 설정 내용 적용
# vi /etc/dovecot/dovecot.conf
24행 주석제거protocols = ~~~~
30행 주석제거listen = ~~~~
33행 주석제거base_dir = ~~~~- # vi /etc/dovecot/conf.d/10-ssl.conf
8행 ssl = yes => yes로 수정- # vi /etc/dovecot/conf.d/10-mail.conf
25행 주석제거 mail_location = ~~~~
121행 주석 제거 후 변경 mail_access_groups = mail
166행 주석 제거 lock_method = ~~~~
Mail Server_2(10.0.100.1) 구성_계속- 메일계정사용자추가
# useradd leesk
# passwd leesk
패스워드설정
- 데몬재구동
# systemctl restart sendmail
# systemctl enable sendmail
# systemctl restart dovecot
# systemctl enable dovecot
Mail Client_2(Windows 시스템, 10.0.20.2) 구성
- 메일서버작동Test를위한Client 구성
DNS주소변경: 10.0.30.1
썬더버드(메일 클라이언트 프로그램) 설치 => 설치는 기본 설정으로 진행
첫실행, 시스템 통합 => 기본으로 설정 선택 => 건너뛰고 기존 메일 사용하기
메일계정설정 : leesk / leesk@sk.com / 패스워드 차례대로 입력
하단내용 출력시 POP3 선택 => 완료
보안 확인 예외 목록 추가 : 기본값, 보안 예외 확인 버튼
좌측 상단 leesk@sk.com 우클릭 => 설정 => 보내는 서버 선택 => 편집
보내는 서버 창에서 포트 : 25, 보안연결: 없음, 인증방식 : 인증없음 => 확인
메일송신
>쓰기 => 받는사람 : kimlg@lg.com으로 하여 메일 송신
Mail Client_1시스템(10.0.20.1)에서 받은 편지함 새로고침하여 메일이 잘 도착했는지 확인
=======
'공부? > 국비 지원 일기장' 카테고리의 다른 글
47일차 - MariaDB (1) | 2024.09.10 |
---|---|
46일차 - NFS, Samba, DB (1) | 2024.09.09 |
44일차 - GNS3 맛보기 (0) | 2024.09.05 |
43일차 - 리눅스 SSH, DNS, DHCP (3) | 2024.09.04 |
42일차 - RAID 실습 (0) | 2024.09.03 |