서버 설치 · 5 min read · Sep 24, 2025
Debian 11에 LAMP 스택 설치하기

LAMP 스택은 웹에서 웹사이트와 애플리케이션을 호스팅하는 데 사용되는 일반적인 오픈 소스 도구 세트입니다. LAMP 스택은 리눅스를 운영 체제로, 아파치를 웹 서버로, MariaDB/MySQL을 데이터베이스 서버로, PHP를 스크립팅 언어로 사용하는 웹 개발 플랫폼입니다. 이 플랫폼은 매우 널리 사용되며 고성능 웹 애플리케이션을 제공하기 위한 검증된 소프트웨어 세트를 제공합니다.
이 튜토리얼에서는 Debian 11에 LAMP 스택을 설치하는 방법을 보여드리겠습니다.
전제 조건
- Debian 11이 실행되는 서버.
- 서버 IP를 가리키는 유효한 도메인 이름.
- 서버에 구성된 루트 비밀번호.
아파치 웹 서버 설치
아파치 웹 서버 패키지는 Debian 11 기본 저장소에 포함되어 있습니다. 다음 명령어를 실행하여 설치할 수 있습니다:
apt-get install apache2 apache2-utils -y아파치 웹 서버를 설치한 후, 다음 명령어로 설치된 아파치 버전을 확인합니다:
apache2 -v다음과 같은 출력이 표시되어야 합니다:
Server version: Apache/2.4.48 (Debian)
Server built: 2021-08-12T11:51:47
아파치 서비스를 시작하려면 다음 명령어를 실행합니다:
systemctl start apache2시스템 부팅 시 아파치 서비스가 시작되도록 활성화하려면 다음 명령어를 실행합니다:
systemctl enable apache2다음 명령어로 아파치의 전체 상태를 확인할 수도 있습니다:
apt-get install elinks
apache2ctl fullstatus다음과 같은 출력이 표시되어야 합니다:
Apache Server Status for localhost (via ::1)
Server Version: Apache/2.4.48 (Debian)
Server MPM: prefork
Server Built: 2021-08-12T11:51:47
--------------------------------------------------------------------------
Current Time: Tuesday, 17-Aug-2021 09:29:41 UTC
Restart Time: Tuesday, 17-Aug-2021 09:29:33 UTC
Parent Server Config. Generation: 1
Parent Server MPM Generation: 0
Server uptime: 7 seconds
Server load: 0.05 0.01 0.00
Total accesses: 0 - Total Traffic: 0 kB - Total Duration: 0
CPU Usage: u.03 s.02 cu0 cs0 - .714% CPU load
0 requests/sec - 0 B/second
1 requests currently being processed, 4 idle workers기본적으로 아파치는 포트 80에서 실행되며, 다음 명령어를 사용하여 확인할 수 있습니다:
ss -antpl | grep apache2다음과 같은 출력이 표시되어야 합니다:
LISTEN 0 511 *:80 *:* users:(("apache2",pid=44022,fd=4),("apache2",pid=44021,fd=4),("apache2",pid=44020,fd=4),("apache2",pid=44019,fd=4),("apache2",pid=44018,fd=4),("apache2",pid=44017,fd=4))
아파치 설치를 확인하려면 URL http://your-server-ip를 브라우징할 수 있습니다. 다음 화면에서 아파치 테스트 페이지를 볼 수 있어야 합니다:

MariaDB 데이터베이스 서버 설치
MariaDB는 웹사이트의 데이터를 저장하고 관리하는 데 사용되는 데이터베이스 관리 시스템입니다. 다음 명령어를 사용하여 설치할 수 있습니다:
apt-get install mariadb-server -yMariaDB가 설치되면, MariaDB 서비스를 시작하고 시스템 부팅 시 시작되도록 활성화하려면 다음 명령어를 사용합니다:
systemctl start mariadb
systemctl enable mariadb다음 명령어를 사용하여 MariaDB 서비스의 상태를 확인할 수도 있습니다:
systemctl status mariadb다음과 같은 출력이 표시되어야 합니다:
? mariadb.service - MariaDB 10.3.31 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2021-08-21 04:13:25 UTC; 1min 36s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 1838 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 31 (limit: 2353)
Memory: 66.1M
CGroup: /system.slice/mariadb.service
??1838 /usr/sbin/mysqld
MariaDB 설치를 보안하고 MariaDB 루트 비밀번호를 설정하는 것이 좋습니다. 다음 명령어를 실행하여 MariaDB 설치를 보안할 수 있습니다:
mysql_secure_installation다음과 같은 메시지가 표시되며 MariaDB 루트 비밀번호를 설정하고, 익명 사용자를 제거하고, 원격 루트 로그인을 금지하고, 테스트 데이터베이스를 제거하라는 요청을 받습니다:
Enter current password for root (enter for none):
Change the root password? [Y/n] Y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y기본적으로 MariaDB는 포트 3306에서 실행됩니다. 다음 명령어를 사용하여 확인할 수 있습니다:
ss -antpl | grep mariadb다음과 같은 출력이 표시되어야 합니다:
LISTEN 0 80 127.0.0.1:3306 0.0.0.0:* users:(("mariadbd",pid=12181,fd=15))MariaDB 셸에 연결하려면 다음 명령어를 실행합니다:
mysql -u root -pMariaDB 루트 비밀번호를 입력하고 Enter 키를 눌러 MariaDB 셸에 연결합니다. 연결되면 다음과 같은 출력이 표시되어야 합니다:
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 64
Server version: 10.5.11-MariaDB-1 Debian 11
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.이제 다음 명령어를 실행하여 MariaDB 버전을 확인합니다:
MariaDB [(none)]> SELECT VERSION();다음과 같은 출력이 표시되어야 합니다:
+-------------------+
| VERSION() |
+-------------------+
| 10.5.11-MariaDB-1 |
+-------------------+
1 row in set (0.001 sec)PHP 처리 언어 설치
PHP는 웹 서버에서 PHP 애플리케이션을 제공하는 데 사용되는 처리 언어입니다. 기본적으로 Debian 11에서 사용할 수 있는 PHP 버전은 PHP 7.4입니다. 다음 명령어를 사용하여 PHP와 일반적으로 사용되는 다른 확장 프로그램을 설치할 수 있습니다:
apt-get install php libapache2-mod-php php-cli php-mysql php-zip php-curl php-xml -yPHP가 설치되면 다음 명령어를 사용하여 PHP 버전을 확인합니다:
php -v다음과 같은 출력이 표시되어야 합니다:
PHP 7.4.21 (cli) (built: Jul 2 2021 03:59:48) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.21, Copyright (c), by Zend Technologies아파치를 위한 가상 호스트 생성
이 시점에서 LAMP 스택이 서버에 설치되었습니다. 이제 애플리케이션을 호스팅하기 위해 아파치 가상 호스트 구성 파일을 생성해야 합니다.
여기에서는 PHP 페이지를 호스팅하기 위해 example.com 디렉토리를 생성합니다. 다음 명령어로 생성할 수 있습니다:
mkdir /var/www/html/example.com다음으로 example.com 디렉토리의 소유권을 www-data로 설정합니다:
chown -R www-data:www-data /var/www/html/example.com다음으로 다음 명령어로 아파치 가상 호스트 구성 파일을 생성합니다:
nano /etc/apache2/sites-available/example.com.conf다음 줄을 추가합니다:
ServerAdmin webmaster@localhost
ServerName example.com
DocumentRoot /var/www/html/example.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
파일을 저장하고 닫은 후, 다음 명령어로 example.com 가상 호스트를 활성화하고 기본 가상 호스트를 비활성화합니다:
a2ensite example.com.conf
a2dissite 000-default다음 명령어로 가상 호스트 파일에 구문 오류가 없는지 확인합니다:
apache2ctl configtest모든 것이 정상이라면 다음과 같은 출력이 표시되어야 합니다:
Syntax OK마지막으로, 구성 변경 사항을 적용하기 위해 아파치 서비스를 재시작합니다:
systemctl reload apache2다음 명령어로 아파치 서비스의 상태를 확인할 수도 있습니다:
systemctl status apache2다음과 같은 출력이 표시되어야 합니다:
? apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2021-08-21 04:13:30 UTC; 2min 56s ago
Docs: https://httpd.apache.org/docs/2.4/
Main PID: 2257 (apache2)
Tasks: 55 (limit: 2353)
Memory: 5.3M
CGroup: /system.slice/apache2.service
??2257 /usr/sbin/apache2 -k start
??2259 /usr/sbin/apache2 -k start
??2260 /usr/sbin/apache2 -k start
Aug 21 04:13:30 debian11 systemd[1]: Starting The Apache HTTP Server...
Aug 21 04:13:30 debian11 apachectl[2246]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 216.9>
Aug 21 04:13:30 debian11 systemd[1]: Started The Apache HTTP Server.아파치에서 PHP 설치 확인
다음으로, 아파치 웹 서버를 통해 제공할 샘플 PHP 파일을 생성해야 합니다. example.com 디렉토리 내에 phpinfo.php 파일을 생성할 수 있습니다:
nano /var/www/html/example.com/phpinfo.php다음 줄을 추가합니다:
파일을 저장하고 닫은 후, 웹 브라우저를 열고 URL http://example.com/phpinfo.php를 사용하여 PHP 페이지에 접근합니다. 다음 화면에서 PHP 페이지를 볼 수 있어야 합니다:

결론
위 가이드에서는 Debian 11에 LAMP 스택을 설치하는 방법을 설명했습니다. 이제 LAMP 스택을 사용하여 첫 번째 웹사이트를 호스팅할 수 있습니다. 질문이 있으면 언제든지 문의해 주세요.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.