windows7에서

xe 설치 아래 링크 들어가서 다운

https://www.xpressengine.com/




sulinux server에서

알드라이브로 test3 폴더에 넣어놓자. //ftp로 넣으면 된다.

unzip xe 로 압축해제



mv ex ./public_html

chmod 707 xe -R



Windows7

http://test3.co.kr/xe/





suliunx server


1. service mysqld restart   //mysql재시작


2. mysql -p mysql         //접속


3. show databases;        //데이터베이스 목록


4. create database test2;    //test2라는 db 생성


5. flush privileges;  //즉시반영


6. show databases;    //test2만들어진 것을 확인


7. insert into user(host,user,password)        values('localhost','test2',password('root'));   //user테이블에 삽입


8. flush privileges;  //즉시반영


9. grant all privileges on test2. * to test2@localhost identified by 'root';   //권한 부여

10. flush privileges;  //즉시반영


11. service mysqld restart


12. select host,user,password from user;


windows7  //설정한 값 대로 주자.



vi /usr/local/apache/conf/extra/httpd-vhosts.conf  //xe경로를 매핑


service httpd restart 


설치가 완료되면 뜨는 화면에서 설정을 들어간다.

경로를 변경





test3.co.kr 로접속 했을 시 아래와 같이 뜬다.





CentOS


create database mbc;

flush privileges; 


insert into user(host,user,password)        values('192.168.232.130','mbc',password('root'));   //210만 가능

values('192.168.232.%','mbc',password('root'));   //c클래스 전체

values('%','mbc',password('root'));    //모든호스트 가능


flush privileges;

 grant all privileges on mbc. * to 'mbc'@'%' identified by 'root';   //권한 부여

flush privileges;

Windows 7

 //DB호스트네임에 CentOS ip 입력 한다.







'System Security' 카테고리의 다른 글

메타스플로잇  (0) 2019.03.07
apmtools(apache)  (0) 2019.03.04
DNS서버  (0) 2019.02.27
FTP  (2) 2019.02.26
NFS(Network File System)  (0) 2019.02.25


apmtools  //apache mysql php 설치툴


#apmtools 입력하구 아래와 같이 진행





다 설치후 리붓




아래와 같이 뜨면 다 설치가 된 것이다.


 /usr/local/apache/htdocs/index.html 화면이다.




따로 따로 설치하려면 apache -> mysql -> php 순으로 설치




/usr/local  //설치된 내용들이 존재



vi /usr/local/apache/conf/httpd.conf

/usr/local/apache/  //아파치 서버 내용들


ServerRoot     //절대경로

Listen 80       //포트 지정

User daemon  //지정해주지 않으면 root권한으로 됨.

Group daemon //지정해주지 않으면 root권한으로 됨.


ServerAdmin     //주인 이메일

DocumentRoot //첫화면에 나오는 파일

DirectoryIndex  //제일 먼저 보여주는 화면

ErrorLog     //에러 로그




아파치 가상호스트 기능


dns 서버를 구축한 리눅스에서 test 2 3 아이디 생성


chmod 775 test* //권한을 부여해줘야 된다.


vi /home/test/public_html/index.html

아무말이나 입력

vi /home/test2/public_html/index.html

아무말이나 입력

vi /home/test3/public_html/index.html

아무말이나 입력



windows 7 

test.co.kr/~test


test.co.kr/~test2




vi /usr/local/apache/conf/extra/httpd-vhost.conf

//이런식으로 설정해두면



이렇게 test.co.kr/~test2을 test2.co.kr로 간단히 접속할 수 있게 된다.

안되면 rfc1912에다가 test2추가


네이버 블로그 같이 한 아파치서버로 여러개의 웹사이트를 운영하는 방법이다.



디렉터리 리스트 취약점

index.html 파일이 없으면  안에 있는 파일들이 전부 출력된다.


해결법


vi /usr/local/apache/conf/extra/httpd-userdir.conf

Indexes << 라는 문구를 지우면


이와 같이 전체 목록이 보이지 않게 된다.



접근통제

vi /usr/local/apache/conf/extra/httpd-userdir.conf

Deny from all로 변경


아래와 같이 전부 차단된다.


//Order 순서대로 읽는다  첫번째 박스 allow -> deny

두번째 박스 deny -> allow





[CentOS7 apm]


less //읽기.




yum list installed [패키지명]  //다운받은 목록 확인

yum -y install mariadb*  //db설치

yum -y install httpd*     //아파치설치

which httpd //httpd 위치

whereis httpd //httpd의 관련된 모든 항목







yum -y install php*  --skip-broken     //php설치

yum -y install php-mysql --skip-broken  //php mysq연동


less /etc/httpd/conf/httpd.conf //3번쨰 줄

http://httpd.apache.org/docs/2.4/

 //아파치에 관한 설명이 한글로 되어 있음


ServerRoot "/etc/httpd"  //글로벌 전역변수로 설정했으므로 따로 안써줘도 된다.



require all denied //보안에 관련됨.


'System Security' 카테고리의 다른 글

메타스플로잇  (0) 2019.03.07
웹게시판  (0) 2019.03.04
DNS서버  (0) 2019.02.27
FTP  (2) 2019.02.26
NFS(Network File System)  (0) 2019.02.25

DNS(Domain Name Server)


Domain : 영역, 그룹


www.test.co.kr  //도메인 이름 ,호스트이름


DNS란? 

Domain -> IP주소 

DNS : BIND9.0




www.test.co.kr 접속 -> DNS Server -> ip주소 파악 -> 들어가짐.


DNS cache 

 - 접속한 사이트를 저장. 다시 그 사이트를 접속할 때 DNS server가 아닌 DNScache를 참조하여 들어가지므로, 더 빠르게 접속이 됨.


hosts

cache에 없으면 여기서 찾고 없으면 dns server로 간다.


[운영모드]

Master

   

Slave


[순환 질의]

root DNS -> APNIC -> com,kr,jp -> dns server



[DNS Server]


01 프로그램

 - 서버 : BIND9.0

 - 데몬 : named

02 환경 설정 파일

 - /etc/named.conf <- 주 환경설정 파일

 - /etc/named.rfc1912.zones <- 도메인 등록 파일

 - /var/named/chroot/var/named/test.co.kr.zone <-도메인 정보 파일

03 서비스 시작

 service named restart


vi /etc/resolv.conf

nameserver 부분을 자신의 서버 ip로 작성




/etc/named.conf //아래와 같이 설정

                       //tcp ,udp 53번 사용합니다.

                      //udp들은 전송량이 많아지면 tcp도 사용한다.


vi /etc/named.rfc1912.zones  //밑에 줄 추가



var/named/chroot/var/named 에다가 아래 파일을 생성


vi /var/named/chroot/var/named/test.co.kr.zone

TTL  //DNS서버가 정보를 가져갔을 때 유지하는 시간 0은 무한

@   //DNS서버 전체를 칭한다.

IN  //클래스

20190227

//Serial 마스터 서버에 장애가 발생했을 때 슬레이브 네임 서버의 번호를 지정하는 것

1D  

//Refresh 슬레이브 서버에서 마스터 네임서버의 설정사항이 수정 되어있는지 체크하는 시간 

1H  //Retry 접속 장애가 발생했을 때 재접속 시간 

1W  //Expire 존파일의 유효기간

1W  //Minimum 데이터에대한 유효기간

admin.test.co.kr //관리자 이메일 주소

test.co.kr. //도메인주소

NS test.co.kr. //으로 물어보면

A 192.168.232.210 //으로 정방향으로 연결해준다.




host test.co.kr //확인해본다.


telnet test.co.kr



window7에서 확인 //dns을 구축한 ip로 변경해도


//인터넷이 잘된다.




[서브 도메인설정]

vi /var/named/chroot/var/named/test.co.kr.zone



아래 그림과 같이 로그인이 잘된다.




[Master Server와 Slave Server]


[Master Server]

vi /etc/named.rfc1912.zones   //slave ip입력

service named restart


[Slave Server]

vi /etc/namd.conf   //최초설정 


vi /etc/named.rfc1912.zones

//슬레이브 설정 masters {마스터 서버 ip}


service  named  restart


cd /var/named/chroot/var/named/slaves


안에 test.co.kr.zone 파일이 생성되어 있다.



[CentOS 7]

 yum -y install bind*

 
vi /etc/named.conf


vi /etc/named.rfc1912.zone //등록

systemctl restart named


vi /etc/resolv.conf


vi /var/named/kbs.co.kr.zone




ip번호로 접속


nslookup 으로 ip주소를 알아내고


start http://ip주소  //로 접근가능

 

'System Security' 카테고리의 다른 글

웹게시판  (0) 2019.03.04
apmtools(apache)  (0) 2019.03.04
FTP  (2) 2019.02.26
NFS(Network File System)  (0) 2019.02.25
정리  (0) 2019.02.25

[FTP Server]


01. 프로그램

 -proFTP ,wuftp,vsftpd*

02. 환경 설정 파일

 - /etc/vsftpd/vsftpd.conf <- 주 환경 설정 파일

 - /etc/vsftpd/user_list <- 사용자 제한(FTP)

 - /etc/vsftpd/ftpusers < - PAM


03. FTP 서비스 종류

 1) FTP : 인증(ID/PASS)

 2) AnonymousFTP : 인증(ID:anonymous,PASS:E-mail)

 3) TFTP : 무인증(69)



/etc/vsftpd/vsftpd.conf


anoymous_enable = no   //어나니머스 차단

local_enable = yes //일반 ftp 허용

write_enable = yes //생성 수정 삭제 가능

anon_upload_enable = //어나니머스는 위험하므로 업로드 설정

xferlog_enable =yes //로그 기록 허용

connect_from_port_20 = YES //데이터 포트 사용 허용

xferlog_std_format //스탠다드 포맷사용 허용

idle_session_timout =600 //600초 동안 입력안할 시 세션차단

ascii_upload_enable =yes //ascii 업로드 허용

chroot_list_enable=yes //보안디렉터리 허용

chroot_list_file=/etc/vsftpd/chroot_list  //설정한 경로에 보안 


[포트 변경]

/etc/vsftpd/vsftpd.conf


listen_port =2121 //제어포트 변경


service iptables stop


windows7 알드라이브 설치 //포트 2121로 접속



putty파일을 업로드 하면,


test폴더 안에 업로드가 된 것을 확인할 수 있다.



ftp 192.168.232.210 2121 //쉘로도 접속 가능




 

운영모드

Active 모드 //server가 먼저 요청

passive 모드 //client가 먼저 요청

모드 결정은 클라이언트가한다.

처음 시작은 active모드로 실행 된다.

passive 모드는 데이터 포트가 1024이상 포트로 사용됨.


FTP

Server

데이터 포트: 20  

제어 포트: 21  //액티브 패시브 둘다 사용


방화벽에서 제어포트만 허용했을 경우



 //연결은 되지만 데이터를 주고 받을 수 없다.


해결방안 : 방화벽 중단하거나 해당포트를 열어준다.


미친방법 : 모든포트를 개방해준다.




데이터 포트도 고정하는법

pasv_min_port =2020

pasv_max_port =2020



방화벽 설정 //제어포트 2121과 데이터포트2020을 허용해준다.



방화벽에 해당포트까지 열어주니 정상적으로 통신되어 열린다.



[사용자 제한]

 /etc/vsftpd/user_list  //적혀있는 것들은 전부 로그인차단됩니다.


/etc/vsftpd/ftpusers //적혀있는 것들은 전부 로그인차단됩니다.

user_list와 ftpusers 파일에 둘다 적혀 있어야 차단된다.


두 개의 파일에 root를 전부 주석처리하면 root로 로그인이 된다.





Anonymous ftp 


cd /var/ftp

 pub디렉터리의 소유권을 777로 변경

위의 사진과 같이 업로드는 되지만, 삭제는 되지않는다.


아래 사진과 같은 문장을 입력해주고


vi banned_emails 을 생성해주고 생성된 파일안에 넣은 값으로는 익명로그인을 할 때 비밀번호로 사용할 수 없다

위의 값으로 비밀번호를 입력하면, 로그인이 되지 않는다.





쉘에서 접속은 

ftp 192.168.232.210 2121

아이디에 anonymous 입력 비번 아무거나 치면 익명계정으로 로그인된다.


[chroot]


changeroot를 통해 자기자신외에 폴더는 보지못하게 설정할 수 있다.


vi/etc/vsftpd/vsftpd.conf //아래와 같이 설정하고 

service vsftpd restart


vi /etc/vsftpd/vsftpd.conf/chroot_list  //안에 아이디 입력


아래 사진과 같이 자기 폴더 외에는 접근이 불가능하게 된다.




반대로 list에 적힌 애들만 허용하게 하고 싶으면,


vi /etc/vsftpd/vsftpd.conf 

chroot_local_user=YES을 입력해주면


list에적힌 test만 허용되고  나머지는 차단된다.





[ftp 속도제한]

각 사용자에게 속도 제한을 건다.

이 설정을 해주지 않으면 한사람이 대역폭을 다 쓰게 됨으로 제한을 걸어줘야 한다.


vi /etc/vsftpd/vsftpd.conf


local_max_rate = 50  //50bps로 제한

anon_max_rate =50 //익명계정 속도 50bps로 제한



[ftp 동시 접속자 수 제한]

max_clients= 10  //11번째 부터 차단.


max_per_ip =2 //같은 ip접속 2개만 허용


3개째 부터 아래 빨간박스와 같이 연결이 되지 않는다.



'System Security' 카테고리의 다른 글

apmtools(apache)  (0) 2019.03.04
DNS서버  (0) 2019.02.27
NFS(Network File System)  (0) 2019.02.25
정리  (0) 2019.02.25
방화벽  (0) 2019.02.22

[NFS Server]


01. 프로그램

- 데몬 : nfs(2049), portmap

- 포트 : portmapper (111)

02. 환경 설정파일

-/etc/exports  <- 주 환경설정 파일

 [공유 디렉터리] [클라이언트 IP주소](옵션)

 ex)/nfs 192.168.232.110(rw,sync) //호스트만 허용

 ex)/nfs 192.168.232.*(rw,sync) //c클래스 허용

 ex)/nfs *(rw,sync) //전체 허용




Server

vi /etc/exports

/nfs *(rw,sync)

service iptables stop

service portmap restart

service nfs restart

cd /

mkdir nfs

chmod 777 nfs


Client

service iptables stop

service portmap restart

service nfs restart


rpcinfo -p  //확인


mount -t nfs 192.168.232.210(서버ip):/nfs /mnt



공유폴더 확인


mnt에서 아무 파일이나 디렉터리 생성



Server /nfs 폴더에 Client에서 만든 파일이 생성되어있음 (공유)



CentOS와 SUlinux 연결

server에서 vi /etc/exports

/cent 192.168.232.101(rw,sync)


CentOS에서 nfs 설치

 yum -y install nfs* rpcbind*

 systemctl restart rpcbind

 systemctl restart nfs

 mount -t nfs 192.168.232.210:/cent /mnt


cd /mnt 안에다 파일이나 디렉터리 생성


Server에서도 확인



Windows7 enterprise K 와 SUlinux 연결

//울트라 이후부터 nfs 사라짐.

제어판 -> 프로그램 및 추가 기능 -> nfs 도구 


유저 생성 //root라는 이름으로 생성했음.


c 드라이브에 nfs라는 폴더 생성  우클릭




SUlinux

mkdir win7

mount -t cifs //192.168.232.120/nfs /win7  //cifs 다른 운영체제 연결

cd /win7 안에 파일이나 디렉터리 생성


아래 그림과 같이 sulinux에서 만든 폴더가 생성됨.



Windows7 에서 리눅스 


mount 192.168.232.210:/nfs *  


z: //접속


dir //파일 확인




[포트고정]

방화벽 활성화 시키고 하는법


서버

vi /etc/init.d/nfslock 


vi /etc/sysconfig/nfs


vi /etc/sysconfig/iptables


rpcinfo -p //111번 2049번 4000~4002번 확인

service iptables restart

service nfs restart

service nfslock restart


클라이언트

mount -t nfs 192.168.232.210:/cent /mnt

똑같이 /mnt 에 파일 만들면 공유 되는 것을 확인할 수 있다.


마운트해제

umount /mnt

'System Security' 카테고리의 다른 글

DNS서버  (0) 2019.02.27
FTP  (2) 2019.02.26
정리  (0) 2019.02.25
방화벽  (0) 2019.02.22
SSH  (0) 2019.02.22

[미션]


<Telnet Server>

 - 방화벽 활성화

01. 포트변경

- 변경 포트 : 3333

vi /etc/services 

telnet tcp udp 3333으로 변경

service xinetd restart


vi /etc/sysconfig/iptables

service iptables restart








02. 접근통제

    - 192.168.232.0/24 허용

vi /etc/xinetd.conf 


vi /etc/sysconfig/iptables



03. 사용시간 제한

- 허용시간 : 09:00 ~22:00

vi /etc/xinetd.d/telnet

04. 원격 동시 접속자 수

접속자 수 : 50


vi /etc/xinetd.conf

05. Shell에서 Telnet 접속 명령어 완성

telnet [ip주소] [포트번호]


<SSH Server>

01 포트변경

- 변경 포트 : 2222

02 접근 통제

- 허용 :192.168.232.120

vi /etc/ssh/sshd_config

service sshd restart


vi /etc/sysconfig/iptables


service iptables restart



03. root 사용자 원격 로그인 차단

vi /etc/ssh/sshd_config


PermitRootLogin no

04. 로그인 5회 실패시 로그아웃

MaxAuthTries 5


05. Shell에서 SSH 접속 명령어를 완성하시오.

#ssh -l [계정명] [상대측 IP주소] -p 2222



<ping 응답 차단 >

01. 방화벽에서 차단



02. 커널 모듈에서 차단

-ping 차단 명령어를 완성하시오(2가지)

(#  echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all )                    

(#   sysctl -w net.ipv4.icmp_echo_ignore_all=1)                       

03. 시스템 재시작 후에도 차단되도록 설정

vi /etc/sysctl.conf 

net.ipv4.icmp_echo_ignore_all = 1





'System Security' 카테고리의 다른 글

FTP  (2) 2019.02.26
NFS(Network File System)  (0) 2019.02.25
방화벽  (0) 2019.02.22
SSH  (0) 2019.02.22
xinetd와 telnet  (0) 2019.02.22


icmp 원천봉쇄 //내부 외부 둘다 봉쇄


cd /proc/sys/net/ipv4  안에 있는 icmp_echo_ignore_all


// vi로 설정이 안되기에 아래와 같이 해야함.


echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

                   

 sysctl -w net.ipv4.icmp_echo_ignore_all=1          


재시작해도 설정이 저장되게 하는법


vi /etc/sysctl.conf 







CentOs7 방화벽


firewall-cmd --permanent --add-service=http   //http 영구적으로 열어주기.

firewall-cmd --reload //갱신

friewall-cmd --list-services //열린 포트확인




'System Security' 카테고리의 다른 글

NFS(Network File System)  (0) 2019.02.25
정리  (0) 2019.02.25
SSH  (0) 2019.02.22
xinetd와 telnet  (0) 2019.02.22
쉘명령으로 cpu부하  (0) 2019.02.21

[SSH]

01.SSH


02.환경설정 파일

-/etc/ssh/sshd_config


Port //포트번호 변경가능

PermitRootLogin //root로그인 허용

MaxAuthTries //틀린 횟수제한

MaxSessions 10 //최대 10대 허용


03 .셸 접속방법
#ssh -l [계정명] [상대측 IP주소] -p 23






[ssh포트변경하기]

setenforce 0 //이것을 꺼놔야 변경이 된다. selinux 설정을 끄는 것


vi /etc/ssh/sshd_config

port 2002 로 변경


systemctl restart sshd //재시작


firewalld 설정

firewall-config //설정 창 들어가짐.



putty로 접속



'System Security' 카테고리의 다른 글

정리  (0) 2019.02.25
방화벽  (0) 2019.02.22
xinetd와 telnet  (0) 2019.02.22
쉘명령으로 cpu부하  (0) 2019.02.21
프로세스 공격  (0) 2019.02.21

슈퍼데몬


telnet포트변경

vi /etc/services

telnet tcp ,udp 둘다 원하는 값으로 변경





vi /etc/xinetd.conf 


no_access = 아이피주소 주면 차단

only_from = ip넣으면 허용

(192.168.100.0 해당네트워크 전체 차단,허용)

max_load = 최대 부하률


cps  = 50 10  //초당 요청받은 수에 대한 설정

//초당 요구가 50개 이상일 경우에 10초동안 접속 연결 중단

per_source //같은 IP주소로 접속할 수 있는 최대 접속 수 지정

instances // 동시에 서비스할 수있는 서버의 최대개수 지정


텔넷 제한  //192.168.232.0 네트워크대역 차단


192.168.232.110 이 텔넷 접속하려 했을 때

 


[iptable Rule]

-s 192.168.232.0/255.255.255.0 -p tcp --dport 23 -j ACCEPT

//원하는 대역만 허용


iptable은 설정을 주지 않으면 암묵적 룰로 텔넷을 차단한다.


아래 그림과 같이 추가를 해주면 iptable이 켜져도 접속이 허용 된다.


//성공된 모습


vi /etc/xinetd.d/telnet  

access_times을 통해 원하는 시각에만 허용할 수 있다.


'System Security' 카테고리의 다른 글

방화벽  (0) 2019.02.22
SSH  (0) 2019.02.22
쉘명령으로 cpu부하  (0) 2019.02.21
프로세스 공격  (0) 2019.02.21
메모리 고갈공격(DOS)  (0) 2019.02.21

vi shell.sh


#!/bin/bash

START=0

END=1000000000000000000

        while [ $START -le $END ]

        do

        START=`expr $START + 1`

done


chmod 777 shell.sh


./shell.sh



gnome-system-monitor          //cpu가 100퍼까지 오른다.



vi  sf.sh

#!/bin/sh

        while true

do

        a=1

done


chmod 777 sf.sh


./sf.sh


gnome-system-monitor          //cpu가 100퍼까지 오른다.







'System Security' 카테고리의 다른 글

SSH  (0) 2019.02.22
xinetd와 telnet  (0) 2019.02.22
프로세스 공격  (0) 2019.02.21
메모리 고갈공격(DOS)  (0) 2019.02.21
디스크 고갈 공격(DOS)  (0) 2019.02.21

+ Recent posts