'분류 전체보기'에 해당되는 글 171건

  1. 2010.10.14 rsh 사용을 위한 설정과 사용법
  2. 2010.10.07 SQL 학습을 위한 기본 table 생성 스크립트 2
  3. 2010.09.30 [MySQL] NOW() 함수와 SYSDATE() 함수
  4. 2010.05.10 secureCRT(텔넷)에서 파일 다운로드 받기
  5. 2010.04.08 SSL 구성을 위한 인증서 설명 4
  6. 2010.04.06 Eclipse 에서 SVN 사용시 계정 변경하는 방법 1
  7. 2009.10.21 Exchange Server 버전별 기능 비교
  8. 2009.05.17 COM 을 Release 해도 바로 Dll이 Unload 되지 안는다.
  9. 2009.04.11 INFO: CDO, 단순 MAPI 및 확장 MAPI 간의 차이점
  10. 2009.01.20 Visual C++ 프로그램에서 Stack Overflow 문제에 대한 해결방안

rsh 사용을 위한 설정과 사용법

개발 2010. 10. 14. 15:56

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

"manager서버"는 rsh를 실행하는 서버이다.
"target서버"는 원격지의 서버로 관리당하는 서버이다.


1. 일단 target서버에 rsh, rsh-server의 설치가 필요하다.
    yum명령으로 간단하게 설치할수 있다.

$ yum search rsh
================================================== Matched: rsh ==================================================
lam.i386 : LAM (Local Area Multicomputer) 프로그래밍 환경.
lam.x86_64 : LAM (Local Area Multicomputer) 프로그래밍 환경.
fonts-sinhala.noarch : Fonts for Sinhala
openssh.x86_64 : The OpenSSH implementation of SSH protocol versions 1 and 2
rsh.x86_64 : 원격 액세스 명령에 사용되는 클라이언트 (rsh, rlogin, rcp).
rsh-server.x86_64 : 원거리 접속 명령어 (rsh, rlogin, rcp) 에 사용되는 서버.
tcp_wrappers.i386 : TCP 데몬에 사용되는 wrapper로서 활동하는 보안 도구.
tcp_wrappers.x86_64 : TCP 데몬에 사용되는 wrapper로서 활동하는 보안 도구.

$ yum install tcp_wrappers.x86_64

(확인방법)

$ rpm -qa | grep rsh
rsh-0.17-38.el5
rsh-server-0.17-38.el5


2. 이제 Centos 자체에서 설정을 할 차례이다.
target서버에서 어떠한 ip를 허용할 것인지 지정하도록 한다.

/root/.rhosts 에 허용할 ip를 적는다.
/home1/irteam/.rhosts 에 허용할 ip를 적는다.
10.24.9.xxx

.rhosts파일은 보안을 위해서 퍼미션을 변경한다.

# chmod 600 .rhosts


3. 이제 rsh와 rlogin을 활성화( on ) 시킨다.

# chkconfig --level 35 rlogin on
# chkconfig --level 35 rsh on
(활성화 확인)
# chkconfig --list | grep rlogin
# chkconfig --list | grep rsh

4. xinetd 에서도 활성화 한다.

# vi /etc/xinetd.d/rlogin
# default: on
# description: rlogind is the server for the rlogin(1) program.  The server \
#       provides a remote login facility with authentication based on \
#       privileged port numbers from trusted hosts.
service login
{
        socket_type             = stream
        wait                    = no
        user                    = root
        log_on_success          += USERID
        log_on_failure          += USERID
        server                  = /usr/sbin/in.rlogind
        disable                 = no  ( 요기를 no로 변경 )
}

rsh, rlogin을 추가해준다.

# vi /etc/securetty에 rsh, rlogin을 추가해준다.
console
vc/1
vc/2
#vc/3
#vc/4
#vc/5
#vc/6
#vc/7
#vc/8
#vc/9
#vc/10
#vc/11
tty1
tty2
#tty3
#tty4
#tty5
#tty6
#tty7
#tty8
#tty9
#tty10
#tty11
rsh
rlogin

그리고 xinetd를 재시작한다.

# service xinetd restart

5. 비밀번호 없이 들어오도록  수정

# vi /etc/pam.d/rlogin
#%PAM-1.0
# For root login to succeed here with pam_securetty, "rlogin" must be
# listed in /etc/securetty.
auth       sufficient   pam_nologin.so
auth       sufficient   pam_securetty.so
auth       sufficient   pam_env.so
auth       sufficient   pam_rhosts_auth.so
auth       include      system-auth
account    include      system-auth
password   include      system-auth
session    optional     pam_keyinit.so    force revoke
session    include      system-auth


# vi /etc/pam.d/rsh
#%PAM-1.0
# For root login to succeed here with pam_securetty, "rsh" must be
# listed in /etc/securetty.
auth       sufficient   pam_nologin.so
auth       sufficient   pam_securetty.so
auth       sufficient   pam_env.so
auth       required     pam_rhosts_auth.so
account    include      system-auth
session    optional     pam_keyinit.so    force revoke
session    include      system-auth

설정이 완료 되었다.


manager 서버에서는 아래와 같이 실행해면된다.
cmd 부분을 따옴표로 감싸야 파라미터도 같이 전달된다.

# rsh target-ip cmd
# rsh masyncserver 'touch /home1/iretam/test.txt'

참고로 rsh는 보안에 취약하므로 주의해서 사용해야 한다.



:

SQL 학습을 위한 기본 table 생성 스크립트

개발 2010. 10. 7. 15:57

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

해당 sql 스트립트의 출처 : http://www.forta.com/books/0672325675/

teach yourself 10 이라는 책에 나오는 예제이다.
MySQL용 스트립트 입니다.   ( 링크에서는, 각종 DB별로 스트립트를 구할수 있다. )



-------------------------
-- Create Customers table
-------------------------
CREATE TABLE Customers
(
  cust_id      char(10)  NOT NULL ,
  cust_name    char(50)  NOT NULL ,
  cust_address char(50)  NULL ,
  cust_city    char(50)  NULL ,
  cust_state   char(5)   NULL ,
  cust_zip     char(10)  NULL ,
  cust_country char(50)  NULL ,
  cust_contact char(50)  NULL ,
  cust_email   char(255) NULL
);

--------------------------
-- Create OrderItems table
--------------------------
CREATE TABLE OrderItems
(
  order_num  int          NOT NULL ,
  order_item int          NOT NULL ,
  prod_id    char(10)     NOT NULL ,
  quantity   int          NOT NULL ,
  item_price decimal(8,2) NOT NULL
);


----------------------
-- Create Orders table
----------------------
CREATE TABLE Orders
(
  order_num  int      NOT NULL ,
  order_date datetime NOT NULL ,
  cust_id    char(10) NOT NULL
);

------------------------
-- Create Products table
------------------------
CREATE TABLE Products
(
  prod_id    char(10)      NOT NULL ,
  vend_id    char(10)      NOT NULL ,
  prod_name  char(255)     NOT NULL ,
  prod_price decimal(8,2)  NOT NULL ,
  prod_desc  text          NULL
);

-----------------------
-- Create Vendors table
-----------------------
CREATE TABLE Vendors
(
  vend_id      char(10) NOT NULL ,
  vend_name    char(50) NOT NULL ,
  vend_address char(50) NULL ,
  vend_city    char(50) NULL ,
  vend_state   char(5)  NULL ,
  vend_zip     char(10) NULL ,
  vend_country char(50) NULL
);


----------------------
-- Define primary keys
----------------------
ALTER TABLE Customers ADD PRIMARY KEY (cust_id);
ALTER TABLE OrderItems ADD PRIMARY KEY (order_num, order_item);
ALTER TABLE Orders ADD PRIMARY KEY (order_num);
ALTER TABLE Products ADD PRIMARY KEY (prod_id);
ALTER TABLE Vendors ADD PRIMARY KEY (vend_id);


----------------------
-- Define foreign keys
----------------------
ALTER TABLE OrderItems ADD CONSTRAINT FK_OrderItems_Orders FOREIGN KEY (order_num) REFERENCES Orders (order_num);
ALTER TABLE OrderItems ADD CONSTRAINT FK_OrderItems_Products FOREIGN KEY (prod_id) REFERENCES Products (prod_id);
ALTER TABLE Orders ADD CONSTRAINT FK_Orders_Customers FOREIGN KEY (cust_id) REFERENCES Customers (cust_id);
ALTER TABLE Products ADD CONSTRAINT FK_Products_Vendors FOREIGN KEY (vend_id) REFERENCES Vendors (vend_id);


아래는 추가로 데이터 생성 스크립트이다.
---------------------------
-- Populate Customers table
---------------------------
INSERT INTO Customers(cust_id, cust_name, cust_address, cust_city, cust_state, cust_zip, cust_country, cust_contact, cust_email)
VALUES('1000000001', 'Village Toys', '200 Maple Lane', 'Detroit', 'MI', '44444', 'USA', 'John Smith', 'sales@villagetoys.com');
INSERT INTO Customers(cust_id, cust_name, cust_address, cust_city, cust_state, cust_zip, cust_country, cust_contact)
VALUES('1000000002', 'Kids Place', '333 South Lake Drive', 'Columbus', 'OH', '43333', 'USA', 'Michelle Green');
INSERT INTO Customers(cust_id, cust_name, cust_address, cust_city, cust_state, cust_zip, cust_country, cust_contact, cust_email)
VALUES('1000000003', 'Fun4All', '1 Sunny Place', 'Muncie', 'IN', '42222', 'USA', 'Jim Jones', 'jjones@fun4all.com');
INSERT INTO Customers(cust_id, cust_name, cust_address, cust_city, cust_state, cust_zip, cust_country, cust_contact, cust_email)
VALUES('1000000004', 'Fun4All', '829 Riverside Drive', 'Phoenix', 'AZ', '88888', 'USA', 'Denise L. Stephens', 'dstephens@fun4all.com');
INSERT INTO Customers(cust_id, cust_name, cust_address, cust_city, cust_state, cust_zip, cust_country, cust_contact)
VALUES('1000000005', 'The Toy Store', '4545 53rd Street', 'Chicago', 'IL', '54545', 'USA', 'Kim Howard');

-------------------------
-- Populate Vendors table
-------------------------
INSERT INTO Vendors(vend_id, vend_name, vend_address, vend_city, vend_state, vend_zip, vend_country)
VALUES('BRS01','Bears R Us','123 Main Street','Bear Town','MI','44444', 'USA');
INSERT INTO Vendors(vend_id, vend_name, vend_address, vend_city, vend_state, vend_zip, vend_country)
VALUES('BRE02','Bear Emporium','500 Park Street','Anytown','OH','44333', 'USA');
INSERT INTO Vendors(vend_id, vend_name, vend_address, vend_city, vend_state, vend_zip, vend_country)
VALUES('DLL01','Doll House Inc.','555 High Street','Dollsville','CA','99999', 'USA');
INSERT INTO Vendors(vend_id, vend_name, vend_address, vend_city, vend_state, vend_zip, vend_country)
VALUES('FRB01','Furball Inc.','1000 5th Avenue','New York','NY','11111', 'USA');
INSERT INTO Vendors(vend_id, vend_name, vend_address, vend_city, vend_state, vend_zip, vend_country)
VALUES('FNG01','Fun and Games','42 Galaxy Road','London', NULL,'N16 6PS', 'England');
INSERT INTO Vendors(vend_id, vend_name, vend_address, vend_city, vend_state, vend_zip, vend_country)
VALUES('JTS01','Jouets et ours','1 Rue Amusement','Paris', NULL,'45678', 'France');

--------------------------
-- Populate Products table
--------------------------
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('BR01', 'BRS01', '8 inch teddy bear', 5.99, '8 inch teddy bear, comes with cap and jacket');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('BR02', 'BRS01', '12 inch teddy bear', 8.99, '12 inch teddy bear, comes with cap and jacket');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('BR03', 'BRS01', '18 inch teddy bear', 11.99, '18 inch teddy bear, comes with cap and jacket');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('BNBG01', 'DLL01', 'Fish bean bag toy', 3.49, 'Fish bean bag toy, complete with bean bag worms with which to feed it');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('BNBG02', 'DLL01', 'Bird bean bag toy', 3.49, 'Bird bean bag toy, eggs are not included');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('BNBG03', 'DLL01', 'Rabbit bean bag toy', 3.49, 'Rabbit bean bag toy, comes with bean bag carrots');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('RGAN01', 'DLL01', 'Raggedy Ann', 4.99, '18 inch Raggedy Ann doll');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('RYL01', 'FNG01', 'King doll', 9.49, '12 inch king doll with royal garments and crown');
INSERT INTO Products(prod_id, vend_id, prod_name, prod_price, prod_desc)
VALUES('RYL02', 'FNG01', 'Queen doll', 9.49, '12 inch queen doll with royal garments and crown');

------------------------
-- Populate Orders table
------------------------
INSERT INTO Orders(order_num, order_date, cust_id)
VALUES(20005, '2004-05-01', '1000000001');
INSERT INTO Orders(order_num, order_date, cust_id)
VALUES(20006, '2004-01-12', '1000000003');
INSERT INTO Orders(order_num, order_date, cust_id)
VALUES(20007, '2004-01-30', '1000000004');
INSERT INTO Orders(order_num, order_date, cust_id)
VALUES(20008, '2004-02-03', '1000000005');
INSERT INTO Orders(order_num, order_date, cust_id)
VALUES(20009, '2004-02-08', '1000000001');

----------------------------
-- Populate OrderItems table
----------------------------
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20005, 1, 'BR01', 100, 5.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20005, 2, 'BR03', 100, 10.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20006, 1, 'BR01', 20, 5.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20006, 2, 'BR02', 10, 8.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20006, 3, 'BR03', 10, 11.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20007, 1, 'BR03', 50, 11.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20007, 2, 'BNBG01', 100, 2.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20007, 3, 'BNBG02', 100, 2.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20007, 4, 'BNBG03', 100, 2.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20007, 5, 'RGAN01', 50, 4.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20008, 1, 'RGAN01', 5, 4.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20008, 2, 'BR03', 5, 11.99);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20008, 3, 'BNBG01', 10, 3.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20008, 4, 'BNBG02', 10, 3.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20008, 5, 'BNBG03', 10, 3.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20009, 1, 'BNBG01', 250, 2.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20009, 2, 'BNBG02', 250, 2.49);
INSERT INTO OrderItems(order_num, order_item, prod_id, quantity, item_price)
VALUES(20009, 3, 'BNBG03', 250, 2.49);



:

[MySQL] NOW() 함수와 SYSDATE() 함수

개발 2010. 9. 30. 14:23

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
현재의 시간을 구하는 2개의 함수가 있다.

NOW()
SYSDATE()

차이점은 무엇일까?
아래의 쿼리를 보면 알수 있다.

SELECT NOW(), SLEEP(2), NOW();
SELECT SYSDATE(), SLEEP(2), SYSDATE();

짐작이 되는가?

결과를 보자..

SELECT NOW(), SLEEP(2), NOW();
2010-09-30 14:18:35 0 2010-09-30 14:18:35

SELECT SYSDATE(), SLEEP(2), SYSDATE();
2010-09-30 14:18:35 0 2010-09-30 14:18:37


그렇다.. SYSDATE는 함수가 실행되는 순간의 시간이고, NOW는 쿼리가 실행되는 순간의 시간이다.
간단한 차이지만, SYSDATE를 사용할때 발생할수 있는 문제점은 뭐가 있을까?

한가지는, Replication이다. 리플리케이션으로 구성되어 있을때, SYSDATE를 사용하면 입력된 시간이 Master/Slave의 시간이 다를수가 있게된다. 그래서 사용시 주의가필요하다.


:

secureCRT(텔넷)에서 파일 다운로드 받기

개발 2010. 5. 10. 19:25

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

CRT 즉 텔넷을 이용하여 파일을 전송할땐 rz 와 sz을 사용합니다.

업로드에는 rz

다운로드에는 sz

-a를 붙이면, 텍스트 파일을 전송할수 있습니다.

일반 파일의 경우

rz [엔터] 파일전송 상자가 열립니다. 추가하고 확인 누르시면 올라갑니다.

sz 파일명 [엔터] 파일이 셋팅된(CRT에서) 위치로 저장됩니다.

텍스트 파일의 경우

rz -a [엔터] 파일전송 상자가 열립니다. 추가하고 확인 누르시면 올라갑니다.

sz -a 파일명 [엔터] 파일이 셋팅된(CRT에서) 위치로 저장됩니다.




:

SSL 구성을 위한 인증서 설명

개발 2010. 4. 8. 13:05

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

인증서를 신청할때도 용도에 맞게 신청해야 된다.
verisigne을 기준으로 SecureID / GlobalID 두가지가 있는데,
Secure는 SGC 가 적용이 안된 것
따라서 128bit SSL을 지원안하는 클라이언트를 위해서는 Global용 인증서을 발급받아야 된다. 가격은 global이 두배정도 비싸다.

아래는 설명
출처 : http://www.certkorea.co.kr/doc.asp?t_why128


왜 128비트 SSL인증서를 사용해야 하는가?

1. 들어가면서

최근에 개인정보 보호 및 암호화 통신에 대한 관심이 높아지면서 국내에서도 많은 웹서비스 업체들이 SSL(Socket Secure Layer)를 통한 데이터 보호에 박차를 가지고 있습니다. 이에 발맞추어 베리사인을 비롯한 세계적인 글로벌 인증회사들이 국내에 SSL 서버 인증서를 직접 공급하기 시작하였습니다. SSL서버 인증서는 크게 흔히 128비트, 40비트 인증서로 나누어 집니다. 또한, 인증서의 가격차이도 크게 2배이상 되므로 인증서를 구매하는 회사에 따라서는 어떤 인증서를 구매해야 할지 망설이기도 합니다.

본 기술문서에서는 SSL 인증서의 종류에 따른 서비스 차이는 무엇이며, 현재의 인터넷 경향을 비추어 어떤 인증서를 구매해야 하는지 각 인증서의 종류와 회사 그리고 가격대비 인증서 구매 방법들을 가이드 하기 위한 목적으로 만들어 졌습니다. 본 문서는 써트코리아에서 제작되었으며, SSL 제품판매에 유리한 내용이 포함되어 있을 수도 있으므로, SSL 인증서 고객들의 참고용으로 사용하기를 권장합니다.

2. 40비트냐? 128비트냐?

비트(Bit)는 웹브라우저와 웹서버 사이의 암호화 통신을 할때, 사용하는 암호화 강도를 보여주는 숫자입니다. 강도에 따라 40,56,128,512,1024비트의 다섯단계로 나누어지며, 숫자가 클수록 해독하기 어렵습니다. 그동안 대부분의 SSL통신 이 40~56비트 암호화에서 이루어졌으며, 128이상의 경우 금융거래 같은 중요한 정보를 주고 받을 때 사용하고 있습니다.

그러나 1999년 7월 이전에는 미국의 암호화제품 수출금지법에 의해 128비트용 인터넷익스플러와 넷스케이프 등의 웹브라우저를 미국외에서는 사용할 수가 없었습니다. 99년 7월 이후 미 상무부의 결정에 따라 돈세탁방지 협약에 가입된 45개국의 금융기관에 56비트 이상 암호화 제품의 수출을 허락 했으며, 2000년에는 북한,이라크 등 테러지원국을 제외한 전 세계에 암호화제품의 수출이 가능해졌습니다.

이는 세계적인 보안회사인 RSA가 매년 개최하는 99년 암호 해독대회에서 10만대의 PC가 연결된 EEF라는 사이트에서 56Bit 암호메세지를 22시간 15분만에 해독해 내고 난 이후에 결정된 사항입니다. 40Bit 암호화 수준은 이미 쉽게 해킹이 가능하며, 56Bit 역시 쉽지는 않아도 해킹이 가능하다는 것이 밝혀졌습니다.

따라서, 이제 인터넷상에서도 40비트 혹은 56비트 암호화 방식으로 통신을 하는 것은 정보보호 관점에서는 안전하지 않음이 밝혀졌습니다.

HTTPS라는 사이트로 접근했을때, 자신의 브라우저 아래쪽 노란 자물쇠를 클릭하면 오른쪽과 같이 통신 암호화 강도를 볼수 있습니다. 이때 암호화 강도가 40 혹은 56으로 나타난다면 당신의 SSL보안 접속이 결코 안전하지 않은 것입니다.

3. 128비트 암호화 통신을 하려면?

키 길이가 한 비트씩 증가할 때마다 코드 해독에 드는 노력은 배가 됩니다. 128비트로 암호화된 메시지는 40비트 메시지보다 2^40배 해독하기 힘들므로 아직은 매우 안전하다고 알려져 있습니다.

그렇다면 현재 모든 나라에서 모든 SSL관련 암호화 제품들이 128비트의 높은 수준의 암호화를 지원하느냐 하면 그렇지 못합니다. 99년 미 상무부의 수출금지법 완화 조치 이후에도 그사이에 이미 배포된 낮은 수준의 암호화 제품의 문제 뿐만 아니라, 128비트의 높은 수준의 암호화 제품을 사용하기 위해서는 웹브라우저나 웹서버 운영자들 또한 테러지원국에서 사용하지 않는다는 동의를 한 후 128비트 사용을 위한 업그레이드 패키지를 받아서 사용해야만 합니다.

* 128비트 암호화 통신을 하기 위해서는 웹브라우저 사용자가 자신의 웹브라우저의 암호화 강도를 높이기 위해 직접 소프트웨어 업그레이드를 하는 것입니다.

자신이 사용하는 웹브라우저의 암호화 강도를 쉽게 알아보기 위해서는, IE의 경우, 도움말-> Internet Explorer정보에 보면 브라우저의 암호화 수준을 볼수 있습니다. 아직 40 혹은 56비트로 표시되어있다면, IE 128비트 다운로드페이지를 통해 웹브라우저를 업그레이드 해야합니다.

다음의 사이트에서 높은 수준의 암호화 프로그램으로 업그레이드를 해야 합니다.

  1. 인터넷익스플러 128비트 업그레이드
  2. 넷스케이프 128비트 암호화 버전
  3. Window2000사용자의 128비트 업그레이드

이러한 업데이트를 통해 128비트 통신을 할 수 있으나, 이것은 웹브라우저 사용자들에게 매우 귀찮은 일이므로, 웹서버 개발회사와 인증회사들이 웹브라우저의 암호화 강도에 상관없이 128비트 통신이 가능한 방법을 모색 하게 되었습니다. 실제로 웹서버는 웹브라우저에 비해 적으며, 단기간에 128비트 통신이 가능한 환경을 만들어 낼 수 있기 때문입니다. 웹브라우저가 기본적으로 40혹은 50비트 통신만 가능한 것으로 만들었어도 특정 웹서버가 128비트가 통신을 요청한다면, 128비트 통신이 가능하도록 하는 기술이 Microsoft에 의해 개발되었습니다.

* 따라서, MS가 개발한 SGC(Server Gated Cryptography) 라는 방법을 통해 웹서버 인증서가 SGC를 지원하면, SGC Step-up기술을 지원하는 특정 브라우저에서는 암호화 강도에 상관없이 128비트 암호화 통신이 가능하게 됩니다.


브라우저별 기본 암호화 강도와 SGC지원 인증서와의 관계

위의 도표는 각 브라우저와 OS별로 기본으로 제공하는 암호화 강도와 SGC기능을 가진 인증서를 사용할 경우, 브라우저별 128비트 통신이 가능한 브라우저와의 관계를 기술한 것입니다. 이에 따르면, Verisign의 SSL Global ID인증서의 경우, IE4.0과 NS4.0이상, Thawte의 SuperCert의 경우 IE5.01과 NS4.7이상에서는 OS나 암호화 강도에 상관없이 128비트 통신이 가능합니다.

4. 왜 꼭 SGC 128비트 인증서를 사용해야 하는가?

최근들어 Microsoft를 비롯하여 넷스케입등이 기본적으로 128비트 통신이 가능한 브라우저를 출시하기 시작하였습니다. IE6.0과 NS6.0 버전들은 Windows2000을 제외한 대부분의 OS에서 128비트 통신을 지원합니다. 위에서 설명한 SGC기능을 포함하지 않고 있는 인증서의 경우는 웹브라우저가 128비트 버전으로 업그레이드 했거나, 최신 웹브라우저를 사용하는 경우 128비트 통신이 가능합니다. 이것은 인증서들이 브라우저의 암호화 강도에 따라 통신을 한다는 것을 의미합니다. 브라우저가 40/56/128 각각 지원하는 암호강도에 따라 그에 따른 통신을 하게 되는 것입니다.

따라서, 이전에 40혹은 56비트 통신을 지원하던 SSL인증서들이 128비트 통신까지도 지원할 수 있게 되었습니다. 이에따라 40비트 128비트로 나누어 지던 인증서가 암호강도에 따른 제품명으로 나누는 것이 무의미해졌습니다. 따라서 베리사인의 경우 40/128비트 제품명이 SSL SecureID/Global ID, Thawte의 경우 SSL Certificate/SuperCert라는 제품명으로 나누어 지게 되었습니다. 또한, 이전에 40비트로 통용되던 기타 인증회사의 인증제품도 128비트 지원이 가능하게 된 것입니다.

그러나, 아직도 대부분의 사용자들이 자신의 브라우저를 업데이트 하지 않거나 128비트를 기본적으로 채용하는 웹브라우저를 사용하고 있지 않습니다. 아래의 표는 현재 사용하고 있는 인터넷 사용자들의 웹브라우저 분포를 나타냅니다.

이 도표에 따르면 아직도 80%이상의 사용자들이 128비트 암호화가 기본적으로 제공되지 않는 웹브라우저나 OS를 사용하고 있으며, 이러한 추세는 당분간 계속될 것으로 여겨집니다. 도표에서 Up이라고 표시된 부분은 Verisign Global ID, Thawte Supercert을 제외한 기타 인증서를 사용할 경우 128비트 통신을 위해 브라우저 업그레이드를 해야 하는 경우를 표시하였습니다.

또한 각 브라우저별로 사용하는 버전과 OS를 나타내는 위의 도표에 따라서도 아직 128비트를 완벽히 지원하는 IE6.0 혹은 윈도우 XP OS의 사용빈도가 아직은 많이 낮음을 보여주고 있습니다. 이는 대부분의 웹브라우저 사용자들이 자체로는 128비트 통신이 가능하지 않으며, 웹서버의 128비트 SGC인증서를 통해서 만이 많은 사용자들이 실제 128비트 통신이 가능할 수 있다는 것을 의미합니다.

5. 128Bit SGC 인증서를 구별하는 방법은?

128비트 SGC인증서는 Verisign, Thawte, Globalsign, GTE, SecureNet 등의 5개 인증기관에서 서비스 하고 있으며 이증 Globalsign은 웹서버에 SGC 를 위한 중개인증기관 CRT화일을 설치해야 가능하며, SecureNet은 호주내에서만 서비스가 가능합니다. 따라서, 전세계적으로 128비트 SGC인증서를 지원하는 인증기관은 Verisign과 Thawte 뿐이며 이 회사의 Global ID와 SuperCert가 이 제품에 해당됩니다.

2001년 11월 현재 SSL 인증서의 시장점유율은 Verisign과 Thawte가 각각 40.5%, 34.5%로 업계를 거의 점유하고 있으며 이는 SGC를 지원하는 128비트 인증서를 제공하는 유일한 업체이 때문입니다. 128비트 SGC인증서를 구별하는 방법은 SSL사이트를 접속했을때, 나오는 열쇠를 클릭하면, 나오는 인증서의 발급자가 Verisign 혹은 Thawte이고 자세한 인증 정보에서 확장키사용이라는 항목이 있으면 SGC를 지원하는 128비트 버전의 인증서 입니다.

단, 인증서 Root 인증경로가 Thawte Server CA라 하더라도 그 이하에 Entrust 혹은 Equifaxsecure CA가 포함되어 있다면 이는 Entrust 혹은 Equifaxsecure, Tucows등이 판매하는 Thawte의 SSL Certificate와 동급의 인증서이며, 이는 Thawte의 Chained CA로서 판매되는 인증서입니다. 이는 SGC기능이 포함되어 있지 않는 브라우저 암호화 강도에 따라 통신을 하는 인증서들입니다

FAQ의 1.7 Equifax와 Entrust는 Thawte와 어떤 관계입니까? 참조.

6. 인증서를 바르게 구매하려면?

각 인증회사의 인증서는 SGC기능을 지원하는 것과 그렇지 않은것으로 나누어 집니다. SGC 기능 지원 여부와 보험배상 범위, 기술지원 범위에 따라 가격은 매우 달라집니다. 아래의 가격조견표를 통해 비교해 보시기 바랍니다.

인증서의 결정기준

  • Step-up기능인 SGC 기술의 채택여부 및 SGC상의 지원브라우저 버전
  • 웹서버 소프트웨어의 지원 종류
  • 사고시 보상책임 내역
  • 기술지원 정도
  • 부가 서비스 정도

    * 국내업체별 가격조견표
    http://www.crosscert.com/guide/guide.htm
    http://www.thawte.co.kr/pricing.asp
    http://www.entrustkorea.net/certi/sub03/sub0301.html

    * 국내업체별 가격비교표
    http://www.thawte.co.kr/help.asp?price_compare

    다음은 국제가격입니다.
    http://www.verisign.com/products/site/secure/index.html
    http://www.thawte.com/buy/contents.html
    http://www.entrust.net/products/webcerts/pricing_web.htm

    참고자료

    1. ApacheCon 2001년 MODSSL 세미나 자료 : http://www.modssl.org/docs/apachecon2001/slide-010-l.html
    2. Modssl 2.7 의 FAQ : http://www.modssl.org/docs/2.7/ssl_faq.html#ToC38
    3. Thawte 사의 128bit Supercert : http://www.thawte.com/getinfo/products/supercert/contents.html
    4. Verisign, Crosscert 의 자료 : http://www.crosscert.com/Repository/repository-g.htm#2
    5. SSL서버 및 CA 통계자료: http://www.securityspace.com/s_survey/data/index.html
    6. 웹브라우저 통계자료: http://www.ews.uiuc.edu/bstats/latest-week.html


  • :

    Eclipse 에서 SVN 사용시 계정 변경하는 방법

    개발 2010. 4. 6. 10:48

    336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.


    회사에서는 주기적으로 svn의 비번을 변경하도록 하고 있는데,
    이클립스의 어디를 봐도 비번 변경하는 곳이 없더군요..

    Preference에 Team 및에 SVN 항목을 차장봐도 없구..
    SVN Repository 퍼스펙트를 봐도 없고..

    이래저러 고생하다가 구글링으로 찾았습니다.

    아래의 파일이 SVN 사용자 정보가 있는 파일이므로,
    과감하게 삭제한 후에 다시 이클립스를 실행 시켜주시면~~~   OK~~~

    XP : C:\Documents and Settings\ Administrator\Application Data\Subversion\auth\svn.simple

    Vista or 7 : C:\Users\Administrator\AppData\Roming\Subversion\aturh\svn.simple



     



    :

    Exchange Server 버전별 기능 비교

    개발 2009. 10. 21. 12:04

    336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

    Exchange Server 2007에서 사용할 수 있는 기능을 이전 버전인 Exchange Server 2003 및 Exchange Server 2000의 기능과 비교합니다.

    이 페이지에서
    기본 제공 보호 기능 기본 제공 보호 기능
    원격 액세스 원격 액세스
    운영 효율성 운영 효율성

    기본 제공 보호 기능

    설명: 포함된 기능 = 포함된 기능 포함되지 않은 기능 = 포함되지 않은 기능

    기능 Exchange Server 2000 Exchange Server 2003 Exchange Server 2007
    스팸 방지 및 바이러스 백신      

    VSAPI(바이러스 검사 응용 프로그래밍 인터페이스)

    포함된 기능 포함된 기능 포함된 기능

    차단 및 허용 목록을 기준으로 통합된 IP

    포함되지 않은 기능 포함된 기능 포함된 기능

    Exchange Server IMF(지능형 메시지 필터)

    포함되지 않은 기능

    포함된 기능 A

    포함된 기능

    IMF에 대한 콘텐츠 필터 수시 업데이트

    포함되지 않은 기능

    포함된 기능 B

    포함된 기능 C

    인증된 사용자로 제한된 메일 그룹

    포함되지 않은 기능 포함된 기능 포함된 기능

    보낸 사람 ID 지원

    포함되지 않은 기능

    포함된 기능 D

    포함된 기능

    Outlook Web Access에서 첨부 파일 스트립

    포함되지 않은 기능 포함된 기능 포함된 기능

    Edge 전송 서버를 사용하여 경계 네트워크 보호 - 도메인 구성원 자격 필요하지 않음

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    스팸 서명, IP 신뢰도 및 콘텐츠 필터(IMF) 자동 업데이트

    포함되지 않은 기능 포함되지 않은 기능

    포함된 기능 E

    보낸 사람 신뢰도 자동 분석

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Edge 전송 서버 또는 허브 전송 서버 역할에서 첨부 파일 스트립

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    받는 사람 필터링 및 수신 허용 목록을 고려한 EdgeSync

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Microsoft Office Outlook 전자 메일 소인 유효성 검사

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    스팸 방지 스탬프 - 스팸 평가 배경

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    2계층 스팸 격리 - 관리자 및 최종 사용자

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    바이러스 백신 스탬프 - 바이러스 검사 기록 추적

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    강력한 전송 수준 검사를 위해 Exchange MIME 구문 분석 엔진에 바이러스 백신 에이전트 액세스

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    인바운드 SMTP 메시지 수신율 제어를 위한 Edge 전송 서비스 복구 - 고가용성 지원

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    DOS(서비스 거부) 및 스팸 공격을 방지하기 위한 오픈 프록시 감지

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    기밀 메시징      

    TLS(전송 계층 보안) 암호화

    포함된 기능 포함된 기능 포함된 기능

    Active Directory 서비스에 대한 서명된 LDAP(Lightweight Directory Access Protocol) 요청

    포함된 기능 포함된 기능 포함된 기능

    S/MIME 사용 클라이언트 지원

    포함된 기능 포함된 기능 포함된 기능

    프런트 엔드 및 백 엔드 Kerberos 인증

    포함되지 않은 기능 포함된 기능 포함된 기능

    SSL(Secure Sockets Layer)을 사용하여 Outlook Web Access 트래픽을 기본적으로 암호화

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    조직 내 메시지 자동 암호화

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    규정 준수      

    저널링

    포함된 기능 포함된 기능 포함된 기능

    다중 사서함 검색

    포함된 기능 F

    포함된 기능 F

    포함된 기능

    사용자별 또는 메일 그룹별 저널링

    포함되지 않은 기능 포함되지 않은 기능

    포함된 기능 G

    메시지 레코드 관리를 통한 보존 및 만료 정책 적용

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    관리되는 폴더

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    허브 전송 규칙

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    비즈니스 연속성      

    액티브/패시브 클러스터링

    포함된 기능 포함된 기능 포함된 기능

    Microsoft 볼륨 섀도 복사본 서비스를 통한 데이터베이스 백업

    포함되지 않은 기능 포함된 기능 포함된 기능

    8개 노드 클러스터링

    포함되지 않은 기능 포함된 기능 포함된 기능

    복구 저장소 그룹

    포함되지 않은 기능 포함된 기능 포함된 기능

    연속 복제 - 저장소 그룹에 대한 비동기 복제 기능 기본 제공

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    데이터베이스 복사본(로컬) 또는 서버(클러스터)를 통한 백업

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    데이터베이스 이식성 - 조직 내 임의의 서버로 복구

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    A) SP1 이상 사용

    B) SP2 사용 시 2주에 한 번씩 업데이트 가능

    C) Standard CAL 사용 시 2주에 한 번씩 업데이트 가능, Enterprise CAL 또는 Forefront Security for Exchange Server 사용 시 매일 한 번 이상 업데이트 가능

    D) SP2 사용

    E) Enterprise CAL 또는 Forefront Security for Exchange Server 사용 시 매일 한 번 이상 업데이트 가능

    F) Microsoft Exchange 사서함 병합 사용

    G) Enterprise CAL 사용

    원격 액세스

    설명:포함된 기능 = 포함된 기능 포함되지 않은 기능 = 포함되지 않은 기능

    기능 Exchange Server 2000 Exchange Server 2003 Exchange Server 2007
    공동 작업 및 생산성      

    Outlook에서 공용 폴더 액세스

    포함된 기능 포함된 기능 포함된 기능

    Outlook Anywhere(기존의 RPC over HTTP) - Outlook 2003 이상에서 HTTP를 통해 Exchange에 액세스, 터널이나 VPN 필요하지 않음

    포함되지 않은 기능

    포함된 기능 A

    포함된 기능

    리소스 예약 도우미

    포함되지 않은 기능

    포함된 기능 B

    포함된 기능

    일정 자동 표시

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    통합 메시징      

    음성 메시징 시스템

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    팩스 수신 시스템

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    음성 메일, 전자 메일 및 팩스 통합 관리

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    전자 메일과 함께 음성 및 팩스 메시지를 사용자의 받은 편지함에 배달

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    한 곳에서 재생 및 메모 기록이 가능하도록 Outlook Web Access 및 Outlook 2007에 음성 메일 클라이언트 통합

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Outlook Voice Access - 전자 메일, 일정, 연락처, 음성 메일 및 회사 디렉터리에 음성 지원 전화 접속으로 액세스

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    음성 지원 자동 전화 교환

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    웹 기반 메시징      

    Outlook Web Access - Outlook 스타일의 웹 전자 메일 클라이언트

    포함된 기능 포함된 기능 포함된 기능

    검색

    포함된 기능 포함된 기능 포함된 기능

    GZIP 압축

    포함되지 않은 기능 포함된 기능 포함된 기능

    폼 기반 인증

    포함되지 않은 기능 포함된 기능 포함된 기능

    전체 주소 목록 액세스

    포함되지 않은 기능 포함된 기능 포함된 기능

    맞춤법 검사

    포함되지 않은 기능 포함된 기능 포함된 기능

    작업

    포함되지 않은 기능 포함된 기능 포함된 기능

    일정 정리

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    WebReady 문서 보기

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    SharePoint 문서 라이브러리 및 UNC 파일 공유 위치에 대한 LinkAccess

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    사용권 계약에 따라 보호하는 콘텐츠에 라이선스별 IRM(정보 권한 관리)으로 신속하게 액세스

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    예약 가능한 부재 중 메시지

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    내부 또는 외부 수신자별로 구성 가능한 부재 중 메시지

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    통합 메시징 PIN 재설정 셀프 서비스

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Exchange ActiveSync 모바일 장치 원격 정리 셀프 서비스

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    공용 폴더 액세스

    포함된 기능 포함된 기능

    포함되지 않은 기능 D

    규칙 지원

    포함되지 않은 기능 포함된 기능

    포함되지 않은 기능 D

    S/MIME 지원

    포함되지 않은 기능 포함된 기능

    포함되지 않은 기능 D

    모바일 메시징      

    Exchange ActiveSync

    포함되지 않은 기능 포함된 기능 포함된 기능

    전자 메일, 일정, 연락처 및 작업 Direct Push

    포함되지 않은 기능

    포함된 기능 E

    포함된 기능

    원격 정리, 로컬 정리, PIN 및 정책 적용을 통해 데이터 보호

    포함되지 않은 기능

    포함된 기능 E

    포함된 기능

    GZIP 압축

    포함되지 않은 기능

    포함된 기능 E

    포함된 기능

    Exchange ActiveSync 프로토콜을 통해 다양한 장치 지원

    포함되지 않은 기능 포함된 기능 포함된 기능

    사용자별 장치 정책

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    모바일 장치를 사용하여 무선으로 원격 사서함 검색

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    장치를 사용하여 부재 중 메시지 설정

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    HTML 전자 메일 지원

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    향상된 모임 처리 - 메시지 응답 또는 전달

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    S/MIME 지원

    포함되지 않은 기능

    포함된 기능 E

    포함되지 않은 기능 D

    A) Windows Server 2003 이상 필요

    B) 일부 기능에는 자동 수락 에이전트 필요

    C) 통합 메시징에는 Enterprise CAL 필요

    D) RTM(Release to Manufacturing)에서는 사용할 수 없음

    E) SP2 사용

    운영 효율성

    설명:포함된 기능 = 포함된 기능 포함되지 않은 기능 = 포함되지 않은 기능

    기능 Exchange Server 2000 Exchange Server 2003 Exchange Server 2007
    성능 및 확장성      

    캐시된 Exchange 모드(Outlook 2003 이상)

    포함되지 않은 기능 포함된 기능 포함된 기능

    메일 그룹에 부재 중 메시지 표시 안 함

    포함되지 않은 기능 포함된 기능 포함된 기능

    네이티브 x64 응용 프로그램

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    저장소 최적화 - 더 적은 비용으로 저장소 대체(직접 연결된 저장소, iSCSI)

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Active Directory 사이트 기반 라우팅

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    예약 가능하고 우선 순위가 지정된 효율적인 라우팅을 통해 대역폭 최적화

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    관리      

    오류 자동 보고

    포함된 기능 포함된 기능 포함된 기능

    조정 및 최적화를 위한 Exchange Best Practice Analyzer 지원

    포함된 기능 포함된 기능 포함된 기능

    메일 흐름, 데이터베이스 및 성능 문제를 해결하기 위한 Exchange Troubleshooting Assistant 지원

    포함된 기능 포함된 기능 포함된 기능

    Exchange 관리 콘솔

    포함된 기능 포함된 기능 포함된 기능

    다중 Windows 포리스트 지원

    포함된 기능 포함된 기능 포함된 기능

    포리스트 경계에 구애받지 않고 약속 있음/없음 표시

    포함된 기능 A

    포함된 기능 A

    포함된 기능

    MOM(Microsoft Operations Manager)용 관리 팩

    포함된 기능 포함된 기능 포함된 기능

    공용 폴더 관리

    포함된 기능 B

    포함된 기능 B

    포함된 기능 C

    인터넷 메일 연결 마법사

    포함되지 않은 기능 포함된 기능 포함된 기능

    Outlook 2003 이상을 사용하여 크로스 포리스트 Kerberos 인증

    포함되지 않은 기능 포함된 기능 포함된 기능

    동적 메일 그룹

    포함되지 않은 기능 포함된 기능 포함된 기능

    다중 사용자 사서함 이동 기능

    포함되지 않은 기능 포함된 기능 포함된 기능

    서버별로 중앙 집중화된 큐

    포함되지 않은 기능 포함된 기능 포함된 기능

    Exchange 관리 콘솔 검색 성능 향상

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Exchange 관리 셸 - 명령줄 인터페이스

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Exchange 관리 콘솔에 도구 상자 기본 제공

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    한 번에 여러 큐 표시

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    자동 서버 업데이트 및 패치

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Exchange 관리 콘솔 도구 상자에 Exchange Analyzer 통합

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    융통성 있는 권한 모델 - Active Directory와 통합

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    배포      

    서버 역할에 따른 배포 및 관리

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    설치 프로세스에 Exchange Best Practices Analyzer 통합 - 자동으로 필수 구성 요소 검사

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    단일 마이그레이션 엔진

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    자동 검색 - Outlook 2007 자동 검색 및 프로필 구성

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Exchange 관리 셸을 사용하여 스크립트 가능한 배포

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능
    확장성 및 프로그래밍 기능      

    CDO(Collaboration Data Object)

    포함된 기능 포함된 기능

    포함된 기능 D

    WebDAV API

    포함된 기능 포함된 기능 포함된 기능

    Outlook Web Access 웹 파트

    포함된 기능 포함된 기능 포함된 기능

    웹 서비스 API

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    Exchange 관리 셸을 통한 .Net 통합

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    약속 있음/없음 웹 서비스

    포함되지 않은 기능 포함되지 않은 기능 포함된 기능

    A) 조직 간 복제 도구 사용

    B) Exchange 관리 콘솔 사용

    C) Exchange 관리 셸 사용

    D) CDOEXM(Collaboration Data Objects for Exchange Management) 및 워크플로에 대한 CDO(Collaboration Data Object) 삭제. 자세한 내용과 기타 정보는 Exchange Server TechCenter에서 더 이상 사용되지 않는 기능 및 더 이상 중요하지 않은 기능을 참조하십시오.

    출처 : http://www.microsoft.com/korea/exchange/2007/evaluation/features/ex_compare.mspx



    :

    COM 을 Release 해도 바로 Dll이 Unload 되지 안는다.

    개발 2009. 5. 17. 17:35

    336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



    ActiveX를 소멸하고 나서 Dll을 Unlaod 시키기 위해서 아래의 함수를 사용한다.
    CoFreeUnusedLibraries  ( http://msdn.microsoft.com/en-us/library/ms679712(VS.85).aspx )

    그러나 COM의 Apartment Type에 따라서 Delay Time 이 발생할수 있다고 한다.
    그 이유는 COM의 Design 이라고 한다. (성능상의 이유로 MS에서 그렇게 동작하도록 하였다는 군요 ^^ )

    참고 : http://support.microsoft.com/kb/301357

    그래서  CoFreeUnusedLibraries  함수를 사용할때는 주의를 해 주어야 합니다.
    언로드 되었는지 확실하게 체크하던가, CoUninitialize를 호출해주는 꽁수를 쓰던가..
    COM 자체를 STA로 하던가.. ㅎㅎ






    :

    INFO: CDO, 단순 MAPI 및 확장 MAPI 간의 차이점

    개발 2009. 4. 11. 17:53

    336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

    출처 : http://support.microsoft.com/kb/200018/ko

    본 문서에서는 CDO(이전 이름은 Active Messaging 및 OLE Messaging), 단순 MAPI, CMC(Common Messaging Call) 및 확장 MAPI(보통 간단히 MAPI라고 함) 간의 주요한 차이점을 설명합니다.

    CDO

    CDO(Collaboration Data Objects)는 원래 "OLE Messaging"이라고 불리다가 이후 "Active Messaging"이라고 불리던 것입니다. CDO는 MAPI 라이브러리의 COM 래퍼이며 자동화를 지원하는 모든 개발 언어를 통해 호출할 수 있습니다. 예를 들어, 단순 MAPI, CDO는 원래 클라이언트 작업을 위한 목적으로 고안되었습니다. CDO는 MAPI 기능의 대부분을 구현하여 단순 MAPI 보다는 휠씬 많은 기능을 갖지만 MAPI의 기능을 모두 갖지는 않습니다. CDO를 사용하여 다음과 같은 작업을 수행할 수 있습니다.
    • 특정 프로필로 또는 익명 인증으로 메시징 시스템에 로그
    • 메시지 작성, 받는 사람 주소 지정 및 확인, 메시지 보내기, 받기 및 읽기, 파일 첨부, 자동 응답
    • 일정 관리: 모임 및 약속 만들기
    • 정보 저장소(Information Store)의 폴더 및 메시지 관리
    • 주소 관리: 특히 PAB(Personal Address Book)의 주소 관리

    CDO의 가장 큰 특징은 MAPI 기반 CDO.DLL 및 SMTP 기반 CDONTS.dll입니다.
    CDO에 관련된 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    176916  (http://support.microsoft.com/kb/176916/EN-US/ ) INFO: Active Messaging and Collaboration Data Objects (CDO)
    171440  (http://support.microsoft.com/kb/171440/EN-US/ ) Where to Acquire the Collaboration Data Objects Library
    CDONTS에 관련된 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    186204  (http://support.microsoft.com/kb/186204/EN-US/ ) HOWTO: Use CDONTS to Collect and Mail Information From a User
    177850  (http://support.microsoft.com/kb/177850/EN-US/ ) INFO: What is the Difference Between CDO 1.2 and CDONTS?

    MAPI

    MAPI(Messaging Application Program Interface)는 개발자가 메일을 사용할 수 있는 응용 프로그램을 만드는 데 사용할 수 있는 광범위한 함수의 집합입니다. 전체 함수 라이브러리를 MAPI 1.0 또는 확장 MAPI라고 합니다. 확장 MAPI를 통해 클라이언트 컴퓨터의 메시징 시스템, 메시지 작성 및 관리, 클라이언트 사서함 관리, 서비스 제공자 등을 완전히 제어할 수 있습니다.

    MAPI를 직접 사용하는 응용 프로그램은 C 또는 C++로 작성됩니다.

    단순 MAPI

    단순 MAPI는 12 개의 함수로 이루어진 하위 집합으로서 개발자가 Windows 기반 응용 프로그램에 기본 메시징 기능을 추가할 수 있도록 합니다. 단순 MAPI에는 메시지 받기 및 보내기를 지원하는 기능이 포함됩니다.
    • 메시징 시스템에 로그온
    • 새 메시지 작성, 받는 사람 추가 및 분석, 메시지 보내기
    • 받은 편지함에서 메시지 가져오기
    단순 MAPI 함수는 C, C++, Visual Basic 및 VBA(Visual Basic for Applications)와 같이 API 호출뿐만 아니라 단순 MPAI가 사용하는 구조 및 데이터 유형을 모두 지원하는 어떤 응용 프로그램에서도 호출할 수 있습니다.

    Microsoft Visual Basic(버전 3에서 6까지)에 포함된 MAPI 컨트롤 및 Outlook Express로 설치된 MAPI 버전은 단순 MAPI만 구현합니다.

    단순 MAPI에 관련된 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    105964  (http://support.microsoft.com/kb/105964/EN-US/ ) PC MAPI: Simple MAPI Common Technical Questions and Answer
    239576  (http://support.microsoft.com/kb/239576/KO/ ) INFO: Outlook Express의 개발자 지원 제한

    CMC

    CMC(Common Messaging Calls)는 단순 메시징 기능을 C 또는 C++로 작성된 클라이언트 응용 프로그램에 추가하기 위한 10개의 함수로 이루어진 라이브러리입니다. CMC는 핵심 MAPI 하위 시스템의 상부에 위치하기 때문에 마찬가지로 메시징 시스템에 대하여 독립적이라는 장점을 갖습니다. 특히, CMC API는 운영 체제에 독립적이어서 여러 플랫폼에서 사용하는 클라이언트 응용 프로그램에 유용합니다. CMC에도 X.400 API에 대한 지원이 포함됩니다. CMC는 다음 세 가지 주요 작업을 지원합니다.
    • 메시지 보내기
    • 메시지 가져오기
    • 주소 정보 찾아보기
    CMC에 관련된 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    114247  (http://support.microsoft.com/kb/114247/EN-US/ ) PC MAPI: Background on Common Messaging Calls (CMC)


    :

    Visual C++ 프로그램에서 Stack Overflow 문제에 대한 해결방안

    개발 2009. 1. 20. 16:03

    336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.


    보통 C++ 프로그램에서 Stack Overflow 가 발생하는 경우는 버퍼를 잡아 놓고 잡아놓은 버퍼보다 더 큰 데이터를 버퍼에 집어넣는 경우이다. 이경우에는 메모리가 crash 되어서 다른 side-effect 가 발생하게 된다.

    다른 경우의 스팩오버플로오는 재귀적 함수 호출을 하는 경우에 발생하는 경우이다.
    이럴경우에 해결책은 재귀적 함수를 사용하지 않는 방법과 스택의 크기를 늘려주는 방법이 있다.

    여기서는 Process 에서 스택의 크기를 늘려주는 방법에 대해서 알아 본다.

    다음을 참고 하시오.

    http://support.microsoft.com/kb/315937



    :