Linux Gazette #24 번역: 권 순선(리눅스 한글문서 프로젝트 관리자) http://kldp.linux-kr.org, cessi@kldp.linux-kr.org 2센트짜리 팁 몇가지 또 하나의 간단한 팁 Date: Sun 30 Nov 1997 03:48:40 -0800(PST) From: Gary Johnson gjohnson@season.com 이미 이 팁을 알고 있는 사람이 있을지도 모르겠는데, 아직 이 Linux Gazette에 실린 적이 없다면 실어주세요. 사용되지 않는 가상 콘솔로 화면을 전환하면 화면에 아무것도 나타나지 않 게 되고, 키보드로도 조작할 수 없는 상태가 됩니다. 시작할 때 다음과 같 이 해보십시오. setterm -clear > /dev/tty12 Alt 키와 F12키를 동시에 누르거나 엑스 윈도우를 사용하고 있을때는 Alt 키와 Ctrl 키, F12키를 동시에 누르면 됩니다. 그 가상 콘솔(/dev/tty12)에 는 로그인 프로세스가 돌아가고 있지 않기 때문에 특별히 하고 있는 일은 없습니다. 도스 에뮬레이터 Date: Fri, 5 Dec 1997 00:55:55 -500 From: Joey Hess Joey@kitenet.net 나는 좋아하는 게임을 하기 위해서 도스 에뮬레이터를 가끔 쓰곤 합니다. 그러나 C:\> 프롬프트는 정말 싫어하죠. 그래서 생각하기를, 도스 에뮬레이 터가 시작할 때에 특정한 명령어를 실행하도록 하고 싶어서 방법을 생각해 냈습니다. 지금 보여드리는 펄 스크립트가 바로 그러한 역할을 하죠. 맨 윗 부분의 주석을 잘 보세요. 도스쪽에서 해주어야 할 일을 얘기하고 있습니 다. 기본적인 아이디어는 홈 디렉토리에 dos_do.bat 라는 파일을 만들어 두 고 그 파일에 도스 에뮬레이터가 실행하기를 원하는 명령들을 적어준 다 음, lredir을 이용해서 도스 에뮬레이터가 실행할 때에 홈 디렉토리에서 그 파일을 찾을 수 있도록 하는 것이죠. #!/usr/bin/perl # # This runs dosemu.# # Any parameters specified after "--" will be passed in to dosemu to be # run as dos commands. # # Setup: add to autoexec.emu: # lredir.com h: linux\fs\${home} # if exist h:\dos_do.bat call h:\dos_do.bat# # GPL Copyright 1996, 1997 Joey Hess # Split params into dosemu parameters and dos commands. while ($a=shift @ARGV) { if ($a=~m/--/ ne undef) { last } $dosemu_command_line.="$a ";} $dos_command_line=join(' ',@ARGV); $dos_command_line=~s/;/\r\n/g; open (OUT,">$ENV{HOME}/dos_do.bat") || exit print "$ENV{HOME}/dos_do.bat: $!"; if ($dos_command_line) { print OUT "$dos_command_line\r\n"; # note dos CR LF print OUT "exitemu\r\n"; } close OUT; system "/usr/bin/dos $dosemu_command_line"; unlink "$ENV{HOME}/dos_do.bat"; Re: "find를 사용해서 원하는 것을 찾아내기" Date: Wed, 03, Dec 1997 16:03:30 +0100 From: Mike Neuhauser mike@gams.co.at Jon Rabone, jkr@camcon.co.uk 씨가 지난번 12월호 Linux Gazette에서 다 음과 같이 썼습니다. >1997년 10월자 Linux Gazette에서 Dave Nelson씨는 >grep이 원하는 문자열을 포함하는 파일 이름을 >나타낼 수 있도록 다음과 같이 제안했었죠. > >find . -type f -exec grep "string" /dev/null {} \; > >이것은 모든 파일에 대해서 grep을 실행하는데 여기 더 짧고도 효과적인 방법이 있습니다. > >grep "string" 'find . -type f' > >주의할 것은 조건에 맞는 파일의 개수가 많을 경우 쉘의 명령행 버퍼의 범위를 벗어나므 >로 문제가 생길 수도 있다는 것입니다. 명령행 버퍼의 오버플로우를 방지하기 위해서 다음과 같이 하십시오. find . -type f | xargs grep "string" 이 방법은 파일 이름에 공백이 들어갈 경우(touch "test file"을 실행하고 'ls'로 확인해 보십시오.) 문제가 생길 수 있습니다. 이러한 문제를 해결하 기 위해서는 find . -type f -print0 | xargs -0 grep "string" find는 심볼릭 링크된 디렉토리에 대해서는 기본적으로 검색을 실시하지 않으니 -follow 옵션을 사용해야 할 경우도 있다는 것을 알아 두세요. Re:find를 이용해서 원하는 것을 찾아내기 Date: 5 Dec 1997 17:47:50 -0000 From: Dale K. Hawkins khawkins@mines.edu 제가 사용하고 있는 방법은 다음과 같습니다. find . -type f -exec grep "string" /dev/null {} \; 그런데 제 친구가 다음과 같은 방법을 알려 주더군요. 매우 좋은 방법이었 습니다. find . -type f | xargs fgrep "string" /dev/null 이 방법은 매번 새로운 grep 프로세스를 생성하지 않아도 된다는 장점이 있죠. 그런데 정말 빠르고도 교묘한 방법이 있습니다. 다음과 같이 해보세요. locate $PWD | grep "^$PWD" | xargs fgrep "string" /dev/null 이 방법도 괜찮긴 하지만 grep이 매번 실행되고, 디렉토리에 대해서까지 grep이 실행된다는 단점이 있죠. locate $PWD | grep "^$PWD" |xargs -ifilename sh -c \ "if [ -f filename ]; then echo filename; fi " | \ xargs fgrep "string" /dev/null 제 글을 읽으시는 독자분들게: lesspipe.sh이 설치되어 있다면 한번 보세요. find로 원하는 것을 찾아내기 세 번째 이야기 Date: Thu, 11 Dec 1997 17:12:46 +100(MET) From: Axel Dietrich Axel.Dietrich@newroinformatik.ruhr-uni-bochum.de >Linux Gazette 1997년 10월호에서 Dave Nelson씨는 > >find . -type f -exec grep "string" /dev/null {} \; > >을 권장했었습니다. Jon Rabone씨의 "더 짧고도 효과적인" 방법은 다음과 같습니다. grep "string" 'find . -type ' 다음과 같은 방법은 명령행 버퍼의 오버플로우 걱정을 할 필요없이 사용할 수 있습니다. find . -type f -exec grep -l "string" {} \; '-l' 옵션은 grep이 "string"을 포함하는 파일명을 나타내도록 해줍니다. 이 런 식의 검색을 특정 파일들에 대해서 행하기 위해서 저는 -type과 -name 옵션을 쓰죠. 다음과 같이 말이죠. find . \( -type f -name "*\.html" \) -exec grep -l "string" {} \; 이것은 html의 확장자를 가지는 모든 파일에 대해서 "string"을 포함하는지 알아보고 포함하고 있는 파일명을 출력해 줍니다. /Axel find에 관해 좀더 알아볼까요? Date: Tue, 16 Dec 1997 14:12:57 +100 (MET) From: Alexander Larsson alla@lysator.liu.se 1997년 12월자 Linux Gazette에서 Jon Rabone 씨는 다음과 같이 말했었 죠. ------------------------------------------------------------ ----------- 이것은 각각의 파일에 대해서 grep을 실행하는데 좀더 짧고 간단한 방법이 있습니다. grep "string" `find . -type f` 그런데 알아두어야 할 것은 조건에 맞는 파일들이 많을 경우 명령행 버퍼 가 오버플로우될수도 있다는 것입니다. ------------------------------------------------------------ ----------- 이것보다 조금 더 좋은 방법이 있죠. find . -type f | xargs grep "string" 이 방법은 명령행 버퍼가 가득 찰때마다 새로운 grep 프로세스를 실행해 줍니다. find를 이용하는 또하나의 방법 Date: Sat, 27 Dec 1997 12:06:47 -0500 From: rchandra@letter.com 지금 논의되고 있는 "어떻게 서브디렉토리에 있는 파일들에 대해서 grep을 실행해줄 수 있는가?"하는 문제에 관한 여러 가지 방법들은 매우 유용하긴 하지만 검색을 실시하는 디렉토리에 바이너리 파일이 있을 경우에는 터미 널을 제어하지 못하는 문제가 생길 수도 있습니다. 왜냐하면 바이너리 파 일의 몇몇 제어 문자들(Control Characters)이 터미널을 그래픽 모드로 바 꿔놓을 수 있기 때문입니다. 물론 이렇게 되었을 경우 터미널을 다시 바로 잡는 방법이 있긴 하지만 아무래도 가장 좋은 방법은 그러한 일이 없도록 처음부터 방지하는 것이 가장 좋겠죠. 이제 화면에 찍혀나올수 없는 문자들을 모두 없애봅시다. 어쨌든 읽을 수 는 없지만 다음과 같은 명령을 내려 보세요. sed -e 's/[^-~][^-~]*/ /g' 이 명령은 화면에 출력될수 없는 (제어) 문자들을 그냥 스페이스들로 바꿔 버립니다. 이 명령은 파이프를 이용하면 쉽게 다른 명령어들과 결합해서 사용할 수 있습니다. 여기 간단한 쉘 스크립트가 있습니다. 저는 이것을 grepfind라고 이름붙여서 사용하고 있죠. #!/bin/sh #save this in a file called grepfind and do a "chmod 755 grepfind" # if test $# = 0 -o "$1" = "-h" -o "$1" = "--help" ; then echo ' grepfind -- recursively descends directories and egrep all files ' echo '' echo ' Usage: grepfind [--help][-h][start_directory] egrep_search_pattern' echo '' echo ' The current directory is used as start_directory if parameter' echo ' start_directory is omitted. The search is case insensitive.' echo ' Multiple occurrences of control characters are replaced by a single' echo ' space. This makes it possible to grep around in files that contain' echo ' binary data and strings without setting the terminal accidently ' echo ' to graphics mode.' echo '' echo ' Example: grepfind /home "hello world" ' else if [ "$2" = "" ]; then find . -type f -exec egrep -i "$1" /dev/null {} \; | sed -e 's/[^ -~][^-~]*/ /g' else if [ -d "$1" ];then find $1 -type f -exec egrep -i "$2" /dev/null {} \; | sed -e 's/[^-~][^ -~]*/ /g' else echo "ERROR: $1 is not a directory" fi fi fi #__END__OF_grepfind Re: 도와주세요 Date: Sun, 7 Dec 1997 14:25:25 +0100(MET) From: Roland Smith rsmith@ibm.net Javier씨에게, 당신의 지난번 Linux Gazette기사에 대한 답신입니다. 당신은 MOZILLA(넷스케이프)가 저장되어 있는 디렉토리에 대한 환경 변 수를 설정하여야 한다고 하셨었죠. 두가지 방법이 있습니다. 'export MOZILLA_HOME=/usr/local/netscape'을 컴퓨터가 매번 컴퓨터가 시작될 때마다 실행해 주거나 혹은 /etc/profile파일을 수정하면 됩니다. 이 것은 bash쉘이 시작될 때 읽어오는 파일입니다. 이 파일에 다음과 같은 내 용을 추가하세요.(넷스케이프는 /usr/local/netscape디렉토리에 설치되어 있 다고 가정합니다.) MOZILLA_HOME=/usr/local/netscape export MOZILLA_HOME 또한 윈도우 매니저의 설정 파일에도 넷스케이프의 실행 파일의 위치를 알 려주어야 넷스케이프를 윈도우 매니저가 사용하는 툴바나 메뉴에서 곧바로 이용할 수 있습니다. 이것은 사용하는 윈도우 매니저에 따라 틀리죠. 만약 fvwm2-95를 사용하신다면 다음과 같은 내용을 홈 디렉토리에 있는 .fvwm2rc95파일에 추가해 주세요. #add to this menu AddMenu "Utilities" Title + "Netscape%mini-sacape.xpm% Exec netscape -geometry 931x683+54+9 & 사용하지 않는 하드디스크 회전속도 줄이기 Date: Mon, 08 Dec 1997 14:21:31 -0500 From: Peter S Galbraith galbraith@mixing.qc.dfo.ca Linux Gazette 12월호 기사 중 하드 디스크의 회전 속도를 줄이기 위해서 hdparm 명령을 사용하는 방법이 있었죠. 이것을 제 오래된 SCSI 하드 디 스크에 다음과 같이 적용해 보았습니다. bash-2.01#hdparm -S6 /dev/sdb /dev/sdb: operation not supported on SCSI disks 안타깝게도 SCSI 하드 디스크에는 hdparm 명령이 작동하지 않는군요.(매 뉴얼 페이지에도 나와 있지 않은게 참 이상하죠?) 보안 스크립트 Date: Mon, 15 Dec 1997 20:49:53 -0600 (CST) From: Corey G cgaff@interaccess.com 저는 종종 제 컴퓨터가 인터넷에 물려있는 채로오랫동안 자리를 비우곤 합니다. 당연히 이시간 동안 혹시라도 해커가 제 컴퓨터에 침입하지 않았 을까 걱정이 되지요. 그래서 저는 누구든지(root도) 제가 없는 시간 동안 새로운 프로세스를 생성했는지 여부를 알수 있는 프로그램을 원했었습니 다. 이 스크립트는 이런 목적에 사용되는 것입니다. 저는 이것과 비슷한 다른 특정 프로그램이 있는지는 잘 모르지만 이 스크립트를 여러모로 테스트해 본 결과 꽤 잘 동작하더군요. 이 스크립트는 여러분이 컴퓨터를 사용하고 있을 때 실행하면 좀 귀찮을 수도 있습니다. 어떻게 동작하는가? 이 스크립트는 처음 실행할 때 수행되던 모든 프로세스들의 정보를 알아내 어 임시 파일에 씁니다. 기본적으로 10초가 지난 후 새로운 프로세스가 실 행되었나를 임시 파일의 정보와 비교해서 알아내는 거죠. 이러한 새로운 프로세스가 '믿을 만한'프로세스가 아니면 즉각 kill되는 겁니다. 사용법: root으로 로긴하여 스크립트를 수행합니다. 그러면 우선 자동으로 파일을 저장할 안전한 디렉토리를 만들 것입니다. 저는 여기서 두 개의 변수 ("TRUSTED_ITEMS", "TRUSTED_USERS")를 지정했습니다. 이 변수는 특정 프로그램이나 특정 유저는 새로운 프로세스를 실행하는데 아무런 지 장이 없도록 하기 위해서입니다. 주의할 것은 어떤 프로그램의 경우(예: xterm의 경우 "xterm"과 "bash"를 동시에(bash를 쉘로 사용하고 있을 때) 지정해 주어야 함) 하나 이상의 프로그램을 지정해 주어야 한다는 것입니 다. 주의:이 스크립트를 테스트할 때는 중요한 작업이 수행되지 않고 있나 확 인해 보세요. 이 스크립트를 시작하기 위해서는: nohup ./secmach & 저는 이 스크립트를 향상시키고 싶습니다. 제안 사항이나 하실 말씀이 있 으시면 언제든지 전자우편을 제게 보내주세요. #!/bin/sh # Secmach - security program # v1.0 12-14-97 # By: Corey Gaffney export PATH=/usr/bin:/bin:/sbin COUNTER=0 LOCATION=/usr/secmach CHECK_TIME=10 TRUSTED=/usr/secmach/trusted UNTRUSTED=/usr/secmach/untrusted DIFFKILL=/usr/secmach/diffkill TRUSTED_USERS="johndoe" TRUSTED_ITEMS="$TRUSTED_USERS|pppd|chat|netscape|xterm|egrep| ps|sed|secmach|awk" if [ ! -s $LOCATION ] then mkdir $LOCATION chmod 700 $LOCATION fi while : do COUNTER=`expr $COUNTER + 1` if [ $COUNTER -eq 1 ] then ps -aux | sed -e '1d' | awk '{print $2}' > $TRUSTED fi sleep $CHECK_TIME ps -aux | sed -e '1d' | egrep -v $TRUSTED_ITEMS | awk '{print $2}' > $UNTRUSTED diff $TRUSTED $UNTRUSTED > $DIFFKILL KILL=`grep ">" $DIFFKILL | awk '{print $2}'` kill -9 $KILL done cron.hourly 제어하기 Date: Sun, 21 Dec 1997 10:36:16 -0500 (EST) From: Jeff Johnson jbj@JBJ.ORG Gary Turkington씨에 따르면: >저는 "정말로" 간단한 몇 가지 방법을 알고 있는데 쉽지가 않네요. >어떻게 하면 cron.hourly가 root에게 fortune메시지를 보내는 것을 막을 수 있을까요? >전에는 이것이 하루에 한번씩이어서 별로 부담스럽지 않았는데 >5.0으로 업그레이드하고 나니 매시간 마다 그러네요.... >이런 것도 일종의 스팸메일이죠 :-) cron.hourly는 다음 순서로 수행된답니다. 1)cron은 매시간 마다 root의 자격으로 작업을 수행한다. 2)이 작업을 수행하기 위해서는 서로 상호작용하지 못하는(즉 stdin/stdout 이 tty로 연결되어 있지 않고 cron으로 연결되어 있다는 얘기) 쉘이 수행 된다. 3)이 쉘은 초기화 파일을 읽어들인다. : /etc/profile, ~/.bashrc 등 4)초기화 파일들이 fortune을 수행한다. 5)작업이 수행된다. 6)cron이 화면에 뭔가 나온 것을 발견하고 root에게 메일을 보낸다. 이 문제를 해결하기 위해서는 어느 쉘 초기화 파일에 fortune을 실행하도 록 해 두었는지 알아내어야 fortune을 실행하지 못하게 하거나 fortune이 서로 상호작용하지 못하는 쉘을 사용할때는 작동하지 않게 하면 됩니다. The Answer Guy 넷스케이프 메일이 실행되지 않습니다. From: Jim Kelly, the-jim@swbell.net 저는 넷스케이프 커뮤니케이터 4.04를 제 레드햇 리눅스 시스템에서 사용 해 왔습니다. 그런데 어제부터는 제가 새로운 메일이 왔나 체크를 해보거 나 새로운 뉴스그룹이 있나 체크해 보기만 하면 프로그램이 중단되어 버리 네요. 그래서 저는 4.04를 지우고 다시 설치해 봤죠. 그래도 마찬가지인데 어떻게 하면 좋을까요? 만약 넷스케이프 4.04를 지우셨다면 홈 디렉토리의 .netscape 디렉토리도 같이 지우셨나요? 다른 사용자로 로긴하셔서 사용하신 결과는 어떻습니까? 다른 메일 프로그 램을 사용하시거나 다른 뉴스리더 프로그램을 사용해 보셨는지요?(elm, pine, emacs'mh, tin, nn, trn, gnus등등) 아마도 설정 파일이 손상되지 않았나 생각되는데요. 많은 프로그램들이 잘 못된 입력 때문에 에러를 내는 경우를 많이 봐 왔습니다. 저는 그래서 텍 스트 모드의 메일/뉴스 프로그램을 사용한답니다.(emacs' mh-e 와 Gns) 슬랙웨어 도와주세요 From: Ralph, RPMAXEDGE@aol.com 도와주세요!!! 얼마전에 슬랙웨어 3.2를 설치했고, 모든 것이 잘 되는 것 같았는데 root의 패스워드를 바꾸고 난 후 문제가 발생했군요. 무슨 이유인지는 몰라도 제 가 바꾼 패스워드로는 로긴이 안됩니다. 그래서 저는 루트 디렉토리를 마 운트해서 /etc/shadow에 있는 현재 패스워드를 지워버리려고 하는데 잘 되 지 않네요. 저는 SCSI 하드 디스크 sda1, sda2를 통해서 리눅스를 설치했 습니다. 이 문제를 해결하는데 도움이 될 수있는 힌트를 주신다면 정말로 감사하겠습니다. 저는 최근에 새로 나온 슬랙웨러를 사용해보진 않았지만 일반적인 방법은 다음과 같습니다. 이런 문제(root의 패스워드 분실)의 경우 복구 디스켓으로 부팅한 후(리눅 스를 두 개 이상 사용하실 경우 다른 리눅스로 부팅해도 됨) 루트 디렉토 리가 들어있는 파티션을 마운트하면 됩니다. 그리고 나서 간단히 원하는 파일을 수정하면 되죠. 또 한가지 속임수는 패스워드 파일을 수정하지 말고 chroot명령을 곧바로 사용하는 겁니다. 기본적으로 다음과 같은 절차로 마운트를 수행할 수 있 습니다. cd /mnt/oldroot/ && usr/sbin/chroot . bin/sh 그리고: passwd (이 방법은 보통의 passwd명령을 사용할 수 있게 해 줍니다. 그리고 (chroot)/etc 디렉토리의 패스워드 파일을 업데이트하도록 해 줍니다.) 좀더 제대로 관리하기 위해서는 루트 파티션을 다른 곳에 하나 더 가지든 가 /etc 디렉토리 아래의 모든 내용들을 카피해 두는 것이 좋습니다. 리눅스를 PDT로 사용하기 From: Karl Rossing, gtivr6@pangea.ca 리눅스를 PDC(Primary Domain Controller)나 NIS/NIS+ 마스터 서버 등으 로 사용하기 윈도우즈95/NT에서 리눅스의 NIS/NIS+를 이용하여 사용자 인증을 받을 수 있는 방법이 있는지 알고 싶습니다. 리눅스 사용자를 매번 NT측에다 등록하는 것은 너무 피곤한 일이네요. 혹시 이 부분의 상업용 소프트웨어 도 있는지 알려주시면 감사하겠습니다. 이 질문은 쉽게 대답하기가 어렵네요. 어떻게 하면 MS 클라이언트 머신들 (95 or NT)이 리눅스의 액세스 제어와 사용자 인증에 관한 정보를 이용할 수 있을 것인지에 관한 얘긴데 GINA(Graphical Identification and Authentication)라는 NT콘솔에서 로긴을 제어하는 NT DLL을 이용할 수 있습니다. 이 GINA는 여러 가지의 종류가 있는데 Novell에서 NDS를 위해 나온 것도 있고 MIT에서 kerberos를 위해서 나온 것도 있으며 AFS에서 사용하기 위한 것도 있습니다. 각각의 URL은 다음과 같습니다. NT GINA: http://web.mit.edu/cartel/ntgina.html -- very informative -- leads to all the rest that I found. ND_GINA(NT에서 사용할 수 있는 또하나의 GINA): http://www.nd.edu/~dobbins/ntarch/nd_gina_doc.html NT/UNIX의 통합: http://www.arch.usyd.edu.au/~doug/gina.html GINA의 문제점은 윈도우즈95에서는 작동하지 않는 것 같다는 것입니다. 패스워드를 동기화 하는 문제에 관해서는 그다지 많은 얘기가 없었던 것 같습니다만 디렉토리 서비스라든지 사용자 인증 방법에 대해서는 여러 가 지 방법들이 있습니다. 물론 각각은 일장일단이 있겠지요. 이러한 문제에 관해서 Cygnus에서 괜찮은 백서를 하나 발간한 적이 있습니다. http://www.cygnus.com/product/unifying-security.html 이외에도 생각해볼 수 있는 것들로는 Microsoft's WINS (and its PDC/BDC domain model) Kerberos and Cygnus Kerbnet NIS/NIS+ RADIUS/TACACS LDAP (lightweight directory access protocol) Netware NDS, Banyan StreetTalk, etc. Host based security -- custom synchronization scripts. 등이 있지요. 개인적으로는 모두 다 좋아하지 않습니다. NIS/NIS+는 주로 NFS와 같이 쓰이고 Kerberos는 AFS/DFS/CODA와 결합되어 쓰입니다. CIFS/SMB filesharing의 경우 대단히 미약한 인증 서비스나 WINS를 사 용할 수도 있습니다. 대체로 저는 CODA가 가장 좋은 선택이라고 생각하고 있습니다. CODA에 관한 자세한 정보는 다음의 메일링리스트를 참고하십시오. http://www.coda.cs.cmu.edu/maillist/linux-coda/0175.html 당신은 Samba를 리눅스 서버에서 윈도우즈 클라이언트로 파일을 공유할 수 있도록 하기 위해 사용한다고 가정하겠습니다. Samba META-FAQ를 읽어보면 어떤 페이지에 linux와 Samba를 이용해서 전체 네트워크의 계정 을 관리할 수 있다고 적혀 있는 것을 보실 수 있을 겁니다. Samba: 사용자 계정 http://samba.anu.edu.au/samba/docs/smb_serv/html/smb_se-4.html#ss4.1 Samba: Samba 서버 HOWTO http://samba.anu.edu.au/samba/docs/smb_serv/html/smb_se.html (제가 이 문서를 제대로 읽은 거라면 삼바는 현재로서는 '패스워드 서버'의 역할을 하지 못합니다. 이것은 NT시스템이 클라이언트의 인증 요구를 참 조하기 위한 PDC/BDC(Backup Domain Controller)로서의 역할을 할 수 없는 것을 의미하는 것으로 보일 수도 있습니다.) 미래에는 아무래도 LDAP과 Kerberos가 NT와 다른 여러 OS, 패키지들에 사용되면서 그 주도권을 쥘 것이라고 생각되는데 많은 상용 벤더들이 마지 못해 따라가는 것이 아니라면 그렇게 되는 것도 괜찮을 것입니다. 문제는 모든 사람의 LDAP(디렉토리 서비스)와 Kerberos(사용자 인증)가, 각각의 벤더들이 자신들의 범위 안에서 '서버'가 되려고 할 것이기 때문에 각각 다른 형태를 띨 수 있다는 것입니다. 그들(벤더)은 아무래도 자신들의 시스템의 상호 운용성에 대해서 여러 방법으로 광고를 하겠지만 대부분은 자신들의 시스템을 다른 벤더들 또는 자유 소프트웨어 프로그래머들에 적 용될 수 있도록 하기 위한 '확장성'에 대해서는 속 깊은 곳까지 공개하지 않을 것이 불보듯 뻔하기 때문이죠. 제 생각엔 시스템 관리자들이 통일된 디렉토리 서비스와 사용자 인증 서비 스를 받도록 하기 위해서는 앞으로 몇 년의 시간이 더 필요하다고 봅니다. 물론 버그와 보안상의 문제점이 여기저기서 튀어나오겠지만.(유닉스는 27 년 동안 그런 문제점을 보여 왔고 NT는 예전의 그러한 문제점들을 지금에 이르러 다시 보여주고 있다.) 그동안 우리는 모두 다른 사용자 계정(인증 그룹, 토큰 등의 정보)과 인증 정보를 요하는 수많은 서버와 네트워크 프로그램들을 보게 될 것입니다. 더 좋지않은 것은, 지금까지 얘기한 여러 계층의 관리 방법들이 이미 시장 에서 판매되고 있다는 것입니다. 시스템 관리가 아주 힘들어지게 될 날이 점점 다가오고 있는 것이죠.