Client가 접속하면 서버를 경유하기 때문에 CloudFlare Server IP로 찍힌다.

php단에서는 $_SERVER['HTTP_CF_CONNECTING_IP'] 헤더에 Real IP가 찍히기 때문에

해당 헤더 존재시 IP를 반환해주면 되지만 HTTP 서버단에서는 위와 같이 간단하게는 안되고

스크립트를 짜주거나 모듈을 만들어 넣어줘야하는 불편함이 있어

CloudFlare에서는 관련 확장 모듈을 지원한다.

[관련 주소 : https://www.cloudflare.com/resources-downloads/#mod_cloudflarehttps://github.com/cloudflare/mod_cloudflare]

패키지나 git에 있는 c 소스나 아무거나 사용하면 된다.


[ Git 소스 설치법 (cPanel 사용시) ]

# wget https://raw.githubusercontent.com/cloudflare/mod_cloudflare/master/EasyApache/installer.sh
# bash installer.sh


[ RedHat(CentOS) 계열 apxs 설치법 ]

# yum install libtool httpd-devel
# wget https://www.cloudflare.com/static/misc/mod_cloudflare/mod_cloudflare.c
# apxs -a -i -c mod_cloudflare.c

httpd.conf에서 

LoadModule cloudflare_module /usr/lib/apache2/modules/mod_cloudflare.so

추가


[ RedHat(CentOS) 계열 패키지 설치법 ]

# yum install glibc.i686
# rpm -i mod_cloudflare-elX.latest.rpm

자동으로 아파치와 연동되지만 수정필요시 /etc/httpd/conf.d/cloudflare.conf를 확인한다.



타OS설치 방법도 OS명령어만 다를뿐 방법은 같다.

패키지 URL은 위의 첫번째 URL에 들어가면 있다.

블로그 이미지

칩사마코더

,

아차피/리눅스/디비 로그 확인


mysql 디비 로그확인

tail -50 /var/log/mysqld.log 


마지막 50줄을 확인하기


아파치 로그확인

tail -50 /var/log/httpd/access_log


아파치 에러 로그확인

tail -50 /var/log/httpd/error_log


리눅스 시스템 로그 확인

tail -50 /var/log/messages


크론 로그확인

tail -50 /var/log/cron


'리눅스' 카테고리의 다른 글

부팅시 자동 실행하기  (0) 2016.10.20
Git 설치  (0) 2016.08.22
리눅스 아이피 차단 설정  (0) 2016.07.10
gzip 파일 압축  (0) 2016.07.10
리눅스 파일 관리  (0) 2016.07.10
블로그 이미지

칩사마코더

,

리눅스  아이피 차단 설정



ip차단 설정

iptables -A INPUT -s 211.224.103.138 -j DROP


ip대역 차단

iptables -A INPUT -t filter -s 211.224.103.0/24 -j DROP

(211.224.103.0 ~ 255까지 256개의 ip를 한꺼번에 차단한다)


설정내역 보기

iptables -L


설정 전체 삭제

iptables -F INPUT


재실행

service iptables restart


'리눅스' 카테고리의 다른 글

Git 설치  (0) 2016.08.22
리눅스 로그 확인하기  (0) 2016.07.10
gzip 파일 압축  (0) 2016.07.10
리눅스 파일 관리  (0) 2016.07.10
scp 다른 서버로 파일 보내기  (0) 2016.07.10
블로그 이미지

칩사마코더

,

아파치 접속이 많은 아이피 뽑기


아파치 로그 파일이 있는 곳으로 cd var/log/httpd  이동한후 


예)

cat access* | awk '{print $1}' | sort | uniq -c | sort 


위 명령어를 치면 아이피들이 잡히지만 


CloudFlare 사용할 경우 실 접속자의 아이피가 나오지 않고


클라우드 아이피가 잡히는데 httpd.conf 파일을 아래와 같이 수정하면


실제 접속 아이피를 뽑아낼수 있다.



<IfModule log_config_module>


    <IfModule log_config_module>

    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{CF-Connecting-IP}i\" \"%{Referer}i\" \"%{User-Agent}i\"" cf_custom


    CustomLog "logs/access_log" cf_custom


    <IfModule logio_module>

          LogFormat "%h %l %u %t \"%r\" %>s %b \"%{CF-Connecting-IP}i\" \"%{Referer}i\" \"%{User-Agent}i\"" cf_custom

    </IfModule>


</IfModule>



CF-Connecting-IP // 이부분이 실제 아이피를 뽑아내는 부분임


httpd.conf 파일 변경후 실제 아이피 뽑아보기

cat access_log | awk '{print $11}' | sort | uniq -c


결과를 check.txt 파일로 저장

cat access_log | awk '{print $11}' | sort | uniq -c > check.txt



tail -20000 access_log | awk '{print $1}' | sort | uniq -c > /var/www/check.txt


블로그 이미지

칩사마코더

,

gzip 파일 압축

리눅스 2016. 7. 10. 04:06

gzip 파일 압축


* 현재폴더 모든 파일 압축하기

zip -r test.zip ./* 


* 현재폴더에 압축풀기

unzip test.zip 

'리눅스' 카테고리의 다른 글

리눅스 로그 확인하기  (0) 2016.07.10
리눅스 아이피 차단 설정  (0) 2016.07.10
리눅스 파일 관리  (0) 2016.07.10
scp 다른 서버로 파일 보내기  (0) 2016.07.10
리눅스 크론 crontab 설명  (0) 2016.07.10
블로그 이미지

칩사마코더

,

리눅스 파일 관리

리눅스 2016. 7. 10. 03:59

폴더내 파일 전부 이동

mv /var/www/html/wordpress/* /var/www/html



리눅스 파일 삭제 이동 생성



MV 파일이동

mv test.zip /var/www/html  


TOUCH 파일 생성

touch file1

file1이라는 빈파일 생성


RM 폴더 및 파일 삭제 

rm -rf test1

옵션 -rf 는 해당 하위 디렉토리 모두 묻지 않고 삭제하기


현재 폴더 파일 전부 삭제
rm -rf ./*


CP 파일 복사

cp ./bt_auto.php ../aaa.php 

상위폴더에 aaa.php 파일이름으로 파일 복사


DU 폴더 크기 확인

du -hs file 

file 폴더의 크기 확인


현재 모든 폴더 크기 확인

du -hs * 


디스크 크기 확인

df -h 



'리눅스' 카테고리의 다른 글

리눅스 로그 확인하기  (0) 2016.07.10
리눅스 아이피 차단 설정  (0) 2016.07.10
gzip 파일 압축  (0) 2016.07.10
scp 다른 서버로 파일 보내기  (0) 2016.07.10
리눅스 크론 crontab 설명  (0) 2016.07.10
블로그 이미지

칩사마코더

,

아마존 ec2를 쓰다 서버에서 다른 서버로 파일을 이동을 해야 하는데


간단한 방법을 구글에서 찾다보니 scp 명령어를 찾게 되었다.


명령어 예)

scp -i /var/www/auto/aws_pwd.pem file1.zip ec2-user@52.69.79.178:/var/www/html


aws_pwd.pem 파일은 52.69.79.178 서버에 접속할수있는 


비밀번호가 들어있는 파일이다.


폴더 전송할때는 -r 옵션을 주어서 아래와 같이 전송


scp -i /var/www/auto/aws_pwd.pem -r html ec2-user@52.69.79.178:/var/www


현재서버에서 file1.zip 파일을 52.69.79.178 서버의 


/var/www/html 폴더로 보낸다는 뜻이다.


연결이 지연될때는 시큐리티 SSH 방화벽이 열려있는지 확인해야함


포트지정해서 보내기


scp -P 7949 file1.zip keymaker@185.145.130.77:/home/keymaker/website/ukik

'리눅스' 카테고리의 다른 글

리눅스 로그 확인하기  (0) 2016.07.10
리눅스 아이피 차단 설정  (0) 2016.07.10
gzip 파일 압축  (0) 2016.07.10
리눅스 파일 관리  (0) 2016.07.10
리눅스 크론 crontab 설명  (0) 2016.07.10
블로그 이미지

칩사마코더

,
서버에서 특정한 작업을 계속 반복 시켜야 할 상황에서 쓰는 명령어
파일 백업이라던지.. php 파일을 반복실행 한다던지..

예)
/usr/bin/php -c /etc/php.ini /var/www/auto/auto.php 
php가 깔린 위치를 지정및 실행할 파일 지정


크론 관련 명령어

크론 재시작

service cron restart 


크론 파일 수정 및 추가

crontab -e 


크론 리스트 보기

crontab -l  


크론 삭제

crontab -r


실행확인  

/usr/bin/php -c /etc/php.ini /var/www/auto/auto.php 


30분 간격으로 실행 

*/30 * * * * /usr/bin/php -c /etc/php.ini /var/www/auto/auto.php > /dev/null 2>&1


위의 문구를 crontab -e 열어 추가해주면 30분 단위로 auto.php 파일을 실행시킨다.


잘 동작하는지는 크론 로그를 통해서 확인


크론 실행 로그 확인

vi /var/log/cron


기본적으로 크론은 초단위로는 실행이 되지 않음.

* * * * * sleep 10;  처럼 10초 단위로 실행시킬수 있음.



'리눅스' 카테고리의 다른 글

리눅스 로그 확인하기  (0) 2016.07.10
리눅스 아이피 차단 설정  (0) 2016.07.10
gzip 파일 압축  (0) 2016.07.10
리눅스 파일 관리  (0) 2016.07.10
scp 다른 서버로 파일 보내기  (0) 2016.07.10
블로그 이미지

칩사마코더

,