윈도우, 리눅스의 보안체계

일반 2007. 11. 22. 23:32
반응형
윈도우 NT vs 리눅스

microsoft사가 세계 서버시장을 장악할 야심을 키우며 만든 프로그램이 NT입니다. NT는 다른 윈도우즈들에 비해 확실히 개선된 보안시스템을 가지고 있으며 네트워크 보안체계도 잘되어 있습니다.그러나 NTFS를 사용하지 않는 경우 보안에 다소 문제가 있습니다. 이와는 반면 리눅스는 다중 사용자 체제이므로 root로 로그인하지 않으면 모든 사용자는 보호모드에서 작동하므로 바이러스에 노출되지 않습니다. 또한 리눅스는 소스코드가 공개되어 있기 때문에 이러한 문제를 직면하게 될 경우에 보다 쉽게 문제를 해결 할 수 있게 됩니다. 소스가 널리 공개,배포되어 있으면 어떠한 문제점이든 발견되는 즉시 해결책을 찾을 수 있게 될 것입니다.

NT와 리눅스의 성능을 비교해본다면 다음과 같습니다. 먼저 가격면에서 거의 무료나 다름없는 리눅스에 비해 윈도우즈NT는 $800이상을 들여야만 설치 할 수 있습니다. 최소 4MB의 램과 40MB의 하드디스크 스페이스를 가지고 있는 386시스템이면 리눅스의 설치는 가능하지만 NT의 경우 16MB이상의 램과 110MB의 하드디스크 스페이스를 가진 486이상의 시스템을 가지고 있어야만 합니다. 그 밖에도 리눅스가 잘 알려졌듯이 안정적인 프로그램인 반면에 NT는 적은 메모리와 라이브러리 충돌로 시스템 다운을 야기시킵니다. 버그가 발견되면 리눅스는 적어도 하루 안에 문제점을 해결 할 수 있는 반면에 NT는 6개월에서 12개월이 지나야 Service Patch가 나옵니다. 물론 리눅스에서도 인터페이스와 한글지원에 관한 문제 등은 조속히 해결되어야 할 과제입니다.

윈도우 NT가 기업환경에 지속적으로 존재하는 이유는 정보 기술과는 관련이 없다고 보아도 무방할 것입니다. 기술적인 관점으로 볼 때, 윈도 NT 는 어떤 유닉스 운영체제와도 비교할 수 없습니다.

무엇보다도 이 두환경의 큰 차이점은 데이터베이스와 스크립트의 작성에 있다고 할 수 있습니다.

유 닉스환경에서는 오라클이나 msql과 같은 데이터베이스를 사용하면서 Perl이나 PHP등의 편리한 스크립트언어를 사용하여 웹사이트를 제작하실 수 있는 반면 NT환경에서는 MS-SQL이라는 마이크로소프트사의 데이터베이스와 ASP라는 스크립트를 사용하시는 것이 편리합니다.

물론 NT에서도 Perl스크립트는 사용이 가능하지만 일반적으로 많이 사용하는 스크립트는 ASP라고 할 수 있습니다.

물론 이 두 환경모두 공통적으로 HTML과 자바스크립트는 사용이 가능합니다.

Windows2000 vs 리눅스

최근 리눅스에 대한 관심이 크게 높아지면서 "운영체제는 윈도우즈"라는 공식에 금이 가기

시작했다. 소스를 공개하는 리눅스는 여러 사람의 손을 거치면서 윈도우즈와 맞먹는 능력을

지니게 되었다. 그 결과 지금은 IBM을 비롯한 여러 PC 메이커들이 이를 쓰기로 하는 등

윈도우즈 시장을 위협하고 있다.

마 이크로소프트사는 "윈도우즈 2000"을 안정성, 편의성, 작동 속도 등 어느 것 하나 흠잡을 데 없는 완벽한 운영체제라고 자랑한다. 이들은 올해 말 내놓을 윈도우즈 2000으로 윈도우즈 95와 98의 명성을 이어가면서 리눅스의 인기 몰이를 잠재우겠다는 각오다.

전문가들은 리눅스와 윈도우즈 2000 가운데 어느 것이 좋다고 딱 잘라 말하지 못한다. 각기 장단점이 다르기 때문이다
1. 필요한 시스템



윈도우즈 2000

윈 도우즈 2000은 윈도우즈 NT를 기반으로 만들었기 때문에 서버에 깔아야 제 성능을 낸다. 하지만 마이크로소프트사는 펜티엄 166MHz와 64MB의 기본 메모리, 1.5GB의 하드디스크면 충분하다고 말한다. 물론 이것은 최소 제원이다. 그냥 작동하는 것과 제 속도를 내는 것은 의미가 다르다.

윈도우즈 2000을 제대로 쓰려면 펜티엄 II CPU에 최소 64MB의 기본 메모리가 필요하다.

참고로, 윈도우즈 2000 서버를 깔려면 800MB의 하드디스크 공간이 있어야 한다.

리눅스

리눅스는 유닉스를 기본 모델로 삼았지만 일반인들이 쉽게 쓸 수 있도록 덩치를 제법 줄였다. 하지만 성능은 유닉스를 앞지른다.

리눅스가 대단한 인기를 끄는 것은 웬만한 시스템에서도 무난하게 돌아가기 때문이다. 386 이상의 CPU에 32MB의 기본 메모리면 문제없이 작동한다.

단점은 하드디스크를 많이 차지한다는 것이다. 패키지에 담긴 "X 윈도우즈"와 여러 가지 애플리케이션, 개발 도구 등을 모두 깔면 1GB 이상의 저장 공간을 차지한다.



2. 운영체제 종류

윈도우즈 2000

잘 알려진 대로 윈도우즈 2000은 마이크로소프트사가 만든다. 윈도우즈 NT의 뒤를 잇는 이것은 네 가지 버전으로 이루어졌다. 윈도우즈 2000 프로페셔널, 서버, 어드밴스트 서버, 데이터센터 서버가 그것이다. 각 버전은 서로 다른 시장을 노린다.

윈도우즈 2000 프로페셔널은 일반인이나 회사원들을 겨냥한다. 나머지는 NT의 바통을 받아 워크스테이션이나 서버를 쓰는 이들을 위한 것이다.

리눅스

리 눅스는 "라이너스 토발즈"라는 핀란드 대학생이 만든 커널(kernel)을 여러 사람이 다듬어 지금에 이르렀다. 누구나 자유롭게 제작에 참여하는 "소스 공개" 원칙 덕분에 뿌리는 하나지만 버전은 여러 가지다.대표적인 것이 레드햇과 칼데라다. 국내에서 큰 인기를 모으는 "파워 리눅스"와 "알짜 리눅스"는 레드햇에서 진화했다.



3. 설치 방법

윈도우즈 2000

윈 도우즈 2000을 까는 일은 비교적 간단하다. CD를 드라이브에 넣고 도스에서는 winnt.exe 파일을, 윈도우즈에서는 winnt32.exe 파일을 수행시키면 된다. 중간에 몇 가지 옵션을 정하는 메시지가 뜨는 것을 빼면 대부분의 작업은 저절로 이루어진다. 윈도우즈 95나 98을 까는 것과 비슷하다.

리눅스

리눅스용 부팅 디스켓으로 시스템을 켠 뒤 설치를 시작한다. 작업 과정은 매우 복잡하다. 정해야 할 옵션이 많을 뿐 아니라, 윈도우즈 2000처럼 도움말이 뜨지 않아 그 항목이 무엇을 뜻하는지 알 수 없기 때문이다. 시스템에 꽂힌 부품의 드라이버를 지니고 있지 않은 탓에 설치 작업을 끝낸 뒤 필요한 것을 인터넷에서 내려받아 깔아야 하는 불편도 있다.



4. 멀티 부팅

윈도우즈 2000

윈 도우즈 2000을 깔기 전 다른 운영체제가 시스템에 설치되어 있으면 멀티 부팅이 된다. 도스나 윈도우즈 95 또는 98, NT, 2000 가운데 하나를 골라 쓸 수 있다는 얘기다. 설치 순서는 윈도우즈 95 또는 98이 가장 먼저고 NT와 2000이 그 뒤를 잇는다. 순서가 바뀌면 안된다. 멀티 부팅 창을 구성하는 일은 윈도우즈 2000의 "부트 매니저" (정확한 이름은 "OS 로더"다)가 맡는다. 멀티 부팅 창이 뜬 뒤 30초가 지나면 기본 값으로 정해진 운영체제가 알아서 수행된다.

리눅스

리눅스 역시 멀티 부팅이 된다. 이때는 LILO라는 부트 매니저가 멀티 부팅 창을 꾸민다.

LILO를 이용하면 도스는 물론 윈도우즈 95나 98, NT, 2000 그리고 리눅스를 하나의 시스템에 깔 수 있다. 윈도우즈 2000처럼 설치 순서는 반드시 지켜야 한다. 리눅스가 맨 꼴찌다.

도스와 윈도우즈 95나 98 그리고 리눅스만 깔 때는 순서를 지키지 않아도 된다.



5. 플러그 앤드 플레이

윈도우즈 2000

윈 도우즈 95나 98의 플러그 앤드 플레이는 안정적이지 못하고 호환성이 떨어진다. 좋은 예가 ISA 방식의 카드다. 이것을 ISA 슬롯에 꽂고 CD를 드라이브에 넣은 뒤 드라이버를 직접 깔아야 제대로 작동한다. 윈도우즈 2000은 이런 문제를 상당 부분 해결해 안정성과 호환성이 제법 믿음직스럽다.

리눅스

리눅스는 2.xx 커널에서 플러그 앤드 플레이 기술을 쓰지만 제대로 다듬어지지 않은 탓에 몇 가지 문제를 일으킨다. 따라서 ISA 방식의 카드를 꽂아 쓸 때는 반드시 플러그 앤드 플레이를 꺼야 한다. 하지만 업그레이드가 빠르게 진행되므로 조만간 그 문제가 말끔히 해결될 것이다.



6. 설치 시간

윈도우즈 2000

하 드디스크를 포맷하고 윈도우즈 2000을 깐 뒤 초기 화면이 뜰 때까지 시간을 쟀다. BX 보드에 300MHz를 450MHz로 끌어올린 셀러론 A와 96MB의 기본 메모리를 얹은 PC에서 테스트했다. 결과는 2시간이다. 윈도우즈 2000은 설치 중간에 여러 번 재부팅되므로 어떤 시스템에 까느냐에 따라 결과가 달라진다.

리눅스

파워 리눅스 6.0을 까는 시간은 윈도우즈 2000의 절반밖에 되지 않는다. 하드디스크의 파티션을 나누고 포맷한 뒤, 리눅스를 깔고 초기 화면이 뜰 때까지 겨우 1시간 걸렸다.

PC통신에는 리눅스를 까느라 며칠 밤을 새웠다는 글이 올라와 있지만 뭔가 실수를 하지 않는 이상 그렇게 오래 걸리지 않는다.♡

글: 테크니컬 기자



7. 파티션

윈도우즈 2000

윈도우즈 2000을 깔 때 어떤 파티션을 쓸 것인지 마음대로 정할 수 있다.

도스의 FAT과 윈도우즈 NT의 NTFS 중에서 하나를 고르는 것이다.

윈도우즈 2000을 깐 뒤 파티션을 바꿀 수도 있다. 이때는 administrator tools에 있는 disk management 명령을 쓴다.♡

***윈도우즈 2000에서 파티션을 조정하려면 administrator tools에 있는 disk management 명령을 이용한다.

리눅스

리눅스는 지금까지 선보인 거의 모든 파일 시스템을 쓴다. 업그레이드가 계속 진행되므로 이 부문에서는 단연 리눅스가 윈도우즈 2000을 압도한다.

***리눅스는 fdisk나 disk druid 명령을 써서 파티션을 조정한다.



8. 전체 용량

윈도우즈 2000

"전체 설치" 옵션으로 윈도우즈 2000 서버를 깔면 800MB의 저장 공간을 차지한다. 윈도우즈 2000 프로페셔널은 400MB 정도다.

리눅스

파 워리눅스 6.0의 모든 내용을 깔려면 500MB의 공간이 필요하다. 윈도우즈 2000 프로페셔널보다 조금 많지만 프로페셔널은 일반인을 겨냥한 탓에 서버 능력이 없다. 이 점을 감안하면 리눅스가 하드디스크를 좀 더 효과적으로 쓴다는 결론이 나온다.



9. 한글 쓰기

윈도우즈 2000

마이크로소프트사는 윈도우즈를 세계적인 운영체제로 키우기 위해 각 나라의 언어로 프로그래밍한다.영어 버전이 가장 먼저 나오고 뒤이어 일본어나 한글 윈도우즈가 선보인다.

윈도우즈 2000의 한글 버전은 한글 작업을 완벽하게 처리한다. 참고로, 이것은 60여 가지의 언어로 되어 있다.

리눅스

예전에 선보인 리눅스에서 한글을 쓰면 글자가 깨지는 등 문제가 많았다. 하지만 국내 개발자들이 리눅스의 한글화에 온 힘을 쏟은 덕분에 지금은 에러가 크게 줄었다.

그 가운데 알짜 리눅스는 한글을 완벽하게 처리하기로 이름나 있다. 한글을 처리하는 패키지를 지닌 리눅스도 있다.



10. 안정성

윈도우즈 2000

윈도우즈 2000의 베타 3은 비록 정품은 아니지만 안정성이 대단하다는 평을 받는다. 하지만 이것은 어디까지나 윈도우즈 95나 98과 비교한 결과다.

윈도우즈 2000이 먹통이 되면 Ctrl + Alt + Del 키 또는 Reset 버튼을 눌러 시스템을 재부팅한다. 그렇지 않으면 정상으로 되돌릴 수 없기 때문이다.

또한 PC를 조금만 잘못 다루어도 파일들이 망가져 시스템을 포맷해야 한다. 윈도우즈 2000의 가장 큰 단점은 역시 안정성 부분이다.

리눅스

시스템을 아무리 험하게 써도 리눅스는 절대 먹통이 되지 않는다. 이것을 이용하는 사람들은 한결같이 리눅스의 안정성이 윈도우즈 2000을 압도한다고 말한다.

인터페이스가 윈도우즈를 닮은 "X 윈도우즈"에서 작업하다 문제가 생겨도 텍스트 콘솔(text console)에서 그 명령을 끝내면 그만이다. 이것은 시스템을 재부팅하지 않고 X 윈도우즈를 다시 띄울 수 있다는 얘기다.



11. 텍스트 콘솔

윈도우즈 2000

윈 도우즈 95, 98, 2000은 모두 텍스트 명령을 처리하는 텍스트 콘솔을 지녔다. 도스 창이 그것이다. 여기서는 기본적인 도스 명령과 네트워크 관련 명령을 처리하고 도스용 프로그램도 수행시킨다. 도스 창을 윈도우즈에서 여러 개 띄우거나 PC를 아예 도스로 부팅시키는 능력을 지녔다.

(그림)윈도우즈 2000에서 띄운 도스 창에서 텍스트로 명령을 내리는 모습.


리눅스

기본 모델로 삼은 리눅스는 텍스트로 명령을 내리는 데 적합한 구조로 디자인되었다. 또한 텍스트 콘솔을 여럿 수행시키는 "가상 스크린"을 지녀 여러 개의 작업을 한꺼번에 처리할 수 있다. 이것은 최대 6개의 콘솔을 쓴다.



12. 인터페이스

윈도우즈 2000

윈 도우즈가 세계적인 운영체제로 성장할 수 있었던 배경에는 마우스로 모든 작업을 처리하는 GUI(Graphic User Interface)가 자리잡고 있다. 이보다 조금 앞서 비슷한 방식으로 디자인한 운영체제가 여럿 나왔지만 윈도우즈만큼 큰 인기를 끌지 못했다. 누구나 쉽게 PC를 쓸 수 있도록 하는 데 초점을 맞춘 윈도우즈의 GUI는 과학적인 데다 시각적으로도 매우 멋스럽다.

윈도우즈 2000의 GUI는 95나 98보다 더욱 세련되었다. 쓰는 방법이 비슷해 따로 연습하지 않아도 된다. 인터페이스는 윈도우즈 2000이 리눅스보다 한 수 위다.

리눅스

텍스트로 명령을 내리는 리눅스가 인터페이스의 약점을 보완하기 위해 도입한 것은 "X 윈도우즈"(정확한 이름은 Xfree86)다. 이것을 수행시키면 윈도우즈처럼 생긴 화면이 뜨고, 모든 작업을 마우스로 해치운다.

윈 도우즈 2000은 모양이 한 가지이지만 리눅스는 어떤 GUI 쉘을 쓰느냐에 따라 인터페이스가 달라진다. 가장 많이 알려진 GUI 쉘은 GNOME과 KDE다. 파워 리눅스 6.0에는 이 둘이 기본적으로 들어 있다. 그 외에도 여러 가지 쉘이 통신에 올라와 있으므로 필요한 것을 내려받아 입맛에 맞는 인터페이스를 꾸미도록 한다.



13. 파일 관리

윈도우즈 2000

윈도우즈 2000은 파일을 지우거나 복사하기, 옮기기 등 파일을 관리하는 일이 매우 쉽다. 모두 GUI 덕분이다. 무엇보다 실수로 지운 파일을 휴지통에서 되살릴 수 있는 능력이 돋보인다. 리눅스에는 이 명령이 없다.♡

리눅스

리 눅스가 텍스트로 명령을 내리도록 설계한 운영체제라는 것을 감안하면, 많은 명령어를 알아야 파일을 제대로 관리할 수 있다는 결론이 나온다. 하지만 이것들을 모두 모으면 책 한권은 거뜬히 나올 정도로 많다. 따라서 명령어를 모두 기억한다는 것은 불가능하다. 파일을쉽게 관리하려면 X 윈도우즈를 이용한다.



14. E-메일 서버

윈도우즈 2000

윈 도우즈 2000이나 NT는 메일 서버를 꾸밀 능력이 없다. 그 일을 전문으로 하는 것을 따로 사서 깔아야 한다. 대표적인 것이 마이크로소프트사가 만든 "익스체인지 서버"다. 인터넷에는 윈도우즈에서 쓰는 공개용 메일 서버가 여럿 등록되어 있다.

리눅스

리눅스용 메일 서버 프로그램이 몇 가지 선보였지만 한글이 깨지는 등 문제가 적지 않다. 다행히 그런 에러들을 말끔히 해결하는 팁들이 통신에 올라와 있다.♡



15. 네트워크 프로토콜

윈도우즈 2000

윈도우즈 2000은 TCP/IP, NetBEUI, IPX 등이 네트워크 관련 기술을 쓰므로 통신을 즐기는 데 조금도 불편하지 않다. 네트워크 설정 작업은 NT보다 훨씬 더 간단하다.

리눅스

거의 모든 네트워크 프로토콜을 갖춘 리눅스는 네트워크용 운영체제라고 불릴 만큼 통신 작업을 거뜬히 소화한다. NetBEUI를 이용하면 윈도우즈가 깔린 시스템과 통신할 수 있다.



16. 개발 도구

윈도우즈 2000

윈도우즈 2000은 개발 도구를 가지고 있지 않다. 애플리케이션을 직접 만들려면 마이크로소프트사의 "비주얼 스튜디오"를 이용한다.

리눅스

리눅스는 GCC를 갖춰 프로그램을 따로 깔지 않고 필요한 애플리케이션을 직접 짤 수 있다.

이와 관련된 라이브러리가 완전히 공개된 상태여서 프로그램을 개발하는 일은 조금도 힘들지 않다.



17. 업그레이드

윈도우즈 2000

윈도우즈 2000은 NT처럼 업그레이드된다. 즉, 마이크로소프트사가 인터넷에 올려놓거나 CD에 담아 보내준 서비스 팩을 시스템에 까는 것이다.

여기에는 에러를 없애는 버그 패치와 명령어의 능력을 향상시키는 파일 등이 들어 있다. 기본 업그레이드는 공짜로 진행되지만 버전을 바꾸는 서비스 팩은 돈을 주고 사야 한다.

리눅스

리눅스를 업그레이드하는 일은 순전히 이용자들의 몫이다. 스스로 만든 패치를 이용해 성능을 향상시키거나 다른 사람이 만든 것을 인터넷에서 내려받아 까는 것이다.



18. 기술 지원

윈도우즈 2000

마이크로소프트사는 윈도우즈 2000에 대한 기술 지원을 전문으로 하는 팀을 따로 운영한다.이곳에 전화하면 많은 도움을 받는다.

리눅스

리눅스는 공짜다. 이것을 쓰다 어떤 피해를 입어도 마땅히 하소연할 데가 없다. 돈은 조금 들이면 리눅스의 업그레이드와 기술 지원을 전문으로 하는 회사의 도움을 받을 수 있다.



19. 리눅스의 단점

1. 공개운영체제이기 때문에 문제점 발생시 보상받을 수 없습니다

2. 한글입출력이 어렵습니다.

3. 공개운영체제이기 때문에 보안에 취약할 것이라는 선입관이 있습니다. 리눅스는 그 출발에서부터 프로그램 자체에 대한 정보의 완전공개에 바탕을 두었고, 유연하고 강력한 현재의 운영체제로 탈바꿈할 수 있었던 이유도 바로 GNU프로젝트에 의한 것이었습니다. 그 이면에는 공개이기 때문에 보안이 취약하다는 의미보다는 공개이기 때문에 신속한 보완이 가능하다는 뜻을 내포하고 있다고 생각합니다. 즉, 수많은 프로그래머들이 리눅스를 연구하고 있기 때문에, 어떠한 문제가 발생하였을 경우, 신속하게 해결될 수 있습니다. 또한 공개 운영체제이기 때문에 문제점 발생시 보상받기 어렵다는 것은 더 이상 큰 문제가 아닌듯 싶습니다. 리눅스의 급부상으로 많은 리눅스 관련업체들이 생겨나고 서비스를 제공하고 있기 때문에 이 문제는 점차 해결되고 있습니다.

4. 최근 리눅스 보안 취약점 및 대책

최 근 mscan, sscan 등 리눅스를 주요 목표로 하는 보안 취약점 스캐닝 도구가 널리 공개되면서 리눅스와 관련한 많은 보안 침해사고가 발생하고 있다. 특히, imap, pop, bind, mountd 등 원격에서 루트 권한을 획득할 수 있는 다수의 버퍼오버플로우 취약점을 공격하는 해킹 프로그램(exploits)이 공공연히 공개되어 있어 누구나 손쉽게 리눅스 시스템을 공격할 수 있다. 다음은 최근에 발견된 그리고 공격에 가장 많이 사용되는 취약점과 대책이다.
반응형

설정

트랙백

댓글