서버관리
지각생 연습장
222.239.181.55 (토론 | 기여) |
61.106.122.17 (토론 | 기여) (→서버 관리 개요) |
||
1번째 줄: | 1번째 줄: | ||
{{topmenu}} | {{topmenu}} | ||
+ | = 서버 = | ||
+ | * 사용자의 요청에 응답하도록 잘 구조화된 응용프로그램, 서비스, 장치, 환경 등을 통틀어 말한다. | ||
+ | ** 서버 프로그램, 서버 컴퓨터(장치), 서버 OS 등 구체적 개념과, 서버 환경, 서버 역할 등 가상적 개념을 적절히 구분해서 이해, 활용하면 된다. (서버가 무엇인가요?에 대한 대답이랄까) | ||
+ | == 서버 관리 개요 == | ||
+ | 서버 관리는 대략 다음과 같은 영역들로 이루어진다. | ||
+ | * 물리적 환경 구축 : 네트워크 환경, 전력, 온도와 습도 등 | ||
+ | * 개별 [[시스템 관리]] | ||
+ | ** 서버 H/W, OS설치 | ||
+ | ** 용도에 맞는 기본적인 사용/작업 환경 조성과 라이브러리 제공 | ||
+ | * 서비스 운영 : [[서버관리#DB|DB]], [[서버관리#WEB|웹]], [[메일]], [[서버관리#BIND(DNS)|DNS]], [[서버관리#FTP|FTP]], [[SSH]], [[IRC]], [[svn]], [[proxy]].. 셀 수 없이 다양하다 | ||
+ | * 항상성 유지 : 물리적, 시스템, 네트워크, 각 서비스 차원 | ||
+ | ** [[보안]] | ||
+ | ** 장비 점검/교체 : 디스크 등 | ||
+ | ** [[시스템 모니터링|모니터링]] / 튜닝 : 사용량/성능 분석과 조율 | ||
+ | |||
+ | = 물리적 환경 = | ||
+ | == 서버 HW == | ||
+ | 서버 컴퓨터의 특징 | ||
+ | * CPU power가 아주 뛰어날 필요 없다. 그래픽 사용자 인터페이스를 필요로 하지 않는 등의 이유로. 미디어 파일 인코딩등을 한다면 달라지겠지만. CPU 파워가 필요하면 더 빠른 것으로 교체하기 보단, 갯수를 늘려 병렬로 하는 것이 더 효과적이다. | ||
+ | * 부팅이 느리다. POST 검사, 원격 관리 준비 등 | ||
+ | |||
+ | = 시스템 = | ||
+ | OS 설치, 사용자 관리 등 : 이것도 점차 개별 시스템 차원이 아니라 여러 시스템을 동시에 관리할 수 있도록 발전하고 있다. | ||
+ | == OS == | ||
+ | * [[서버 튜닝]] | ||
+ | == 사용자 관리 == | ||
+ | |||
+ | == 참고 == | ||
+ | * http://tunelinux.pe.kr 문태준씨 홈페이지 | ||
+ | * [http://wiki.kldp.org/wiki.php/%BD%C3%BD%BA%C5%DB%B0%FC%B8%AE#s-3 KLDP 위키: 시스템 관리] | ||
+ | * http://www.debian-administration.org/ | ||
+ | * [http://debianusers.org/DebianWiki/wiki.php/contents05 데비안 위키 : 시스템] - 내가 관리하는 서버 중 2대가 데비안 GNU/Linux. (center, open) | ||
+ | * [http://debianusers.org/DebianWiki/wiki.php/contents06 데비안 위키 : 네트워크 및 서버 설정] | ||
+ | * http://wiki.kldp.org/wiki.php/Cfengine | ||
+ | * [http://en.wikipedia.org/wiki/Server_%28computing%29 위키피디아 - 서버] | ||
+ | |||
+ | = 서비스 = | ||
== DB == | == DB == | ||
* [[MySQL]] | * [[MySQL]] | ||
+ | ** 설정 파일 : /etc/mysql/my.cnf (debian) | ||
+ | ** 구동 스크립트 : /etc/init.d/mysql (start|stop|restart..) | ||
+ | ** 노동넷 DB datadir(DB 데이터파일 있는곳) : /NodongDB | ||
* MSSQL | * MSSQL | ||
+ | |||
== BIND(DNS) == | == BIND(DNS) == | ||
* 버전: bind9 | * 버전: bind9 | ||
+ | * [[서버프로그램설치|설치하기]] : 데비안의 경우, apt 로 자동 설치. | ||
+ | * 설정 개요 | ||
+ | *# 도메인 신청한 곳에서 1차, 2차 네임 서버 지정. (이제 설정할 서버 주소로) | ||
+ | *# /etc/named.conf 에 도메인에 대한 존 파일 지정 | ||
+ | *# 지정한 [[존 파일]] 생성. | ||
+ | *# [[존 파일]]에 호스트 추가/수정/삭제 | ||
+ | *# 서비스 재시작 | ||
* 설정파일 : /etc/named.conf (FreeBSD 는 /etc/namedb/named.conf) | * 설정파일 : /etc/named.conf (FreeBSD 는 /etc/namedb/named.conf) | ||
* 존 파일(기본 위치) | * 존 파일(기본 위치) | ||
13번째 줄: | 61번째 줄: | ||
** 프비 : /etc/rc.d/named (start|stop|restart) | ** 프비 : /etc/rc.d/named (start|stop|restart) | ||
* 팁 | * 팁 | ||
− | ** 여러 도메인이 같은 존 | + | ** 여러 도메인이 같은 [[존 파일]]을 이용할 수 있다. 같은 존파일을 지정하면 그 도메인의 다른 호스트들이 새 도메인에도 적용된다. 예로 h2dj.key.or.kr 이 있고, key.or.kr 도메인의 존 파일이 key.or.kr.zone 인데, key.kr 도메인의 존파일도 key.or.kr.zone 으로 지정하면 자연히 h2dj.key.kr 도 적용된다. |
+ | ** 존 파일에 중복된 호스트가 있으면 에러가 나거나 그 도메인 부분이 서비스되지 않음. | ||
+ | |||
== WEB == | == WEB == | ||
− | * APM 설치 | + | * APM ([[Apache]] + PHP + MySQL) 설치 |
*# [[Apache 설치]] | *# [[Apache 설치]] | ||
− | * Apache + php + libxml + [[freetds]] ( for mssql connection ) | + | ** Debian 계열에서 [[APT]]로 설치 |
+ | **: # apt-get install apache2 php5 php5-gd php5-mysql libapache2-mod-php5 mysql-server | ||
+ | * [[Apache]] + php + libxml + [[freetds]] ( for mssql connection ) | ||
* [[Troubleshooting_webserver|문제해결]] | * [[Troubleshooting_webserver|문제해결]] | ||
+ | * 구동 스크립트 (데비안) | ||
+ | /etc/init.d/apache2 (start|stop|restart..) | ||
+ | * [[버추얼호스트]] 설정 | ||
+ | * [http://www.psoft.net/HSdocumentation/admin/controlling_server_resources.html Controlling RAM And CPU Usage] - 아파치 시스템 자원 설정. | ||
+ | * [http://defindit.com/readme_files/httpd_suexec.html Apache suEXEC + VirtualHost with Rewrite] | ||
+ | * [http://www.apache-kr.org/documents/funstory.php?cmd=FunStoryView&rg_d=20020723&rg_seq_n=1 모듈의 확장으로 아파치에 날개를 달아보자!] | ||
== 미디어서버 == | == 미디어서버 == | ||
* [[win2000|MS윈도우 2000]] | * [[win2000|MS윈도우 2000]] | ||
+ | == FTP == | ||
+ | * [[vsftpd]] (very secure ftp daemon) | ||
+ | =[[보안]]= | ||
+ | * 물리적 보안 | ||
+ | * 시스템 보안 | ||
+ | * 네트워크 보안 | ||
+ | = 노트 = | ||
+ | == 새로 구한 서버를 웹 서버로 만들기 == | ||
+ | 작업 순서. 이렇게 하자. | ||
+ | === APM 설치 === | ||
+ | # 시스템 자원 확인, 하드웨어 청소 | ||
+ | # 각종 운영 정책 확정 | ||
+ | # 서버 OS(리눅스, FreeBSD) 설치 | ||
+ | # 서버 컴퓨터 설치 : 서버를 둘 물리적 장소에 잘 비치시킨다. | ||
+ | # 기본 서비스 설치 : ssh (원격 관리를 위해), ftp (데이터 업/다운로드) | ||
+ | # APM 설치 (Apache + PHP + MySQL) | ||
+ | ## 데비안 계열을 설치한 경우 | ||
+ | ##: apt-get install apache2 php5 mysql-server libapache2-mod-php5 php5-gd php5-mysql <== (최소) | ||
+ | ## [[Apache_설치|컴파일 설치]] (나중에 완성) | ||
+ | 설치 끝. 이제 잠시 쉰다. | ||
+ | === APM 설정 === | ||
+ | 기본 설정만으로도 왠만큼 돌아간다. | ||
+ | # apache 설정 | ||
+ | #* 가상호스트(virtual host) 설정 | ||
+ | # mysql 설정 | ||
+ | # php 설정 | ||
+ | #* php5.conf 에 php 파일로 인식할 확장자를 html 등도 추가 | ||
+ | # 성능 튜닝 | ||
== 웹 서버 이전 == | == 웹 서버 이전 == | ||
# 분석 : 옮겨 갈 곳 | # 분석 : 옮겨 갈 곳 | ||
28번째 줄: | 114번째 줄: | ||
# 기록 : 환경 설정 등 | # 기록 : 환경 설정 등 | ||
# 복사 : html 파일들 복사 | # 복사 : html 파일들 복사 | ||
− | # DB 이전 | + | # [[DB 이전]] |
− | # 버추얼호스트 설정 | + | # [[버추얼호스트]] 설정 |
# 테스트 | # 테스트 | ||
# DNS 설정 변경 | # DNS 설정 변경 |