NAT, 리눅스


5일차

kali에서 utm에 전달되는게 아니라 server에 연결돼야됨.
DNS, HTTP, FTP 포트번호

✅ 21번 포트 – FTP (File Transfer Protocol)
21번 포트는 FTP 서버와 클라이언트가 제어 명령을 주고받는 통로예요.
예를 들어, "이 파일 보내줘", "이 폴더에 접근해도 돼?" 같은 명령이 여기서 오갑니다.
※ 실제 데이터는 20번 포트를 통해 전송되기도 해요.
→ 기본 파일 전송용 프로토콜

✅ 22번 포트 – SSH (Secure Shell)
22번은 원격 보안 접속을 위한 포트예요.
Linux 서버에 접속하거나 명령어를 보내는 데 사용되고,
파일을 안전하게 전송하는 SFTP, SCP도 이 포트를 같이 써요.
→ Telnet의 보안 강화판이라고 보면 됩니다.
※ 모든 통신이 암호화됨

✅ 23번 포트 – Telnet
23번은 예전부터 쓰이던 원격 접속 프로토콜이에요.
SSH와 비슷하지만 암호화가 전혀 안 돼서 보안에 매우 취약합니다.
패스워드조차 평문으로 보내기 때문에 요즘은 실무에서 거의 사용 안 하고 시험에만 등장해요.
→ SSH와 꼭 비교해서 기억하세요

✅ 25번 포트 – SMTP (Simple Mail Transfer Protocol)
25번 포트는 메일을 보내는 데 사용돼요.
이메일을 작성해서 서버로 보내거나, 서버끼리 메일을 중계할 때 쓰이는 기본 포트입니다.
※ 클라이언트 인증용으로는 587번도 자주 쓰입니다.
→ 메일 송신 전용

✅ 53번 포트 – DNS (Domain Name System)
우리는 웹사이트를 접속할 때 IP 주소가 아니라 www.naver.com 같은 도메인 이름을 사용하죠.
이 도메인을 IP 주소로 바꿔주는 역할을 하는 것이 바로 DNS 서버, 그리고 그 요청은 53번 포트를 통해 갑니다.
→ 기본은 UDP지만, 데이터양이 많을 때는 TCP도 사용됩니다.
→ 도메인 이름 ↔ IP 주소 변환용 포트

✅ 80번 포트 – HTTP (HyperText Transfer Protocol)
웹사이트를 접속할 때 사용하는 가장 기본적인 통신 포트예요.
인터넷 주소창에 http://로 시작하는 사이트는 대부분 이 80번 포트를 사용합니다.
단, 보안이 없어서 중요한 정보가 노출될 수 있어 실무에서는 보통 HTTPS(443번)를 써요.
→ 웹 페이지 요청/응답용 비보안 포트

✅ 110번 포트 – POP3 (Post Office Protocol v3)
이 포트는 이메일을 받을 때, 서버에서 내 컴퓨터로 다운로드하는 데 쓰여요.
받고 나면 서버에서 메일이 삭제되는 구조입니다.
→ 스마트폰이나 여러 기기에서 이메일 확인하기에는 부적합
→ 메일 수신 후 삭제 기반 방식

✅ 143번 포트 – IMAP (Internet Message Access Protocol)
POP3와 달리 IMAP은 메일을 서버에 그대로 보관하면서 읽기만 하는 방식이에요.
스마트폰, 태블릿, PC 등 여러 기기에서 동시에 같은 메일함을 관리할 수 있어서 요즘은 IMAP이 더 많이 쓰입니다.
→ 메일 수신용, 서버에 저장 유지

✅ 3306번 포트 – MySQL Database 서버 접속용
이 포트는 MySQL 데이터베이스 서버에 접속할 때 사용하는 기본 포트입니다.
예: 웹사이트가 DB에 저장된 글, 사용자 정보 등을 불러올 때 이 포트를 통해 접속해요.
→ 웹 개발, 데이터 연동 시스템에서 자주 등장함
→ DB 쿼리 통신용

NAT/라이터 관리에 포트포워드 설정 집에서 따로 서버 운영하고싶을 때 사용되는 것

NAT개념 설명하려고 UBUNTU 설치할거임.
IP를 바꿔서쓰는게 NAT
내부에서는 가짜IP 사용해도 됨.

UTM9 -> 네트워크 보호 -> NAT -> 새규칙 -> ANY(아무데서)에서 .152.까지는 와줘야됨. -> 다음 목적지를 서버로 설정해줘야됨. -> 정의 및 사용자 -> 네트워크 정의 -> 유형 호스트 ->
->

마스커레이딩(밖)은 안(사설)에서 밖.
사설로 나가면 안 되는 이유는 라우팅이 안됨. ex. 가출 : 마음대로 나가도 되는데 들어오는건 마음대로 안됨.
밖에서 안쪽은 PORT 번호로 들어오는거임.

밖에서 안은 NAT(공인을 사설로) NAT=portforwarding

ftp, http 열어줘도 nslookup 안됨. dns 열어줘야 됨.

다 열어주고 kali에서 http://lawowhou.co.kr ftp://lawowhou.co.kr nslookup
lawowhou.co.kr 들어가나 확인

점검표
1. kali ip는 제대로 들어왔는가
2. 가까운데부터 핑 때린다.
ping 100.100.100.254
ping 4.4.4.1
ping 4.4.4.2
ping 125.246.95.254
ping 125.246.95.12
3. domain 조회
nslookup lawowhou.co.kr
>연결 안 되면 방화벽(NAT(http, ftp, dns) 정책 : 외부에서 접근할 때 / 내부에서 외부로 나갈때는 마스커레이딩) 또는 서버(DNS 설정)에 문제

ftp lawowhou.co.kr

ftp site 추가 -> c inetpub ftproot -> ssl 사용 안함 -> 인증 익명, 기본

gns안에 여러 서버를 둘 수 있는데 win서버를 dns로 쓸거고 나머지 서버를 rinux(ftp, http)로 쓸거임
rinux로도 dns쓸 수 있는데 복잡함.

리눅스 하드 디스크 파일 형식과 파생형 vmdk로 바꾼이유는 나중에 포렌식 하려고

10.0.2.15/24 가짜

설치목적지 -> 완료

3. 설치완료( 우분투용 )
1.업데이트 업그레이드
sudo apt update
sudo apt upgrade
2. 필수 프로그램 설치
sudo apt -y install lrzsz
sudo apt -y install net-tools
sudo apt -y install unzip
3. 서버 프로그램 설치
sudo apt -y install xinetd telnetd
sudo apt -y install openssh-server
sudo apt -y install xrdp
sudo apt -y install bind9 bind9utils
sudo apt -y install sendmail
sudo apt -y install dovecot-pop3d
sudo apt -y install dovecot-imapd
sudo apt -y install lamp-server^

#일반사용자 게정 허용하기
http://102.168.0.205
http://lawowhou.co.kr
기본 경로 : /var/www/html (주인 : root)

sudo a2enmod userdir (일반 사용자에게 권한 주는 것.)
sudo systemctl restart apache2
Fobidden확인
ls
mkdir public_html
chmod 711 $HOME
chmod 755 /home/master/public_html
cd public_html
touch index.html

#호스팅설정
cd /etc/apache2/sites-available
sudo nano hosting.conf
sudo nano /etc/apache2/sites-available/hosting.conf

[# create new
# settings for new domain
◁VirtualHost *:80>
DocumentRoot /home/master/public_html
ServerName metaedunet.kr
ServerAdmin master@metaedunet.kr
ErrorLog /home/master/public_html/logs/error.log
CustomLog /home/master/public_html/logs/access.log combined
◁/VirtualHost>]
[ ] 내용 넣어주고 저장

cd home/public_html에 codeigniter4-framework-v4.6.1-0-gd021b04 넣어주고 언집
codeigniter4-framework-d021b04 이거나옴. 이름이 너무 기니까 바꿔줄거임.
-> mv codeigniter4-framework-d021b04 CI4
touch index.php -> nano index.php -> ◁?php 줄바꾸고 두번 들여쓰기 echo
phpinfo():

sudo apt -y install php8.3-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.3-fpm
sudo systemctl restart php8.3-fpm apache2

php 제대로 활성화 시켜주기

http://102.168.0.97
http://lawowhou.co.kr/~master ← 일반사용자에게 권한 안 주면 이렇게 뜸.
http://lawowhou.co.kr ← 일반 사용자에게 권한 줘서 이렇게 만들겠다.

http://192.168.0.91/ owncloud(클라우드 서비스)의 목적은 100번이 문제가 생길 수 있으니 이에대한 백업본

cd /etc/skel
mkdir public_html
cd public_html
touch index.php
touch index.html
mkdir auth
mkdir includes
mkdir logs
cd logs
touch access.log
touch error.log

sudo apt -y install roundcube
sudo apt -y install mariadb-server mariadb-client
sudo apt -y install vsftpd
sudo apt -y install proftpd
sudo apt -y install nfs-kernel-server
sudo apt -y install nfs-common
sudo apt -y install samba
sudo apt -y install isc-dhcp-server
sudo apt -y install squid
sudo apt -y install isc-dhcp-server tftpd-hpa inetutils-inetd prelinux
sudo apt -y install apt-transport-https ca-certificates curl gnupg-agent
software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
add-apt-repository "deb [arch=amd64]
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt -y install docker-ce docker-ce-cli containerd.io
docker run hello-world
docker pull centos
4. ELK, SPLUNK
sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg -y
curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg
--dearmor -o /usr/share/keyrings/elastic-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/elastic-keyring.gpg]
https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
sudo apt update
sudo apt install elasticsearch -y
sudo apt install kibana -y
sudo apt install logstash -y

리눅스 로그인하면 ip 확인부터
ipconfig 안 먹힘
ip addr로 확인.
접속하려면 가짜 ip가 아니라 본인이 쓰고있는 컴퓨터 ip 넣어야됨.

우분투 장치 네트워크 nat 포워딩 ssh tcp 22 22

리눅스는 네트워크가 없으면 안 돼서 작업 다 하고 gns에 넣어줄거임.
sudo apt -y install lamp-server^ ← 이거 설치하면 웹서버가 뜬다.
sudo apt -y install roundcube

ftp, http, dns 연결 안 되면 포트포워딩 해줘라

sudo apt -y install sendmail
sudo apt -y install dovecot-pop3d
sudo apt -y install dovecot-imapd이거 3개가 설치돼야
sudo apt -y install roundcube(이메일서버에서 메일을 가져와서 보여주는 프로그램)이게 작동한다., e-mai 작동l



#호스팅설정
cd /etc/apache2/sites-available
nano hosting.conf
nano /etc/apache2/sites-available/hosting.conf
# create new
# settings for new domain
◁VirtualHost *:80>
DocumentRoot /home/master/public_html
ServerName metaedunet.kr
ServerAdmin master@metaedunet.kr
ErrorLog /home/master/public_html/logs/error.log
CustomLog /home/master/public_html/logs/access.log combined
◁/VirtualHost>

a2ensite hosting
systemctl reload apache2

sudo a2enmod userdir (일반 사용자에게 권한 주는 것.)
sudo systemctl restart apache2

not found에서 위에 두줄 넣어줘야 forbidden뜨면서 작동함.