시놀로지 NAS 웹서버 구축부터 워드프레스 설치까지 방법
이번에는 시놀로지 NAS를 홈페이지나 블로그를 만들 수 있는 웹서버로 사용하는 방법을 포스팅하겠습니다. 홈페이지나 블로그를 만들때 편리하게 만들기 위해서 사용하는 것중하나가 워드프레스입니다. 세계적으로 가장많이 사용하는 CMS중 하나입니다. 어떻게 만드느냐에 따라 블로그나 홈페이지 형태로 제작이 가능합니다. 본 블로그도 워드프레스로 운영중입니다.
해당 포스팅은 시놀로지 DSM7.1 에서 작성되었습니다.
시놀로지 NAS를 웹서버로 만들기 위한 패키지 설치
시놀로지 NAS를 웹서버로 만들기 위해서 패키지 센터에서 몇 가지 패키지를 설치하여야 합니다. 참고로 워드프레스를 시놀로지 패키지 센터에서 패키지형태로도 설치가 가능하나 관리면에서 수동으로 설치하는게 더 좋습니다.
필수 패키지
- Web Station
- MariaDB 10
- Apache HTTP Server 2.4
- PHP 8.0
- phpMyAdmin(필수는 아니지만 설치하는게 좋습니다)
처음에 웹 스테이션(Web Station)을 설치시에 기본적으로 몇가지 패키지가 설치될 것 입니다. 그 후 필수 패키지 중 설치가 안된 패키지만 설치해주시면 됩니다. 아파치서버나 PHP는 설치하시려는 시점에 가장 최신으로 설치해주셔도 될듯합니다. 호환성 문제가 있긴하나 해당 패키지들이 시놀로지에 패키지로 올라오는 시점이 공개된 시점보다 늦어서 크게 호환성 문제는 생각 안하셔도 될듯합니다.
추가로 MariaDB10은 운영중이신 시놀로지 NAS에 SSD를 사용하고 계신다면 SSD볼륨에 설치 해주시는게 좋습니다. SSD 드라이브가 없으시다면 SSD 캐시가 적용돈 볼륨에 설치 추천합니다. 일반적인 사용에는 SSD 캐시가 큰 체감이 안되나 웹서버의 경우에는 확연히 차이가 납니다.
phpMyAdmin 설정하기
phpMyAdmin은 데이터 베이스를 관리하기위한 툴 정도로 생각해주시면됩니다. 별도로 데이터베이스 셋팅이 가능하신분은 해당 내용은 패스하셔도 됩니다.
phpMyAdmin의 경우 웹서버가 설치된 상태에서는 시놀로지에서 아이콘 클릭해서는 접속이 되지 않습니다. 이런경우 https://192.168.0.7/phpMyAdmin 같이 IP주소로 접속해주셔야 합니다. 여기서 IP주소는 내부 접속시에는 내부IP 외부에서는 해당서버의 IP주소를 입력해주셔야 합니다.
초기 사용자명은 root이며 암호는 MariaDB10 설치시 생성하신 패스워드를 입력하시면 됩니다.
보안에 신경쓰신다면 phpMyAdmin을 처음 실행 후 가장 먼저 해야할 일은 사용자 계정 생성입니다. 난 괜찮아 하시는 분은 admin 계정을 계속 사용하셔도되나 가급적이면 새로운 계정 생성 하기를 권유드립니다. 사용자 계정은 위와 같이 사용자 계정메뉴에서 사용자 추가를 클릭하시면 됩니다.
phpMyAdmin의 사용자 추가화면입니다. 빨간 네모 부분만 입력해주시면 되며 데이터나 구조등 잘 모르시겠다면 모두 체크 부분을 클릭하여 만들어 줍니다.
좌측 사이드바 메뉴에 새로운을 누르거나 상단에 데이터 베이스 탭을 클릭하면 위와 같은 화면이 나오는데 이곳에서 사용하실 데이터베이스 이름을 입력 후 만들기를 클릭합니다. 이렇게 하면 데이터베이스 생성은 끝납니다.
워드프레스 다운로드 및 설치
시놀로지에서는 워드프레스를 패키지 형태로 설치가 가능하나 패키지 형태 설치는 추천드리지 않습니다. 그러기에 별도로 설치해줍니다. 별도로 설치한다하여 어려운것도 없으니까요, 워드프레스는 아래 링크에 접속하여 다운로드 합니다.
위와 같은 다운로드 아이콘을 클릭합니다. 워드프레스는 zip 확장자로 압축되어 있습니다.
저의 경우 관리의 편의성을 위해 다운로드된 압축파일을 webssd라는 공유폴더를 만들어서 그곳에 넣었습니다. (공유폴더는 제어판에서 생성 가능합니다) 이제 위와 같이 압축을 풀어줍니다. 워드프레스는 wordpress 촐더가 통째로 압축되어 있어서 그냥 풀기나 여기에 압축풀기로 하셔도 됩니다.
압축이 풀렸으면 해당 워드프레스 폴더의 이름을 사이트의 제목이나 편리하신대로 만들어 줍니다. 이 또한 관리의 편의성 때문이지 필수는 아닙니다.
시놀로지 웹스테이션(Web Station) 설정하기
1번 단계에서 설치한 웹스테이션을 실행해 줍니다.
정상적으로 웹스테이션이 설치가 되었다면 위와 같은 화면이 나옵니다. 여기서 개인 웹사이트 상태는 다르게 표시되어도 괜찮습니다. DSM 사용자들이 각각 웹사이트를 만들 수 있는 기능을 주는것 입니다.
이제는 기본적인 웹서버의 파일 루트등을 설정하기 위한 설정을 합니다. 웹 서비스 포털 메뉴에서 생성을 클릭합니다.
가상 호스트 부분을 클릭합니다. 가상 호스트로 파일의 경로로 지정을 안해주게 되면 https://redmilk.co.kr/test 이처럼 이전단계에서 워드프레스 파일을 입력하신 경로가 뒤에 붙습니다.
위와 같이 호스트 이름에 워드프레스로 만들 홈페이의 접속 주소를 입력후 다음을 눌러줍니다. 저는 redmilk.co.kr의 도메인에 test라는 서브도메인을 붙여서 test.redmilk.co.kr을 만들었으나 DDNS도 상관없습니다.
문서 루트에는 워드프레스가 압축이 풀려있는 폴더를 선택해주시면 되며 그외 것들은 위 화면 처럼 구성해 주시고 다음을 클릭합니다. 버전은 크게 상관없으나 최신버전을 추천합니다.
가볍게 블로그 정도만하면 크게 상관없으나 테마나 플러그인 사용시에는 위와같이 300초 정도로 설정해줍니다. 기본값은 60입니다.
이제 다음을 누르고 그대로 진행하시면 됩니다.
문제없이 진행되었다면 가상 호스트가 생성된것을 보실 수 있습니다
이번에는 php에 관련된 설정을 해야합니다. 위 화살표 순서처럼 사용하는 php 버전을 선택후 편집을 클릭합니다.
해당 화면처럼 PHP 캐시 활성화만 해주셔도 됩니다.Xdebug 활성화시 사이트가 조금 느려집니다. 확장탭에서는 전체를 클릭하여 저장합니다.
워드프레스 설치 폴더 권한 설정하기
워드프레스는 http 그룹의 읽기 쓰기 권한이 필요합니다. 그에 맞는 권한을 설정하는데 기본적으로는 파일 스테이션에서 설정하게되면 플러그인이나 테마 설치기 오류가 발생하거나 ftp접속 주소를 입력하라는 메시지가 뜨기도합니다. 그래서 두번손이 안가도록 ssh를 이용하여 권한을 주는 방법으로 설명합니다.
우선 제어판-터미널 및 SNMP 메뉴에서 SSH 서비스를 활성화합니다. 이때 포트는 임의대로 지정해주셔도 되며 꼭 해당 기능 사용 후 다시 비활성화 해주셔야합니다. SSH를 통한 해킹시도가 상당합니다.
위 링크에서 putty를 다운로드하여 실행합니다.
윈도우 사용자의 경우 확장자가 exe인 해당 버전을 다운로드 받아 실행하면 됩니다.
자신의 시놀로지 접속 주소와 포트를 입력해줍니다.
이제 root권한을 가져와야 합니다.
sudo su –
위 명령어를 입력후 관리자 계정 비밀번호를 한번더 입력합니다.
root계정으로 들어가면 화면과 같이 앞쪽에 root라고 적힌게 보이실겁니다.
사용자마다 워드프레스를 설치한 경로가 다르기에 몇가지 명렁어를 알려드리겠습니다.
- cd 폴더이름 – 해당 폴더로 들어감
- cd .. – 현재 폴더에서 상위폴더로 나감
- ll – 도스의 dir과 같은계념 현재 폴더에 있는 파일과 폴더를 보여줌
저의 경우에 볼륨2의 webssd 폴더안에 test폴더가 있고 그곳에 워드프레스 파일이 있습니다.
cd /volume2/webssd/ -- 워드프레스 폴더들이 있는 공유폴더 까지 진입
chown -R http.http (워드프레스 폴더 경로) -- http로 소유자 지정 예)) chown -R http.http test
cd test --위에서 설치한 test 폴더로 진입
find ./ -type f -exec chmod 644 {} \; --진입한 폴더 내부의 파일 권한을 644로 변경
find ./ -type d -exec chmod 755 {} \; --진입한 폴더 내부의 폴더 권한을 755로 변경
해당 스크린샷을 참고 부탁드립니다.
https연결을 위한 인증서 생성 및 적용
몇년전부터 http 웹사이트는 크롬등에서 보안메시지가 나옵니다. 이제는 https로 접속을 해야하는데 인증서가 필수 입니다. 시놀로지에서는 무료인증서인 Let’s Encrypt 인증서를 쉽게 설정 할 수 있습니다. DDNS의 경우에는 인증서 발급이 어려울 수 있는점 참고바랍니다.
인증서를 발급받기 위해서는 제어판-보안 메뉴로 진입하여 인증서 탭을 클릭후 추가버튼을 클릭합니다.
새 인증서 추가 선택 후 다음 클릭합니다.
설명 부분은 추후에 관리를 위해 어떤 부분인증서인지 알아보기 쉽게 입력해줍니다.
Let’s Encrypt에서 인증서 얻기를 선택후 다음울 눌러줍니다. 기존에 인증서가 있다면 기본 인증서 설정은 선택하지 않으셔도 됩니다.
도메인 이름에는 자신의 DDNS주소나 도메인 주소를 입력하고 이메일은 사용중인 이메일을 입력합니다.
주제 대체이름은 자신의 도메인과 서브 도메인을 입력합니다. 여러 서브 도메인을 입력할 시에는 ;로 구분해줍니다.
문제가 없다면 다음과 같이 인증서가 보이실 겁니다. 해당 인증서를 선택 후 설정을 클릭합니다.
이곳에서 자신의 웹사이트 주소를 찾을후 네모친 부분을 클릭하면 인증서를 선택할 수 있습니다. 선택하셨으면 확인을 누르면 됩니다. 그러면 해당 주소로 https로 접속시 에러메시지 없이 접속이 가능합니다.
워드프레스 실행 및 기본 설정
드디어 워드프레스를 실행할 차례입니다. 앞에 준비작업들이 내용만 길지 막상 몇번 해보시면 별로 여려운거 없이 금방하실 수 있는것들인데 아무래도 처음 하시는 분들은 조금 힘드셨으리라 생각듭니다.
위에서 설정한 호스트이름을 주소창에 입력해줍니다. 저의 경우에는 https://test.redmilk.co.kr입니다. DDNS로 설정하신분들은 자신의 DDNS 주소를 입력합니다.
해당 내용은 한번 읽어보신후 시작합니다를 클릭합니다.
- 데이터베이스 이름- 2번 과정에서 생성한 데이터 베이스명
- 사용자명- 2번 과정에서 만든 데이터 베이스 계정
- 비밀번호- 2번 과정에서 만든 패스워드
- 데이터베이스 호스트- localhost:/run/mysqld/mysqld10.sock
- 테이블 접두어- 데이터 베이스 앞쪽에 붙는 접두어로 관리의 편의정을 위해 사이트 이름의 약자등으로 입력 합니다.
다 입력하셨으면 제출을 누르고 진행합니다.
이곳에서 사이트 제목과 사용자명(ID) 비밀번호등을 설정하고 워드프레스 설치를 클릭 합니다.
이후 자신의 https://워드프레스주소/wp-admin 를 입력하면 로그인 화면이 나오는데 관리자 화면을 보실 수 있습니다.예)https://test.redmilk.co.kr/wp-admin
드디어 끝났습니다. 이제 블로그 및 사이트를 만들일만 남았습니다. 워드프레스는 기본적으로 테마와 플러그인으로 구성되는데 추천 테마 및 플러그인등은 추후에 포스팅 하도록 하겠습니다. 수고하셨습니다.
안녕하세요, 현재 NAS에서 워드프레스 사이트를 운영 중인데, NAS의 ip가 변경되니, 워드프레스 접속이 아무리 시도해도 되지 않고 있습니다.
혹시 어떻게 하면 워드프레스에도 변경된 ip를 적용하여 접속할 수 있을까요??