2011년 11월 29일 화요일

ANT Install

[ 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년 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

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 을 재시작하면 된다

2011년 8월 23일 화요일

Linux 에서 해당 App 가 어떤 Lib 를 참조하는지 확인

ldd /usr/sbin/asterisk

or

strace -e open /usr/sbin/asterisk ( 없으면 yum install strace )

2011년 8월 22일 월요일

selinux 끄기

sestatus

- vi /etc/sysconfig/selinux
SELINUX=disabled

2011년 8월 21일 일요일

Linux 에서 폴더/하위폴더 권한 주기

chmod -R 777 폴더명

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

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

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

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/

2011년 8월 2일 화요일

유용한 Windows 명령어들

- windows7 에서 administrator 계정 활성화

  1. cmd.exe 관리자 권한으로 실행
  2. 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

해당 파일에 접속 허용할 사용자 아이디 = 패스워크를 입력

MySQL Database 생성 방법

mysql -uroot -p
mysql>show databases;
mysql>create database OneNumber;

CentOS 에서 MySQL Trigger 설정 파일 위치

/var/lib/mysql/OneNumber/*.TRG

원격 접속 허용 쿼리

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

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 버전 확인

mysqladmin --version

트렌젝션 로그 삭제 방법

BACKUP LOG [UCCommunicator_Demo] WITH TRUNCATE_ONLY
DBCC SHRINKDATABASE ([UCCommunicator_Demo], TRUNCATEONLY)

2개의 다른 Server 에서 Query 방법

Select * from openrowset('SQLOLEDB', '원격 DB IP 주소'; 'sa'; 'password', 'Select * from 원격 DB명.테이블명) as a

시스템 정보 관련 프로시져 호출

sp_who
sp_who2
select * from master..sysprocesses

collisions check with windows

netstat -e

부팅 시 로그인 안 물어보기

실행 > control userpasswords2

부팅 시 Ctrl + Alt + Del 없애기

[ Windows 2003 Server 에서 ]
제어판 > 관리도구 > 로컬보안정책 > 보안설정 > 로컬정책 > 보안옵션 => "사용"

96xx Avaya Phone 설정 모드 방법

Boot ... *27238
Network -> Hold 2337#
내선변경 -> Hold 564633#

Outbound CID 변경

exten => _8188,1,Set(CALLERID(num)=1234)
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 도 될까? 내일 해봐야 겠네

CLI 에서 Debug 켜고/끄기

sip debug peer 3700
sip no debug

Asterisk CD 만들기

링크> http://wiki.kldp.org/wiki.php/AsteriskInst/AsteriskCentos5

linux 에서 Packet dump 방법

Console 에서 아래와 같이 입력 한다

dumpcap -i eth0 -a duration:60 -w /home/20110503_1.pcap

http.request.method 만 Filter 하는 경우

http.request.method

특정 Source IP 만 Filter 하는 경우

ip.src == 10.17.69.106

Avaya Phone Booting 시 46xx 설정파일을 정상적으로 가져 가는지 확인

Wireshark Filter 에 다음과 같은 설정
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

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

shutdown 종류

shutdown -h 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

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

시스템의 모든 사용자가 마지막으로 로그인한 시간 확인

lastlog

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

iptable 설정 ( 특정 IP 차단 )

iptables -L -n
iptables -A INPUT -s 78.97.176.41 -j DROP

FreeBSD, CentOS 의 기본 ssh 계정설정 정보 위치

/etc/ssh/sshd.config

rpm 설치 기본 명령

rpm -ivh ~.rpm

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

ftp 접속 시 port 지정 방법

ftp>open "IP"_[Port]

netstat

[ linux ]
netstat -ap | grep mysql   ; 사용중인 Port 확인
netstat -an | more ; TCP 통 신을 하는 서비스의 연결상태를 ( Windows )
netstat -nlp ; 연결 되었거나 연결 될 목록
netstat -tupln : Listen 중인 내역만 보기

[ windows ]
netstat -na | find "502"

tail command

tail -n 100 messages > mesg.tmp

tail -n 100 message | grep "text"

Duplex 설정/변경

ethtool -s eth0 autoneg off speed 100 duplex full

/etc/sysconfig/network-scripts/ifcfg-eth0
ETHTOOL_OPTS="speed 1000 duplex full autoneg off"

현재 실행중인 프로세스

ps -aux
ps -aux | grep a*

메모리 사용량 보기

free -m, top

디스크 사용량 보기

df -a
df -H
fdisk -l | grep Disk

CPU 정보 확인

cat /proc/cpuinfo

리눅스 버전 확인

cat /proc/version

OS 확인 하는 방법

cat /etc/issue

Kernel Version 확인

uname -a

root 암호 변경

passwd [username]

서비스(Service) 설정

ntsysv

설치 된 파일 시스템 확인

cat /prov/filesystem

윈도우 공유 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