서버 설정 · 3 min read · Oct 04, 2025
완벽한 서버 - Debian Lenny (Debian 5.0) [ISPConfig 2] - 페이지 3
4 SSH 서버 설치
Debian Lenny는 기본적으로 OpenSSH를 설치하지 않으므로, 지금 설치합니다. 다음을 실행하세요.
apt-get install ssh openssh-server이제부터 PuTTY와 같은 SSH 클라이언트를 사용하여 작업 스테이션에서 Debian Lenny 서버에 연결하고 이 튜토리얼의 나머지 단계를 따를 수 있습니다.
5 vim-nox 설치 (선택 사항)
이 튜토리얼에서는 vi를 텍스트 편집기로 사용할 것입니다. 기본 vi 프로그램은 Debian과 Ubuntu에서 이상한 동작을 하므로, 이를 수정하기 위해 vim-nox를 설치합니다:
apt-get install vim-nox(joe나 nano와 같은 다른 텍스트 편집기를 사용하는 경우 이 작업을 수행할 필요는 없습니다.)
6 네트워크 구성
Debian Lenny 설치 프로그램이 시스템을 DHCP를 통해 네트워크 설정을 받도록 구성했기 때문에, 서버는 정적 IP 주소를 가져야 하므로 이를 변경해야 합니다. /etc/network/interfaces를 편집하고 필요에 맞게 조정합니다 (이 예제 설정에서는 IP 주소 192.168.0.100을 사용할 것입니다) (eth0에 allow-hotplug를 auto eth0로 교체하는 것을 주의하세요; 그렇지 않으면 네트워크를 재시작할 수 없으며, 전체 시스템을 재부팅해야 합니다):
vi /etc/network/interfaces| # 이 파일은 시스템에서 사용 가능한 네트워크 인터페이스와 이를 활성화하는 방법을 설명합니다. # 더 많은 정보는 interfaces(5)를 참조하세요. # 루프백 네트워크 인터페이스 auto lo iface lo inet loopback # 기본 네트워크 인터페이스 #allow-hotplug eth0 #iface eth0 inet dhcp auto eth0 iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 |
그런 다음 네트워크를 재시작합니다:
/etc/init.d/networking restart그런 다음 /etc/hosts를 편집합니다. 다음과 같이 만듭니다:
vi /etc/hosts| 127.0.0.1 localhost.localdomain localhost 192.168.0.100 server1.example.com server1 # 다음 줄은 IPv6 지원 호스트에 바람직합니다 ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts |
이제 다음을 실행합니다:
echo server1.example.com > /etc/hostname
/etc/init.d/hostname.sh start그 후, 다음을 실행합니다:
hostname
hostname -f둘 다 server1.example.com을 표시해야 합니다.
7 Debian 설치 업데이트
다음 명령을 실행하여
apt-get updateapt 패키지 데이터베이스를 업데이트하고
apt-get upgrade최신 업데이트를 설치합니다 (있다면).
8 소프트웨어 설치
이제 나중에 필요한 몇 가지 패키지를 설치합니다. 다음을 실행하세요:
apt-get install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.6-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential(이 명령은 한 줄로 입력해야 합니다!)
9 쿼터
(내가 선택한 파티셔닝 방식과 다른 방식을 선택한 경우, 쿼터가 필요한 파티션에 적용되도록 이 장을 조정해야 합니다.)
쿼트를 설치하려면 다음을 실행합니다:
apt-get install quota/etc/fstab을 편집합니다. 내 파일은 다음과 같습니다 (나는 / 마운트 포인트가 있는 파티션에 usrquota, grpquota를 추가했습니다):
vi /etc/fstab| # /etc/fstab: 정적 파일 시스템 정보. # # <파일 시스템> <마운트 포인트> <유형> <옵션> <덤프> <패스> proc /proc proc defaults 0 0 /dev/sda1 / ext3 errors=remount-ro,usrquota,grpquota 0 1 /dev/sda5 none swap sw 0 0 /dev/hda /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 |
쿼트를 활성화하려면 다음 명령을 실행합니다:
touch /quota.user /quota.group
chmod 600 /quota.*
mount -o remount /quotacheck -avugm
quotaon -avug10 BIND9 DNS 서버
다음 명령을 실행하여 BIND9를 설치합니다:
apt-get install bind9보안상의 이유로 BIND를 chrooted 상태로 실행하려고 하므로 다음 단계를 수행해야 합니다:
/etc/init.d/bind9 stop/etc/default/bind9 파일을 편집하여 데몬이 비특권 사용자 bind로 실행되도록 하고, /var/lib/named로 chroot되도록 합니다. 다음 줄을 수정합니다: OPTIONS=”-u bind”를 OPTIONS=”-u bind -t /var/lib/named”로 변경합니다:
vi /etc/default/bind9| # resolvconf 실행? RESOLVCONF=yes # 서버의 시작 옵션 OPTIONS="-u bind -t /var/lib/named" |
/var/lib 아래에 필요한 디렉토리를 생성합니다:
mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/run그런 다음 /etc에서 /var/lib/named/etc로 구성 디렉토리를 이동합니다:
mv /etc/bind /var/lib/named/etc구성 디렉토리의 이전 위치에서 새 구성 디렉토리에 대한 심볼릭 링크를 생성합니다 (BIND가 향후 업데이트될 때 문제를 피하기 위해):
ln -s /var/lib/named/etc/bind /etc/bindnull 및 random 장치를 만들고 디렉토리의 권한을 수정합니다:
mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind/etc/rsyslog.d/bind-chroot.conf를 열어야 합니다…
vi /etc/rsyslog.d/bind-chroot.conf… 그리고 시스템 로그에 중요한 메시지를 여전히 기록할 수 있도록 다음 줄을 추가합니다:
| $AddUnixListenSocket /var/lib/named/dev/log |
로깅 데몬을 재시작합니다:
/etc/init.d/rsyslog restartBIND를 시작하고 /var/log/syslog에서 오류를 확인합니다:
/etc/init.d/bind9 start새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.