2014년 11월 4일 화요일

kisa openapi 질의 내용이 부정확 합니다. error

kisa openapi 로 질의시 아래와 같은 에러가 뜸.

문자셋 때문인가 해서 euc-kr, ansi 다 바꿔 봐도 안됨.

kisa에 문의.

아래와 같이 답변.
Whois OpenAPI를 통해 질의를 주신 부분에 대해 아래와 같이 답변드립니다.

KISA에서 운영하는 OpenAPI는 KISA가 보유한 IP 및 도메인(.KR 및 .한국)에 대해 최적화 되어 있습니다.

도메인을 검색하면 형식에 맞지 않는다고 응답이 나가는 부분은 선생님께서 국가도메인(.KR 및 .한국)이 아닌 기타 도메인(.com, ,net 등)을 질의하신 것으로 보입니다.

이는 각 도메인마다 제공하는 Whois 정보가 상이하여, 타 도메인은 KISA Whois OpenAPI로 제공이 불가하오니, 이점 참고하여 주시기 바랍니다.

 
<whois>
<krdomain>
<error>
<name>naver.com</name>
<error_code>031</error_code>
<error_msg>
# KOREAN(UTF8) 질의 내용이 부정확 합니다. 아래 주소 조회 예제를 확인하신 후 조회하여 주시기 바랍니다. 도메인 네임 검색 : 예) nic.or.kr 한글 도메인 검색 : 예) 한국인터넷정보센터.kr # ENGLISH The query type is incorrect. Please see the following query examples and try again. Domain Name Search : ex) nic.or.kr - NIDA/KRNIC Whois Service -
</error_msg>
</error>
</krdomain>
</whois>

naver.co.kr 로 했더니, 제대로 가져옴.

2014년 10월 29일 수요일

INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path

서버 : centos 6.3

 

톰캣 실행시 아래와 같은 로그 나옴.

INFO: The APR based Apache Tomcat Native library which allows optimal performance in
production environments was not found on the java.library.path: /usr/lib64/gcj-4.4.7

 

INFO 라 무시해도 되지만 신경이 쓰임.




APR 이란 아파치 포터블 런타임(Apache Portable Runtime)의 약자. 톰캣을 웹서버로 사용할 때 퍼포먼스 향상을 위해 사용.

http://kenu.github.io/tomcat70/docs/apr.html




yum 으로 설치 지원이 안되서, 직접 컴파일 해야 됨.

 

컴파일 시 필요 한 것들,  yum 설치.

yum install apr apr-devel openssl-devel java-1.7.0-openjdk java-1.7.0-openjdk-devel

 

컴파일 도구 설치
yum groupinstall "Development Tools"




tomcat-native 소스 파일 컴파일.  (APR를 톰캣에서 사용하기 위한 JNI wrappers)

wget http://mirror.apache-kr.org/tomcat/tomcat-connectors/native/1.1.31/source/tomcat-native-1.1.31-src.tar.gz
tar zxvf tomcat-native-1.1.31-src.tar.gz
cd tomcat-native-1.1.31-src
cd jni/native/

./configure --with-apr=/usr/bin/apr-1-config

 

에러발생시

checking for JDK location (please wait)... checking Try to guess JDK location... configure: error: can't locate a valid JDK location

 

yum 설치한 jdk 위치 확인후

rpm -ql java-1.7.0-openjdk

 

JDK 위치 정보 옵션으로 지정후 재 설치
./configure --with-apr=/usr/bin/apr-1-config --with-java-home=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/
make
make install

 

설치 경로를 주지 않으면 /usr/local/apr/lib 위치로 설치됨.

 

/etc/profile 파일 제일 하단에 아래 추가
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib

 

적용
# source /etc/profile

 




 

tomcat  시작시 아래처럼 나오면 성공.

INFO: Loaded APR based Apache Tomcat Native library 1.1.31.

 

 

참조

톰캣 실행시 ...was not found on the java.library.path: /usr/lib64/gcj-4.4.7... 에러 발생.

서버 : centos 6.5 64bit

 

/usr/lib64/gcj-4.4.7 해당 위치에 파일이 있는 데도 에러남.

 

 

jdk 설치로 해결.
#jdk 찾기
yum search openJDK
#jdk 설치
yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel

 

 

참조 

2014년 10월 28일 화요일

현재 접속자 중 해외에서 접속한 사람이 있는 지 확인 하는 파워쉘 스크립트.

이 스크립트를 사용하려면 kisa에서 whois openapi key 발급 받아야 됨.


###################### Config ######################
#kisa 에서 발급받은 api key
#http://whois.kisa.or.kr/kor/whois/openAPI_KeyCre.jsp
$kisaKey = "00000000000000000000"
###################### Config ######################




###### kisa open api를 이용해 한국 아이피인지 체크 ########
function whoisKR ($IpAddress)
{
if(-not $IpAddress) {echo "input ip address"; return}

$countryCode = ""

# Do whois lookup with ARIN on the IP address, do crude error check.
$webclient = new-object System.Net.WebClient
$webclient.Encoding = [System.Text.Encoding]::UTF8
[xml][/xml] $ipxml = $webclient.DownloadString("http://whois.kisa.or.kr/openapi/ipascc.jsp?key=$kisaKey&query=$IpAddress&answer=xml")
if (-not $?) { echo "error" ; return }

$countryCode = $ipxml.whois.countryCode

if($countryCode -ne "KR")
{
return $FALSE #NOT KR
}else{
return $TRUE #KR
}

}
###### kisa open api를 이용해 한국 아이피인지 체크 ########


#whoisKR
#whoisKR "222.122.20.1"
#whoisKR "54.217.151.196"


###### MAIN
###### netstat 를 통해 외부 IP가 한국 꺼인지 아닌 지 체크. ########
###### 한국이 아니면 해당 IP를 deny 룰에 적용. ########
###### 참조 : http://www.lazywinadmin.com/2014/08/powershell-parse-this-netstatexe.html
$ForeignAddressIP = @()

# Get the output of netstat
$data = netstat -nat

# Keep only the line with the data (we remove the first lines)
$data = $data[5..$data.count]

# Each line need to be splitted and get rid of unnecessary spaces
foreach ($line in $data)
{
# Get rid of the first whitespaces, at the beginning of the line
$line = $line -replace '^\s+', ''

# Split each property on whitespaces block
$line = $line -split '\s+'

$temp = ($line[2] -split ":")[0]

#예외처리
switch ($temp)
{
"0.0.0.0" {}
"127.0.0.1" {}
"*"{}
"["{}
default {$ForeignAddressIP += $temp}
}

}


$ForeignAddressIP = $ForeignAddressIP | Sort-Object -unique
foreach( $checkIP in $ForeignAddressIP)
{
#한국이면 true, 아니면 false
if(whoisKR $checkIP)
{
'한국 IP : ' + $checkIP
}else{
'!!!!경고, 한국 IP 아님!!!! : ' + $checkIP
}
'-----------------------'

}

cmd /c pause | out-null

2014년 10월 16일 목요일

TP-LINK TL-WN725N 에러

무선 USB 어뎁터인 TP-LINK의 TL-WN725N 사용중.
SoftAP 모드 설정 중 에러 발생.

인터넷 연결 공유(ICS) 구성 실패, SoftAP에 연결할 수 있으나 인터넷 서비스 공유에는 문제가 있을 수 있습니다.

해결책.
제어판 -> 네크워크 및 인터넷 -> 네트워크 연결

Microsoft Virtual WiFi Miniport Adapter 장치를 사용함으로 변경.

드라이버 다운로드

2014년 10월 8일 수요일

HP System Management Homepage 리눅스 설치

HP System Management Homepage 리눅스 설치

HP 장비에 윈도우를 설치할 때는 smart start를 이용해서 설치 하기 때문에
"System Management Homepage" 소프트웨어가 자동으로 설치된다. (이하 smh)

리눅스는 직접 설치하기 때문에 그런거 없다.
리눅스에 shm 를 설치해 보자.



  1. 아래 사이트에 접속해서, 자신의 HP 장비를 찾는다.
    http://h20565.www2.hp.com/portal/site/hpsc

  2. Dowload option에 Get drivers, software & firmware.를 눌러 들어간다.

  3. 지원하는 OS 종류를 선택하는 데, 필자는 CentOs 5 32bit 버젼을 쓰기 때문에, "Red Hat Enterprise Linux 5 Server (x86)" 를 클릭.

  4. Software - System Management 부분으로 간다.

  5. "* RECOMMENDED * HP System Management Homepage for Linux (x86) (American, International)" 클릭

  6. Dowload 버튼을 눌러 다운을 받고, 해당 rpm 파일을 서버에 올린다.

  7. rpm 설치
    rpm -Uvh hpsmh-7.4.0-13.i386.rpm



* 찾기 힘들다면, HP 레포지토리를 이용하는 것도 좋다.

* 몇몇 서버들은 각각의 다운로드 대신에 "소프트웨어 - 서포트팩 -> 관리 구성 요소 팩"만 존재할 수도 있다.

해당 파일을 다운로드 하면 여러가지 설치파일들이 한꺼번에 들어가 있는 경우도 있다.( ex. DL380 G6)



rpm만 설치해도 smh 화면에는 들어갈수는 있는데, 뭐 볼 게 없다.

진단툴도 같이 설치해 줘야 그나마 볼만한게 나온다.

이전화면으로 돌아가서 "* RECOMMENDED * HP Insight Diagnostics Online Edition for Linux (x86 32-bit)" 도 위와 같은 방식으로 설치 한다.

smh는 설치 완료하면 자동으로 실행 된다.

실행되고 있는 지 확인.
ps aux | grep hpsmh
netstat -nat | grep :2381

진단툴까지 설치가 완료 되었으면 smh 화면으로 들어가 보자.



  1. 브라우저에서 서버의 아이피와 포트번호 2381로 접속하자.
    예: http://123.123.123.123:2381

  2. 자동으로 https로 넘어가며 경고창이 뜨는데 무시하자.  그러면 윈도우에서 보던 smh 화면을 볼수 있다.
    User Name 은 "root", Password는 "root 패스워드" 이다.

  3. 로그인을 완료하면 상단에 webapp으로 들어간다.

  4. 하단에 other agent 부분에  "HP Insight Diagnostics " 클릭.

  5. 새창이 뜨면서 장비의 상세 정보를 볼수 있다.

2014년 10월 6일 월요일

Caused by: java.lang.Exception: Connector attribute SSLCertificateFile must be defined when using SSL with APR

 APR connector  사용하면  keystore 파일을 사용할 수 없다고 한다.

Caused by: java.lang.Exception: Connector attribute SSLCertificateFile must be defined when using SSL with APR

 

 

server.xml 상단에

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

부분 주석처리.

ps.
cert 파일로 지정하는 법.