2015년 11월 11일 수요일

rsync 로 디렉토리 싱크시 /(슬러시) 주의.

*맨 뒤의 /(슬러시) 표시 주의

 
#같은 동작
rsync -arvze "ssh -p 22" --delete /test 192.168.0.2:/test
rsync -arvze "ssh -p 22" --delete /test 192.168.0.2:/test/
 
#같은 동작
rsync -arvze "ssh -p 22" --delete /test/ 192.168.0.2:/test
rsync -arvze "ssh -p 22" --delete /test/ 192.168.0.2:/test/
 

/를 붙이면 디렉토리를 생성하지 않는다
/를 붙이지 않으면 디렉토리를 생성한다.

결론. 원본 소스 부분만  /(슬러시) 표시만 주의 하면 됨. dest의 /(슬러시)는 영향을 주지 않음.




160930

man rysync 페이지에 해당 내용이 있었음.ㅡㅡ;

정리하면

  1. dest 는 슬래시 상관없음.(man 에도 안나오나, 테스트 결과가 그럼)

  2. src에 슬래시가 붙으면 src 디렉토리 미포함, 안 붙으면 포함

  3. dest 디렉토리가 없으면 1depth까지 생성.

디렉토리를 심볼릭 링크 걸 걸때 주의사항

*맨 뒤의  / 표시 주의
ln -s /usr/local/apache2/ /usr/local/apache/

ln: target `/usr/local/apache/' is not a directory: 그런 파일이나 디렉터리가 없습니다

잘못된 명령어.

 

ln -s /usr/local/apache2/ /usr/local/apache
ln -s /usr/local/apache2/ /usr/local/apache/
ln -s /usr/local/apache2 /usr/local/apache

처음에는 제대로 생성 되나, 다시 한번 실행하면 /usr/local/apache2/ 디렉토리 밑에 한개 더 생성된다.

 
결론. 전부 안됨. 그냥 주의 할 수 밖에 없음.

2015년 11월 10일 화요일

아파치 SSL 설정 파일

아파치 SSL 설정 파일
SSL 설정파일은 4가지가 있다.

1. 인증서파일
SSLCertificateFile

2. 키 파일
SSLCertificateKeyFile

3. Chain CA인증서 파일
SSLCertificateChainFile

4. ROOT CA인증서 파일
SSLCACertificateFile
이 중에서 기본적으로 1,2번인 인증서파일과 키파일만 있으면 설정 가능하다.

3,4번 같은 경우 사용자의 브라우저에서 인증기관이 제대로 등록되어 있지 않을 때,

체인인증서를 등록하면 해당 CA인증서가 브라우저에 등록된다.
3번과 4번 같은 경우 약간 헷갈렸는데, 찾아본 바로는 아래와 같다.

SSLCertificateChainFile 옵션은 version 2.4.8 부터 deprecated 되었다.

해서 이후 부터는 SSLCACertificateFile 를 사용하여 지정하면 된다고 한다..
https://httpd.apache.org/docs/2.4/mod/mod_ssl.html
https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&actp=CROSSLINK&id=SO6252

http://stackoverflow.com/questions/1899983/difference-between-sslcacertificatefile-and-sslcertificatechainfile

ps. 다른 글을 찾았는데, 이분은 아파치 설정에 SSLCertificateChainFile는 2.x,  Apache 1.x는 SSLCACertificateFile 이라고 하신다.

짧은 영어실력이라, 번역이 틀렸을 수도 있음.;;
요즈음은 CA(Certificate Authority,인증기관)에 요청하면 알아서 인증서를 만들어 주기 때문에 csr(certificate

signing request, 인증서 발급 신청서) 파일이 딸려오는데, 이건 원래 인증기관에 요청하는 파일이기 때문에

없어도 된다.

인증기관 마다 보내주는 파일의 이름이 각각 달라서 적용할 때마다 애를 먹어서 여기에 예제를 적어 놓는다.
1. 인증서 파일
아파치 설정명 : SSLCertificateFile
예제)
도메인_cert.pem
cert.pem
server.crt
ssl.crt
2. 키 파일
아파치 설정명 : SSLCertificateKeyFile
예제)
도메인.key
key.pem
server.key
ssl.key
- key 들어가면 key 파일이기 때문에 구별이 쉽다.

3. Chain CA인증서 파일
아파치 설정명 : SSLCertificateChainFile,SSLCACertificateFile
예제)
Chain_RootCA_Bundle.crt
도메인_ChainBundle.cr
secureCA.pem
server-ca.crt
server.ca.pem
ChainCA.cer
Name-Chain.pem
intermediate.pem
ADDTRUST_EXTERNAL_CA_ROOT.crt
ca.pem



https://wiki.kldp.org/HOWTO/html/SSL-RedHat-HOWTO/ssl-redhat-howto-4.html
https://www.ucert.co.kr/tech/sslinstall/apache_standard.html

2015년 10월 8일 목요일

qmail SMTP 접속이 느려지는 현상

메일 보내기가 제대로 되지 않는 현상이 발생.
exec /usr/local/bin/softlimit -m 100000000 \
/usr/local/bin/tcpserver -v -H -R -l0 -c200 -x /etc/tcp.smtp.cdb -u $Q_UID -g $Q_GID 0 25 \
/usr/local/bin/rblsmtpd -t 30 -b -r spamlist.or.kr \
/var/qmail/bin/qmail-smtpd $HOSTNAME /home/vpopmail/bin/vchkpw /bin/true 2>&1

이런 식으로 KISA RBL을 사용하고 있었는데,  해당 spamlist.or.kr 이 문제가 있는 것 같음.

전화해 봤더니, 문제없다고만 하고...

일단 제거로 문제 해결.

2015년 8월 11일 화요일

리눅스 netstat 현재 접속 된 나라 확인.

#!/bin/bash

kisa_key="111111111111111111111";


IPLIST=`netstat -ant |grep "tcp" | awk '{print $5}' | cut -d: -f1 | sort | uniq`

for ip in $IPLIST
do
case "$ip" in
"0.0.0.0"|"127.0.0.1"|"8.8.8.8")
continue;;
*)
return_tmp_xml=`curl -s "http://whois.kisa.or.kr/openapi/ipascc.jsp?key=$kisa_key&query=$ip&answer=xml"`
countryCode=$(grep -oP "(?<=<countryCode>)[^<]+" <<< "$return_tmp_xml")
echo $ip : $countryCode
esac
done

예전에 위와 같이 KISA WHOIS 를 가지고 현재 접속된 나라를 찾았었는데,

geoiplookup 란 명령어가 있었다.

 

geoiplookup 명령어를 사용하려면 YUM 설치 하면 됨.

yum install GeoIP GeoIP-data

 

아래 처럼 하면 KISA KEY 받을 필요도 없고 좋다.
다만 몇몇개 IP는 'IP Address not found' 가 나온다.
#!/bin/bash



IPLIST=`netstat -ant |grep "tcp" | awk '{print $5}' | cut -d: -f1 | sort | uniq`

for ip in $IPLIST
do
case "$ip" in
"0.0.0.0"|"127.0.0.1"|"8.8.8.8")
continue;;
*)
geoiplookup $ip
esac
done

 

 

count 기능을 추가. 해당 아이피가 몇개가 접속해 있는 지 파악. (최종)
#!/bin/bash

#v2
#netstat -ant |grep "tcp" | awk '{print $5}' | cut -d: -f1 | grep -v "^$" | grep -v "0.0.0.0" | sort | uniq -c
netstat -ant |grep "tcp" | awk '{print $5}' | cut -d: -f1 | grep -v "^$" | grep -v "0.0.0.0" | grep -v "127.0.0.1" | sort | uniq -c > output.txt
while read -r line; do
count=$(echo $line | cut -f1 -d " ");
ip=$(echo $line | cut -f2 -d " ");
echo "count: $count, $ip : $(geoiplookup $ip)";
done < output.txt;
rm -rf output.txt

[root@mail foreignIp]# sh netstatIpCountryV2.sh 
count: 1, 108.168.211.204 : GeoIP Country Edition: IP Address not found
count: 1, 109.66.88.75 : GeoIP Country Edition: IP Address not found
count: 1, 112.173.207.169 : GeoIP Country Edition: IP Address not found
count: 3, 112.175.145.4 : GeoIP Country Edition: IP Address not found
count: 3, 112.221.136.253 : GeoIP Country Edition: IP Address not found
count: 1, 113.172.120.40 : GeoIP Country Edition: VN, Vietnam
...

 

참고

2015년 8월 7일 금요일

at least one shared directory is not a valid local path filezilla

filezilla server 설치 후 디렉토리 설정시

"at least one shared directory is not a valid local path" 라는 메시지가 나오며 적용되지 않는다.

 

서비스에서 Application Layer Gateway Service를 실행해주면 잘 된다.

 

출처

2015년 7월 17일 금요일

hpacucli 설치법

URL은 여기 or 여기

1. '제품별로 찾기'에 서버 모델명 넣자. (예: DL160 G8)

1

 

 

 

 

 

 

 

 

2. 검색 결과에서 내 서버 선택. DL160 Gen8 선택 -> HP ProLiant DL160 Gen8 서버 선택

2

 

 

 

 

 

 

3. 운영체제를 CentOs 설치하면 없다. RedHat으로 선택 하자.
4. 소프트웨어 - 시스템관리 카테고리에 보면 hpacucli-9.40-12.0.x86_64.rpm 있다.

3

 

 

 

 

 
다운로드 후 서버에 업로드
5. rpm -Uvh hpacucli-9.40-12.0.x86_64.rpm
---------------------------------------------
DOWNGRADE NOTE: To downgrade this application to any version prior to 9.10.x.x, the current RPM must be manually uninstalled using the "rpm -e" command before any prior versions can be installed.

LOCKING NOTE: The locking mechanism starting with versions 9.10.X.X, are not compatible with prior versions of the applications. Therefore, mixing older and newer versions of the various applications (ACU, HPACUCLI, HPACUSCRIPTING) is not recommended.
---------------------------------------------

요런 메시지 나오는 데, 그냥 무시.

6. #hpacucli 명령어가 나온다면 정상적으로 설치.
사용법은 각자 알아서.
아니면 여기.