[ Windows ]
1. http://ant.apache.org 에서 Binary Download
2. Windows 환경변수에 다음을 등록 ( 예 )
ANT_HOME = "d:\My Documents\Download\JAVA\apache-ant-1.7.1-bin\apache-ant-1.7.1\bin"
JAVA_HOME = "c:\Program Files\Java\jdk1.6.0_26\bin"
eclipse 다시 시작
2011년 11월 29일 화요일
2011년 10월 20일 목요일
PostgreSQL 에서 원격지 접속 허용 하기
pgAdmin III 의 Tools - Server Configuration - pg_hba.conf 를 사용해서 추가 하니 잘 안된다 ( 9.1 버전인데, Tool 버그가 있는 것 같다 )
걍 PosgresSQL 의 Data 위치에 보면 pg_hba.conf 파일이 있는데 직접 아래와 같이 집어 넣는다.
[ 모든 IP 허용 ]
host all all 0.0.0.0/0 password
그리고 pgAdmin III 의 Tools - Server Configuration - pg_hba.conf 를 열고 Reload Server 버튼을 한번 눌러준다
그리고 원격에서 접속해 보기
[ linux ]
위치 : /var/lib/pgsql/data내용 : host all all 192.168.1.0/16 md5
걍 PosgresSQL 의 Data 위치에 보면 pg_hba.conf 파일이 있는데 직접 아래와 같이 집어 넣는다.
[ 모든 IP 허용 ]
host all all 0.0.0.0/0 password
그리고 pgAdmin III 의 Tools - Server Configuration - pg_hba.conf 를 열고 Reload Server 버튼을 한번 눌러준다
그리고 원격에서 접속해 보기
[ linux ]
위치 : /var/lib/pgsql/data내용 : host all all 192.168.1.0/16 md5
2011년 9월 30일 금요일
HexToAsc
String 형태의 Hex 값을 String 형태의 Ascii 값으로 변환
function TForm1.HexToAsc(strData: String): String;
var
sresult: String;
sfinal: String;
hexc: Cardinal;
i: Integer;
begin
i := 1;
while i <= Length(strData) do
begin
hexc := StrToInt('$' + Copy(strData,i,2));
sresult := IntToStr(hexc);
sresult := chr(StrToInt(sresult));
sfinal := sfinal + sresult;
i := i + 2;
end;
Result := sfinal;
end;
2011년 9월 6일 화요일
Tomcat 서버에 특정 ip 만 접근 할 수 있게 설정하기
1. Tomcat 설치 위치에 conf 폴더 내의 context.xml 파일을 메모장 같은 Editor 로 연다 ( 편집하기 전에 미리 백업을 해두자 )
- Windows 경우 Default 설치 경로 : C:\Program Files\Apache Software Foundation\Tomcat 6.0
- Linux 의 경우 : /usr/local/tomcat
2. context.xml 파일의 맨 끝부분에 다음의 내용이 반드시 있는지 확인 한다
- <WatchedResource>WEB-INF/web.xml</WatchedResource>
3. </WatchedResource> 태그 다음 라인에 아래의 내용을 추가 한다. allow 항목에 허용하고 싶은 ip 를 넣는다. ip 가 여러개 일경우 192.168.1.22|192.168.1.33 과 같이 넣고 저장 한다
- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="IP1|IP2|IP3"/>
4. Tomcat 을 다시 시작 한다
- Windows 경우 : Trayicon 영역에서 tomcat 아이콘을 찾아 마우스 오른쪽 마우스 클릭하여 Stop Service 후 Start Service 하면 된다
- Linux 의 경우 : /etc/init.d/tomcat restart 하면 된다
[ 주의 ]
- Tomcat 의 각종 설정 파일들 안에 한글 주석을 달 경우 주의 해야 한다. 각종 *.xml 파일들이 Tomcat 이 Start 할 때 Parse 되는데 이때 한글 주석을 만나면 Error 가 발생하며, Tomcat Service 는 올라 왔지만, 메인 Servlet 이 Load 실패 하기 때문에 해당 웹 페이지가 열리지 않는다.
어쩔 수 없이 한글 주석을 달아야 한다면, 해당 *.xml 파일의 맨 상단의 encoding='utf-8' 부분을 encoding='eucKR' 로 변경하고, Tomcat 을 재시작하면 된다
- Windows 경우 Default 설치 경로 : C:\Program Files\Apache Software Foundation\Tomcat 6.0
- Linux 의 경우 : /usr/local/tomcat
2. context.xml 파일의 맨 끝부분에 다음의 내용이 반드시 있는지 확인 한다
- <WatchedResource>WEB-INF/web.xml</WatchedResource>
3. </WatchedResource> 태그 다음 라인에 아래의 내용을 추가 한다. allow 항목에 허용하고 싶은 ip 를 넣는다. ip 가 여러개 일경우 192.168.1.22|192.168.1.33 과 같이 넣고 저장 한다
- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="IP1|IP2|IP3"/>
4. Tomcat 을 다시 시작 한다
- Windows 경우 : Trayicon 영역에서 tomcat 아이콘을 찾아 마우스 오른쪽 마우스 클릭하여 Stop Service 후 Start Service 하면 된다
- Linux 의 경우 : /etc/init.d/tomcat restart 하면 된다
[ 주의 ]
- Tomcat 의 각종 설정 파일들 안에 한글 주석을 달 경우 주의 해야 한다. 각종 *.xml 파일들이 Tomcat 이 Start 할 때 Parse 되는데 이때 한글 주석을 만나면 Error 가 발생하며, Tomcat Service 는 올라 왔지만, 메인 Servlet 이 Load 실패 하기 때문에 해당 웹 페이지가 열리지 않는다.
어쩔 수 없이 한글 주석을 달아야 한다면, 해당 *.xml 파일의 맨 상단의 encoding='utf-8' 부분을 encoding='eucKR' 로 변경하고, Tomcat 을 재시작하면 된다
2011년 8월 23일 화요일
Linux 에서 해당 App 가 어떤 Lib 를 참조하는지 확인
ldd /usr/sbin/asterisk
or
strace -e open /usr/sbin/asterisk ( 없으면 yum install strace )
or
strace -e open /usr/sbin/asterisk ( 없으면 yum install strace )
2011년 8월 22일 월요일
2011년 8월 21일 일요일
Linux 에서 wireshark 로 dump 방법
wireshark 를 설치 하고,
dumpcap -i eth0 -a duration:120 -w /home/20141201_100_eth0_01.pcap
dumpcap -i wlan0 -a duration:120 -w /home/musesoft/20150313_100_wlan0_02.pcap
tcpdump -i any -s 0 -w /home/20140415_200_eth0_01.pcap -vvvv
dumpcap -i eth0 -a duration:120 -w /home/20141201_100_eth0_01.pcap
dumpcap -i wlan0 -a duration:120 -w /home/musesoft/20150313_100_wlan0_02.pcap
tcpdump -i any -s 0 -w /home/20140415_200_eth0_01.pcap -vvvv
2011년 8월 11일 목요일
Linux 에서 AP 잡기
T61 에 무선랜 드라이버 설치하고 삽질 한거는 적어 놓지 않아서, 전혀 기억이 나지 않는다
암튼, AP 를 잡기 위해서는 아래와 같이
- ifconfig wlan0 up ( 만일 무선랜이 꺼져 있으면 )
- iwconfig wlan0 essid "Arisys" key 1234567890 ( 이상하게 가끔 2번씩 시도해야 아래 dhcp 가 잡힌다 )
- dhclient -t 30 wlan0 ( 30 초 동안 DHCP 시도 )
덤으로, Dyndns 도 사용하고 있으니, 아래와 같이 Host ip 를 갱신 한다
( /etc/ddclient.conf 파일에서 "use=if, if=wlan0" 로 되어 있어야 한다 )
- ddclient
[ 참고 ]
- dhclient 가 ip 를 잡지 못하고 계속 시도하려고 했을 때 강제 종료
pidof dhclient ( dhclient 의 Process ID 를 얻기 위해 )
8900
kill 8900
암튼, AP 를 잡기 위해서는 아래와 같이
- ifconfig wlan0 up ( 만일 무선랜이 꺼져 있으면 )
- iwconfig wlan0 essid "Arisys" key 1234567890 ( 이상하게 가끔 2번씩 시도해야 아래 dhcp 가 잡힌다 )
- dhclient -t 30 wlan0 ( 30 초 동안 DHCP 시도 )
덤으로, Dyndns 도 사용하고 있으니, 아래와 같이 Host ip 를 갱신 한다
( /etc/ddclient.conf 파일에서 "use=if, if=wlan0" 로 되어 있어야 한다 )
- ddclient
[ 참고 ]
- dhclient 가 ip 를 잡지 못하고 계속 시도하려고 했을 때 강제 종료
pidof dhclient ( dhclient 의 Process ID 를 얻기 위해 )
8900
kill 8900
2011년 8월 10일 수요일
TLS, sRTP For Asterisk
[ 테스트 환경]
- kernel : 2.6.36
- srtp-1.4.2.tgz
- asterisk-1.8.5.0.tar.gz
- dahdi-linux-complete-2.5.0+2.5.0.tar.gz
- libpri-1.4.12.tar.gz
- OpenSSL-1.0.0d.tar.gz ( 이 문서 작성 당시에 yum 을 통해 설치하면 OpenSSL 0.9.8e-fips-rhel5 이 설치 되는데, 하필 ECC 가 지원되지 않아 1.0.0d 를 사용한다 )
- PhonerLite 1.91
[ Asterisk ]
- key 생성
mkdir /etc/asterisk/keys
- Server 측 인증파일 생성
./ast_tls_cert -C pointermans.dyndns.org -O "Arisys" -d /etc/asterisk/keys
- Client 측 인증파일 생성
./ast_tls_cert -m client -c /etc/asterisk/keys/ca.crt -k /etc/asterisk/keys/ca.key -C pointermans.dyndns.org -O "Arisys" -d /etc/asterisk/keys -o 1000
- sip.conf
[general]
context=default ; Default context for incoming calls
srtpcapable=yes
tlsenable=yes
tlsbindaddr=0.0.0.0
tlscertfile=/etc/asterisk/keys/asterisk.pem
tlscafile=/etc/asterisk/keys/ca.crt
tlscipher=ALL
tlsclientmethod=tlsv1 ;none of the others seem to work with Blink as the client
[1000]
type=peer
context=main
host=dynamic
disallow=all
allow=ulaw
allow=alaw
secret=1000
transport=tls
nat=yes
encryption=yes
canreinvite=no
[1001]
type=peer
context=main
host=dynamic
disallow=all
allow=ulaw
allow=alaw
secret=1001
transport=tls
nat=yes
encryption=yes
canreinvite=no
- extensions.conf
[main]
exten => _XXXX,1,NOOP(SRTP TEST CALL)
exten => _XXXX,n,Set(_SIPSRTP_CRYPTO=enable)
exten => _XXXX,n,DIAL(SIP/${EXTEN})
[ PhonerLite ]
최근 테스트 해본 Softphone 중에 최고!
아래와 같이 설정
[ 결과 ]
- SRTP 만 적용한 SIP Message Flow
- SRTP 음원 : Play 해 봐야 들을 수 없당
- TLS 와 SRTP 가 모두 적용 된 INVITE Method
<--- SIP read from TLS:192.168.1.129:59240 --->
INVITE sip:1001@pointermans.dyndns.org;transport=tls SIP/2.0
Via: SIP/2.0/TLS 192.168.1.129:59240;branch=z9hG4bK008a4625d4cbe011a013005056c00001;rport;alias
From: "1000" <sip:1000@pointermans.dyndns.org>;tag=3955497885
To: <sip:1001@pointermans.dyndns.org;transport=tls>
Call-ID: 008A4625-D4CB-E011-A012-005056C00001@192.168.1.129
CSeq: 108 INVITE
Contact: <sip:1000@192.168.1.129:59240;transport=tls>
Content-Type: application/sdp
Allow: INVITE, OPTIONS, ACK, BYE, CANCEL, INFO, NOTIFY, MESSAGE, UPDATE
Max-Forwards: 70
Supported: 100rel, replaces, from-change
User-Agent: SIPPER for PhonerLite
P-Preferred-Identity: <sip:1000@pointermans.dyndns.org>
Content-Length: 347
v=0
o=- 2733979642 0 IN IP4 192.168.1.129
s=SIPPER for PhonerLite
c=IN IP4 192.168.1.129
t=0 0
m=audio 61911 RTP/SAVP 8 0 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:qvfRcmB5uE0WrXOcRuBV0KgzE3CSl6N9On/gvutN
a=encryption:optional
a=sendrecv
[ 기타 ]
/main/tcptls.c -> ast_tls_read_conf 은 아래 파일에서 사용 됨
/channels/chan_sip.c
/main/http.c
/main/manager.c
[ 참고사이트 ]
일단 설치는 여기 참고 : http://www.technicalhowto.com/opensource/asterisk/installing.html
이놈이 핵심 : http://www.openssl.org/
http://astrecipes.net/index.php?n=398
http://www.remiphilippe.fr/2011/01/16/asterisk-srtp-with-1-8/
http://www.voip-info.org/wiki/view/Asterisk+SRTP
https://wiki.asterisk.org/wiki/display/AST/Secure+Calling+Tutorial
http://srtp.sourceforge.net/srtp.html
- kernel : 2.6.36
- srtp-1.4.2.tgz
- asterisk-1.8.5.0.tar.gz
- dahdi-linux-complete-2.5.0+2.5.0.tar.gz
- libpri-1.4.12.tar.gz
- OpenSSL-1.0.0d.tar.gz ( 이 문서 작성 당시에 yum 을 통해 설치하면 OpenSSL 0.9.8e-fips-rhel5 이 설치 되는데, 하필 ECC 가 지원되지 않아 1.0.0d 를 사용한다 )
- PhonerLite 1.91
[ Asterisk ]
- key 생성
mkdir /etc/asterisk/keys
- Server 측 인증파일 생성
./ast_tls_cert -C pointermans.dyndns.org -O "Arisys" -d /etc/asterisk/keys
- Client 측 인증파일 생성
./ast_tls_cert -m client -c /etc/asterisk/keys/ca.crt -k /etc/asterisk/keys/ca.key -C pointermans.dyndns.org -O "Arisys" -d /etc/asterisk/keys -o 1000
- sip.conf
[general]
context=default ; Default context for incoming calls
srtpcapable=yes
tlsenable=yes
tlsbindaddr=0.0.0.0
tlscertfile=/etc/asterisk/keys/asterisk.pem
tlscafile=/etc/asterisk/keys/ca.crt
tlscipher=ALL
tlsclientmethod=tlsv1 ;none of the others seem to work with Blink as the client
[1000]
type=peer
context=main
host=dynamic
disallow=all
allow=ulaw
allow=alaw
secret=1000
transport=tls
nat=yes
encryption=yes
canreinvite=no
[1001]
type=peer
context=main
host=dynamic
disallow=all
allow=ulaw
allow=alaw
secret=1001
transport=tls
nat=yes
encryption=yes
canreinvite=no
- extensions.conf
[main]
exten => _XXXX,1,NOOP(SRTP TEST CALL)
exten => _XXXX,n,Set(_SIPSRTP_CRYPTO=enable)
exten => _XXXX,n,DIAL(SIP/${EXTEN})
[ PhonerLite ]
최근 테스트 해본 Softphone 중에 최고!
아래와 같이 설정
[ 결과 ]
- SRTP 만 적용한 SIP Message Flow
- SRTP 음원 : Play 해 봐야 들을 수 없당
- TLS 와 SRTP 가 모두 적용 된 INVITE Method
<--- SIP read from TLS:192.168.1.129:59240 --->
INVITE sip:1001@pointermans.dyndns.org;transport=tls SIP/2.0
Via: SIP/2.0/TLS 192.168.1.129:59240;branch=z9hG4bK008a4625d4cbe011a013005056c00001;rport;alias
From: "1000" <sip:1000@pointermans.dyndns.org>;tag=3955497885
To: <sip:1001@pointermans.dyndns.org;transport=tls>
Call-ID: 008A4625-D4CB-E011-A012-005056C00001@192.168.1.129
CSeq: 108 INVITE
Contact: <sip:1000@192.168.1.129:59240;transport=tls>
Content-Type: application/sdp
Allow: INVITE, OPTIONS, ACK, BYE, CANCEL, INFO, NOTIFY, MESSAGE, UPDATE
Max-Forwards: 70
Supported: 100rel, replaces, from-change
User-Agent: SIPPER for PhonerLite
P-Preferred-Identity: <sip:1000@pointermans.dyndns.org>
Content-Length: 347
v=0
o=- 2733979642 0 IN IP4 192.168.1.129
s=SIPPER for PhonerLite
c=IN IP4 192.168.1.129
t=0 0
m=audio 61911 RTP/SAVP 8 0 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:qvfRcmB5uE0WrXOcRuBV0KgzE3CSl6N9On/gvutN
a=encryption:optional
a=sendrecv
[ 기타 ]
/main/tcptls.c -> ast_tls_read_conf 은 아래 파일에서 사용 됨
/channels/chan_sip.c
/main/http.c
/main/manager.c
[ 참고사이트 ]
일단 설치는 여기 참고 : http://www.technicalhowto.com/opensource/asterisk/installing.html
이놈이 핵심 : http://www.openssl.org/
http://astrecipes.net/index.php?n=398
http://www.remiphilippe.fr/2011/01/16/asterisk-srtp-with-1-8/
http://www.voip-info.org/wiki/view/Asterisk+SRTP
https://wiki.asterisk.org/wiki/display/AST/Secure+Calling+Tutorial
http://srtp.sourceforge.net/srtp.html
2011년 8월 4일 목요일
Using JavaBean Bridge for Active X Control
[ 설명 ]
Java 로 개발 된 Lib(jar) 를 ocx 로 변환 할 수 있는 것 같아서 해봤다
최종적으로 ocx 를 배포 했을 때, JRE 환경과 참조되는 jar 등이 있을 때 어떻게 되는지 확인 해 봐야 한다
[ 테스트 실행 환경 ]
- JDK 1.6.0_26
- Visual Studio 6.0 ( sp6 )
- 간단한 jar 파일 ( 소스는 아래와 같다 )
package choi.test;
public class Tester {
private String _hello = "Hello World!";
public static void main (String[] args) {
}
public String getHello() {
return _hello ;
}
public void setHello(String s) {
_hello = s;
}
}
[ 환경변수 설정 ]
- 사용하는 JDK 의 경로가 JAVA_HOME 에 등록 되어 있어야 한다
예 > c:\Program Files\Java\jdk1.6.0_26
[ 방법 ]
- 다음과 같이 자신의 JRE_HOME root 에 폴더를 만든다 ( c:\Program Files\Java\jre6\axbridge\bin )
- cmd 실행
- CD c:\Program Files\Microsoft Visual Studio\VC98\Bin
- VCVARS32.BAT 을 일단 실행해야 한다
- 그리고 clsid 생성을 위해 c:\Program Files\Microsoft Visual Studio\COMMON\Tools\GUIDGEN.EXE 를 실행하여 clsid 를 만들어 아래의 명령에 적용 한다 ( 단, 매번 생성하지 말야야 한다. jar 하나 당 한개 )
- packager -clsid {3129823F-8366-4469-A04A-EF4229C892CF} -out "c:\Program Files\Java\jre6\axbridge\bin" -reg "c:\Program Files\Java\jre6\axbridge\bin\Tester.jar" choi.test.Tester
** clsid 를 넣지 않으면 자동 생성 된다
** out 은 위에서 만든 경로를 지정 한다 ( 스페이스가 있는 경로 이므로 쌍따옴표로 묶어 준다 )
** reg 에 사용되는 Package 명은 choi.test.Tester 처럼 Main Class 의 Full Name 을 사용해야 한다
[ 결과 ]
- 델파이에서는 2개의 메소드(getHello, setHello) 잘 동작 한다. 그런데, 로딩될 때 시간이 좀 걸리는 것 같다
[ 참고사이트 ]
http://www.calsoftlabs.com/whitepapers/java-beans.html
http://blog.naver.com/PostView.nhn?blogId=sj99yang&logNo=140001494736&viewDate=¤tPage=1&listtype=0
http://www.javastudy.co.kr/docs/outsourcing/javacomponent.html
http://www.rgagnon.com/javadetails/java-0045.html
http://java.sun.com/products/plugin/1.3/docs/script.html
http://download.oracle.com/javase/tutorial/javabeans/
http://download.oracle.com/javase/1.4.2/docs/guide/beans/axbridge/developerguide/index.html
http://javaactivex.com/
Java 로 개발 된 Lib(jar) 를 ocx 로 변환 할 수 있는 것 같아서 해봤다
최종적으로 ocx 를 배포 했을 때, JRE 환경과 참조되는 jar 등이 있을 때 어떻게 되는지 확인 해 봐야 한다
[ 테스트 실행 환경 ]
- JDK 1.6.0_26
- Visual Studio 6.0 ( sp6 )
- 간단한 jar 파일 ( 소스는 아래와 같다 )
package choi.test;
public class Tester {
private String _hello = "Hello World!";
public static void main (String[] args) {
}
public String getHello() {
return _hello ;
}
public void setHello(String s) {
_hello = s;
}
}
[ 환경변수 설정 ]
- 사용하는 JDK 의 경로가 JAVA_HOME 에 등록 되어 있어야 한다
예 > c:\Program Files\Java\jdk1.6.0_26
[ 방법 ]
- 다음과 같이 자신의 JRE_HOME root 에 폴더를 만든다 ( c:\Program Files\Java\jre6\axbridge\bin )
- cmd 실행
- CD c:\Program Files\Microsoft Visual Studio\VC98\Bin
- VCVARS32.BAT 을 일단 실행해야 한다
- 그리고 clsid 생성을 위해 c:\Program Files\Microsoft Visual Studio\COMMON\Tools\GUIDGEN.EXE 를 실행하여 clsid 를 만들어 아래의 명령에 적용 한다 ( 단, 매번 생성하지 말야야 한다. jar 하나 당 한개 )
- packager -clsid {3129823F-8366-4469-A04A-EF4229C892CF} -out "c:\Program Files\Java\jre6\axbridge\bin" -reg "c:\Program Files\Java\jre6\axbridge\bin\Tester.jar" choi.test.Tester
** clsid 를 넣지 않으면 자동 생성 된다
** out 은 위에서 만든 경로를 지정 한다 ( 스페이스가 있는 경로 이므로 쌍따옴표로 묶어 준다 )
** reg 에 사용되는 Package 명은 choi.test.Tester 처럼 Main Class 의 Full Name 을 사용해야 한다
[ 결과 ]
- 델파이에서는 2개의 메소드(getHello, setHello) 잘 동작 한다. 그런데, 로딩될 때 시간이 좀 걸리는 것 같다
[ 참고사이트 ]
http://www.calsoftlabs.com/whitepapers/java-beans.html
http://blog.naver.com/PostView.nhn?blogId=sj99yang&logNo=140001494736&viewDate=¤tPage=1&listtype=0
http://www.javastudy.co.kr/docs/outsourcing/javacomponent.html
http://www.rgagnon.com/javadetails/java-0045.html
http://java.sun.com/products/plugin/1.3/docs/script.html
http://download.oracle.com/javase/tutorial/javabeans/
http://download.oracle.com/javase/1.4.2/docs/guide/beans/axbridge/developerguide/index.html
http://javaactivex.com/
2011년 8월 3일 수요일
2011년 8월 2일 화요일
유용한 Windows 명령어들
- windows7 에서 administrator 계정 활성화
[ 윈도우 명령어 ]
ㆍcalc : 계산기
ㆍcharmap : 문자표
ㆍcleanmgr : 디스크정리
ㆍclipbrd : 클립보드에 복사된 내용 표시
ㆍcmd : 도스명령프롬프트 실행(단, 윈98은 command)
ㆍcontrol : 제어판
ㆍdfrg.msc : 디스크 조각모음
ㆍdxdiag : 다이렉트X 진단도구 및 그래픽과 사운드의 세부정보를 보여줌
ㆍeudcedit : 사용자 정의 문자 편집기
ㆍexplorer : 탐색기
ㆍmagnify : 돋보기
ㆍmobsync : 동기화
ㆍmsconfig : 시작프로그램 제어 등
ㆍmsinfo32 : 시스템정보
ㆍmstsc : 원격 데스크톱 연결
ㆍnetstat -na : 현재 열린포트와 TCP/IP 프로토콜정보를 보여줌, 열린포트로 트라이목마형 바이러스 침투 유무확인가능
ㆍnotepad : 메모장
ㆍntbackup : 백업 및 복원 마법사
ㆍosk : 화상키보드
ㆍpbrush 또는 mspaint : 그림판
ㆍping [사이트주소] : 핑테스트
ㆍregedit : 레지스트리 편집기
ㆍsfc : 시스템 파일 검사기
- 시스템 파일을 검사한후 깨지거난 손실된 파일을
원본 압축파일에서 찾아서 복원시켜줌 단, 윈2000에서
는 cmd실행 후 sfc사용 - 마지막 설정된 값을 다음 윈
도우부팅시 곧바로 실행됨[수정]
ㆍsndrec32 : 녹음기
ㆍsndvol32 : 시스템 사운드 등록정보,볼륨조절
ㆍsysedit : autoexec.bat, config.sys, win.ini, system.ini
시스템구성편집기
ㆍsystray : 사운드 볼륨설정 노란색 스피커 아이콘을
트레이목록에 띄움
ㆍtelnet open [사이트주소] : 텔넷접속명령어
ㆍtourstart : 윈도우 기능안내 html 문서표시
ㆍwab : 주소록
ㆍwinipcfg : 인터넷에 접속된 자신의 아이피 주소를 보여줌.
단, 윈2000은 ipconfig로 변경됨
ㆍwinmine : 지뢰찾기
ㆍwinver : 윈도우 버전확인
ㆍwmplayer : 윈도우 미디어 플레이어
ㆍwordpad : 워드패드
ㆍwscui.cpl : 보안센터
ㆍwupdmgr : 윈도우업데이트
ㆍcertmgr.msc : 인증서 관리
ㆍciadv.msc : 인덱싱 서비스
ㆍcompmgmt.msc : 컴퓨터 관리
ㆍdevmgmt.msc : 장치관리자
ㆍdfrg.msc : 디스크 조각 모음
ㆍdiskmgmt.msc : 디스크 관리
ㆍeventvwr.msc : 이벤트 뷰어 (이벤트 로그)
ㆍfsmgmt.msc : 공유 폴더 (공유 폴더 관리)
ㆍgpedit.msc : 그룹 정책
ㆍlusrmgr.msc : 로컬 사용자 및 그룹
ㆍntmsmgr.msc : Removable Storage
ㆍntmsoprq.msc : 이동식 저장소 운영자 요청
ㆍperfmon.msc : 성능
ㆍrsop.msc : 정책의 결과 집합
ㆍsecpol.msc : 로컬 보안 설정
ㆍservices.msc : 서비스
ㆍwmimgmt.msc : WMI 서비스 구성
ㆍcomexp.msc : comexp 구성 요소 서비스
ㆍcontrol userpasswords2 : 사용자 계정APIPA는 사용 가능하도록 기본 설정되어 있지만, 경우에 따라 사용하지 않도록 바꿔 설정할 수 있다. DHCP 주소와 APIPA 사이에 모드 전환이 되면 사용자에게 DHCP 메시지가 통보된다.
* ipconfig
> ipconfig (현재 설정된 IP, Netmask, Gateway를 볼수 있음)
> ipconfig /all (Device Name, MAC, DNS Server를 볼수 있음)
> ipconfig /flushdns (현재 cache 되어 있는 DNS정보를 삭제)
* netstat
> netstat -na (현재 컴퓨터에서 사용하고 있는 소켓에 대한 정보)
> netstat -rn (현재 컴퓨터의 Routing Table을 볼수 있음)
* tracert (unix의 traceroute 명령어 입니다.)
* find
> find /n "검색어" (unix의 grep 명령어입니다.)
* arp
> arp -a (cache하고 있는 arp table입니다. ping과 같이 네트워크 연결여부 확인)
> arp -d (cache하고 있는 arp table을 삭제하는 명령어 입니다.)
(tip) arp -d로 삭제후 ping을 해봤을때 상대편 컴퓨터의 mac이 보이거나 switch의 mac이 잡히면 네트워크 동작은 정상적으로 이루어진 상태입니다.
* nbtstat
> nbtstat -A 1.1.1.1 (IP를 이용하여 상대방 컴퓨터 이름을 알 수 있습니다.)
> nbtstat -a stone (상대방 컴퓨터 이름을 이용하여 IP를 알 수 있습니다.)
- cmd.exe 관리자 권한으로 실행
- Net user administrator /active:yes
[ 윈도우 명령어 ]
ㆍcalc : 계산기
ㆍcharmap : 문자표
ㆍcleanmgr : 디스크정리
ㆍclipbrd : 클립보드에 복사된 내용 표시
ㆍcmd : 도스명령프롬프트 실행(단, 윈98은 command)
ㆍcontrol : 제어판
ㆍdfrg.msc : 디스크 조각모음
ㆍdxdiag : 다이렉트X 진단도구 및 그래픽과 사운드의 세부정보를 보여줌
ㆍeudcedit : 사용자 정의 문자 편집기
ㆍexplorer : 탐색기
ㆍmagnify : 돋보기
ㆍmobsync : 동기화
ㆍmsconfig : 시작프로그램 제어 등
ㆍmsinfo32 : 시스템정보
ㆍmstsc : 원격 데스크톱 연결
ㆍnetstat -na : 현재 열린포트와 TCP/IP 프로토콜정보를 보여줌, 열린포트로 트라이목마형 바이러스 침투 유무확인가능
ㆍnotepad : 메모장
ㆍntbackup : 백업 및 복원 마법사
ㆍosk : 화상키보드
ㆍpbrush 또는 mspaint : 그림판
ㆍping [사이트주소] : 핑테스트
ㆍregedit : 레지스트리 편집기
ㆍsfc : 시스템 파일 검사기
- 시스템 파일을 검사한후 깨지거난 손실된 파일을
원본 압축파일에서 찾아서 복원시켜줌 단, 윈2000에서
는 cmd실행 후 sfc사용 - 마지막 설정된 값을 다음 윈
도우부팅시 곧바로 실행됨[수정]
ㆍsndrec32 : 녹음기
ㆍsndvol32 : 시스템 사운드 등록정보,볼륨조절
ㆍsysedit : autoexec.bat, config.sys, win.ini, system.ini
시스템구성편집기
ㆍsystray : 사운드 볼륨설정 노란색 스피커 아이콘을
트레이목록에 띄움
ㆍtelnet open [사이트주소] : 텔넷접속명령어
ㆍtourstart : 윈도우 기능안내 html 문서표시
ㆍwab : 주소록
ㆍwinipcfg : 인터넷에 접속된 자신의 아이피 주소를 보여줌.
단, 윈2000은 ipconfig로 변경됨
ㆍwinmine : 지뢰찾기
ㆍwinver : 윈도우 버전확인
ㆍwmplayer : 윈도우 미디어 플레이어
ㆍwordpad : 워드패드
ㆍwscui.cpl : 보안센터
ㆍwupdmgr : 윈도우업데이트
ㆍcertmgr.msc : 인증서 관리
ㆍciadv.msc : 인덱싱 서비스
ㆍcompmgmt.msc : 컴퓨터 관리
ㆍdevmgmt.msc : 장치관리자
ㆍdfrg.msc : 디스크 조각 모음
ㆍdiskmgmt.msc : 디스크 관리
ㆍeventvwr.msc : 이벤트 뷰어 (이벤트 로그)
ㆍfsmgmt.msc : 공유 폴더 (공유 폴더 관리)
ㆍgpedit.msc : 그룹 정책
ㆍlusrmgr.msc : 로컬 사용자 및 그룹
ㆍntmsmgr.msc : Removable Storage
ㆍntmsoprq.msc : 이동식 저장소 운영자 요청
ㆍperfmon.msc : 성능
ㆍrsop.msc : 정책의 결과 집합
ㆍsecpol.msc : 로컬 보안 설정
ㆍservices.msc : 서비스
ㆍwmimgmt.msc : WMI 서비스 구성
ㆍcomexp.msc : comexp 구성 요소 서비스
ㆍcontrol userpasswords2 : 사용자 계정APIPA는 사용 가능하도록 기본 설정되어 있지만, 경우에 따라 사용하지 않도록 바꿔 설정할 수 있다. DHCP 주소와 APIPA 사이에 모드 전환이 되면 사용자에게 DHCP 메시지가 통보된다.
* ipconfig
> ipconfig (현재 설정된 IP, Netmask, Gateway를 볼수 있음)
> ipconfig /all (Device Name, MAC, DNS Server를 볼수 있음)
> ipconfig /flushdns (현재 cache 되어 있는 DNS정보를 삭제)
* netstat
> netstat -na (현재 컴퓨터에서 사용하고 있는 소켓에 대한 정보)
> netstat -rn (현재 컴퓨터의 Routing Table을 볼수 있음)
* tracert (unix의 traceroute 명령어 입니다.)
* find
> find /n "검색어" (unix의 grep 명령어입니다.)
* arp
> arp -a (cache하고 있는 arp table입니다. ping과 같이 네트워크 연결여부 확인)
> arp -d (cache하고 있는 arp table을 삭제하는 명령어 입니다.)
(tip) arp -d로 삭제후 ping을 해봤을때 상대편 컴퓨터의 mac이 보이거나 switch의 mac이 잡히면 네트워크 동작은 정상적으로 이루어진 상태입니다.
* nbtstat
> nbtstat -A 1.1.1.1 (IP를 이용하여 상대방 컴퓨터 이름을 알 수 있습니다.)
> nbtstat -a stone (상대방 컴퓨터 이름을 이용하여 IP를 알 수 있습니다.)
Linux 에서 SVN 계정 추가 방법
adduser lcyblue
passwd lcyblue
cd /home/svn
svnadmin create lcyblue
vi /home/svn/lcyblue/conf/passwd
해당 파일에 접속 허용할 사용자 아이디 = 패스워크를 입력
passwd lcyblue
cd /home/svn
svnadmin create lcyblue
vi /home/svn/lcyblue/conf/passwd
해당 파일에 접속 허용할 사용자 아이디 = 패스워크를 입력
원격 접속 허용 쿼리
root@server]# mysql -uroot -p mysql
mysql> use mysql
mysql> insert into user (host,user,password) values ('%','root',password('password'));
mysql> show columns from db;
mysql> insert into db values ('%','databasename','root','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y');
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
/etc/init.d/mysqld restart
-다른 host 에서 연결 테스트 해본다
mysql -h192.168.0.200 -uroot -p
mysql> use mysql
mysql> insert into user (host,user,password) values ('%','root',password('password'));
mysql> show columns from db;
mysql> insert into db values ('%','databasename','root','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y','y');
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
/etc/init.d/mysqld restart
-다른 host 에서 연결 테스트 해본다
mysql -h192.168.0.200 -uroot -p
root password set of mysql
#mysql
mysql>use mysql;
mysql>update user set
>password=password(‘1234’)
>where user=’root’;
mysql>flush privileges;
mysql>exit
#mysql ?u root ?p’1234’
mysql>
mysql>use mysql;
mysql>update user set
>password=password(‘1234’)
>where user=’root’;
mysql>flush privileges;
mysql>exit
#mysql ?u root ?p’1234’
mysql>
트렌젝션 로그 삭제 방법
BACKUP LOG [UCCommunicator_Demo] WITH TRUNCATE_ONLY
DBCC SHRINKDATABASE ([UCCommunicator_Demo], TRUNCATEONLY)
DBCC SHRINKDATABASE ([UCCommunicator_Demo], TRUNCATEONLY)
2개의 다른 Server 에서 Query 방법
Select * from openrowset('SQLOLEDB', '원격 DB IP 주소'; 'sa'; 'password', 'Select * from 원격 DB명.테이블명) as a
부팅 시 Ctrl + Alt + Del 없애기
[ Windows 2003 Server 에서 ]
제어판 > 관리도구 > 로컬보안정책 > 보안설정 > 로컬정책 > 보안옵션 => "사용"
제어판 > 관리도구 > 로컬보안정책 > 보안설정 > 로컬정책 > 보안옵션 => "사용"
Outbound CID 변경
exten => _8188,1,Set(CALLERID(num)=1234)
exten => _8188,n,NoOp(===================)
exten => _8188,n,Dial(SIP/901036309431@onenumber)
exten => _8188,n,NoOp(===================)
exten => _8188,n,Dial(SIP/901036309431@onenumber)
CLI 에서 SIP Hardphone Reboot 하기
vi /etc/asterisk/sip_notify.conf
[moim-talk]
Event=>talk
Content-Length=>0
CLI> sip notify moim-talk 3700
출처 > http://blog.naver.com/hsunryou/60112053852
Avaya Phone 도 될까? 내일 해봐야 겠네
[moim-talk]
Event=>talk
Content-Length=>0
CLI> sip notify moim-talk 3700
출처 > http://blog.naver.com/hsunryou/60112053852
Avaya Phone 도 될까? 내일 해봐야 겠네
linux 에서 Packet dump 방법
Console 에서 아래와 같이 입력 한다
dumpcap -i eth0 -a duration:60 -w /home/20110503_1.pcap
dumpcap -i eth0 -a duration:60 -w /home/20110503_1.pcap
Avaya Phone Booting 시 46xx 설정파일을 정상적으로 가져 가는지 확인
Wireshark Filter 에 다음과 같은 설정
http.request.uri contains 46xxsettings.txt
http.request.uri contains 46xxsettings.txt
php 5.2.x 을 yum 을 update 하는 방법
wget http://dev.centos.org/centos/5/CentOS-Testing.repo
/etc/yum.d/CentOS-Testing.repo 생성 후 아래 내용 Edit
[c5-testing]
name=CentOS-5 Testing
baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing
yum --enablerepo=c5-testing update php
/etc/yum.d/CentOS-Testing.repo 생성 후 아래 내용 Edit
[c5-testing]
name=CentOS-5 Testing
baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing
yum --enablerepo=c5-testing update php
CentOS 에서 yum 을 사용하여 Apache, PHP, MySQL 설치 하는 방법
1. MySQL 설치
[root@ruo91 ~]# yum -y install mysql mysql-server
[root@ruo91 ~]# chkconfig --levels 235 mysqld on
[root@ruo91 ~]# /etc/init.d/mysqld start
[root@ruo91 ~]# mysqladmin -u root password 비밀번호
[root@ruo91 ~]# mysqladmin -u root password 123456
2. Apache 설치
[root@ruo91 ~]# yum -y install httpd
[root@ruo91 ~]# chkconfig --levels 235 httpd on
3. PHP 설치
[root@ruo91 ~]# yum -y install php php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
4. phpMyadmin 설치
http://packages.sw.be/rpmforge-release/
[root@ruo91 ~]# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
[root@ruo91 ~]# rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@ruo91 ~]# yum -y install phpmyadmin
phpmyadmin 설정 파일에 알리아스(Alias) 부분만 남기고 모두 주석(#) 처리 합니다.
[root@ruo91 ~]# vi /etc/httpd/conf.d/phpmyadmin.conf
#
# Web application to manage MySQL
#
#<Directory "/usr/share/phpmyadmin">
# Order Deny,Allow
# Deny from all
# Allow from 127.0.0.1
#</Directory>
#
Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin
[root@ruo91 ~]# vi /usr/share/phpmyadmin/config.inc.php
$cfg['Servers'][$i]['auth_type'] = 'http';
[root@ruo91 ~]# /etc/init.d/httpd start
[root@ruo91 ~]# echo '<?php phpinfo(); ?>' > /var/www/html/phpinfo.php
[root@ruo91 ~]# yum -y install mysql mysql-server
[root@ruo91 ~]# chkconfig --levels 235 mysqld on
[root@ruo91 ~]# /etc/init.d/mysqld start
[root@ruo91 ~]# mysqladmin -u root password 비밀번호
[root@ruo91 ~]# mysqladmin -u root password 123456
2. Apache 설치
[root@ruo91 ~]# yum -y install httpd
[root@ruo91 ~]# chkconfig --levels 235 httpd on
3. PHP 설치
[root@ruo91 ~]# yum -y install php php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
4. phpMyadmin 설치
http://packages.sw.be/rpmforge-release/
[root@ruo91 ~]# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
[root@ruo91 ~]# rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@ruo91 ~]# yum -y install phpmyadmin
phpmyadmin 설정 파일에 알리아스(Alias) 부분만 남기고 모두 주석(#) 처리 합니다.
[root@ruo91 ~]# vi /etc/httpd/conf.d/phpmyadmin.conf
#
# Web application to manage MySQL
#
#<Directory "/usr/share/phpmyadmin">
# Order Deny,Allow
# Deny from all
# Allow from 127.0.0.1
#</Directory>
#
Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin
[root@ruo91 ~]# vi /usr/share/phpmyadmin/config.inc.php
$cfg['Servers'][$i]['auth_type'] = 'http';
[root@ruo91 ~]# /etc/init.d/httpd start
[root@ruo91 ~]# echo '<?php phpinfo(); ?>' > /var/www/html/phpinfo.php
shutdown 종류
shutdown -h now 다음 명령은 시스템을 즉시 종료한다.
shutdown -r +5 "시스템 유지보수를 위해 재부팅한다.“ 다음은 메시지를 출력하고 5분 후 재부팅하는 명령이다
shutdown -h 21:00 시스템을 특정한 시간에 종료하게 할 수도 있다
shutdown -rf now 리부팅을 할 때에 파일시스템을 체크하지 않고 하도록 한다
shutdown -r +5 "시스템 유지보수를 위해 재부팅한다.“ 다음은 메시지를 출력하고 5분 후 재부팅하는 명령이다
shutdown -h 21:00 시스템을 특정한 시간에 종료하게 할 수도 있다
shutdown -rf now 리부팅을 할 때에 파일시스템을 체크하지 않고 하도록 한다
selinux 끄기
system-config-securitylevel 을 사용하면 2가지 모두 관리가 됨
vi /etc/sysconfig/selinux
SELINUX=disabled
vi /etc/sysconfig/system-config-securitylevel
vi /etc/sysconfig/selinux
SELINUX=disabled
vi /etc/sysconfig/system-config-securitylevel
NTP Server 설정 변경 방법
/etc/ntp.conf 에 server 항목 수정
service ntpd restart
sudo rdate -s time.bora.net
chkconfig --list ntpd
chkconfig ntpd on
chkconfig --list nptd
ntpq -p
service ntpd restart
sudo rdate -s time.bora.net
chkconfig --list ntpd
chkconfig ntpd on
chkconfig --list nptd
ntpq -p
vsftp 의 기본 root 리렉토리 지정 ( root 의 경우 )
vi /etc/vsftpd/vsftpd.conf 파일에서 anon_root = /var/spool/asterisk/monitor
다른 계정들은 생성하면 홈리렉토리는 /home/생성계정명 으로 생성 된다
## allow normal access when iptables is on
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
/etc/init.d/iptables save
/etc/init.d/iptables restart
다른 계정들은 생성하면 홈리렉토리는 /home/생성계정명 으로 생성 된다
## allow normal access when iptables is on
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
/etc/init.d/iptables save
/etc/init.d/iptables restart
network 설정
/etc/sysconfig/network-scripts/ifcfg-eth0
[ Static ]
IPADDR=192.168.0.2
NETMASK=255.255.255.0
NETWORK=192.168.0.0
BROADCAST=255.255.255.255
GATEWAY=192.168.0.1
[ DHCP ]
BOOTPROTO=dhcp
ONBOOT=yes
/etc/resolv.conf ( nameserver 168.126.63.1 )
/etc/init.d/network restart
[ Static ]
IPADDR=192.168.0.2
NETMASK=255.255.255.0
NETWORK=192.168.0.0
BROADCAST=255.255.255.255
GATEWAY=192.168.0.1
[ DHCP ]
BOOTPROTO=dhcp
ONBOOT=yes
/etc/resolv.conf ( nameserver 168.126.63.1 )
/etc/init.d/network restart
netstat
[ linux ]
netstat -ap | grep mysql ; 사용중인 Port 확인
netstat -an | more ; TCP 통 신을 하는 서비스의 연결상태를 ( Windows )
netstat -nlp ; 연결 되었거나 연결 될 목록
netstat -tupln : Listen 중인 내역만 보기
[ windows ]
netstat -na | find "502"
netstat -ap | grep mysql ; 사용중인 Port 확인
netstat -an | more ; TCP 통 신을 하는 서비스의 연결상태를 ( Windows )
netstat -nlp ; 연결 되었거나 연결 될 목록
netstat -tupln : Listen 중인 내역만 보기
[ windows ]
netstat -na | find "502"
Duplex 설정/변경
ethtool -s eth0 autoneg off speed 100 duplex full
/etc/sysconfig/network-scripts/ifcfg-eth0
ETHTOOL_OPTS="speed 1000 duplex full autoneg off"
/etc/sysconfig/network-scripts/ifcfg-eth0
ETHTOOL_OPTS="speed 1000 duplex full autoneg off"
윈도우 공유 Drive Mount
mount -t cifs //Server/Share /mnt --verbose -o user=username password=password
umount -v /mnt
find command
- search by text
find path -name "*.*" -print | xargs egrep -rnoI "text" | more
- search by filename
find path -name "*.*" -print
find / -name ".git" -type d
find . -name "boot0_nand.bin" -print0 | xargs -0 /bin/ls -Alhtr
find path -name "*.*" -print | xargs egrep -rnoI "text" | more
- search by filename
find path -name "*.*" -print
find / -name ".git" -type d
find . -name "boot0_nand.bin" -print0 | xargs -0 /bin/ls -Alhtr
피드 구독하기:
글 (Atom)