시놀로지 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
드디어 끝났습니다. 이제 블로그 및 사이트를 만들일만 남았습니다. 워드프레스는 기본적으로 테마와 플러그인으로 구성되는데 추천 테마 및 플러그인등은 추후에 포스팅 하도록 하겠습니다. 수고하셨습니다.
안녕하세요 레드밀크님 나스 초보 입니다. 먼저 늦었지만 새해복 많이 받으세요!
나스에 대해서 모르겠는데 계속 보고 계속보고 하고 있습니다.
궁금한것이 정말 여러가지 이지만 지금 궁금한것은 dsm 7.2-64570 버젼인데 webstation 웹스테이션을 보면 가상 호스트 설정 메뉴가 빠져 있습니다… 참 시작부터 난관이네요 하하하하….. 고견좀 주실수 있을까요 ㅠㅠ
현재 사이트가 NAS로 운영중인 사이트 이신가요?
안녕하세요. 넵 맞습니다. 단순 블로그기에 꾸미지는 않고 운영중입니다. 무슨 일 때문에 그러신가요?
사이트 주소와 워드프레스 주소를 다르게 설정하면 안되는 것일까요..?
현재 워드프레스 주소와 사이트 주소가 https://ip주소/wordpress 이렇게 설정되어있었는데 https://university.ac.kr으로 변경하고 로그아웃을 하니 일반적인 외부 접속자들이 보는 페이지로 잘 뜹니다.. 근데 어느 한 메뉴에 들어가면 ip주소가 있는 링크로 뜨면서 오류가 뜹니다.. 도움 부탁드리겠습니다…!!…
플러그인중에 주소를 일괄로 변경하는 플러그인이 있습니다. ip주소를 전부 도메인 주소로 변경해주셔야 합니다. 플러그인은 워드프레스 내부 주소변경 등으로 포털에 검색하시면 쉽게 찾을수 있습니다.
안녕하세요 궁금한 점이 있어서 댓글 남깁니다. 현재 학교의 실험실 홈페이지를 나스 시놀로지를 통해 워드프레스를 설치해서 홈페이지가 만들어져있는 상태입니다. 외부인들의 실험실 홈페이지 접속을 하게 해주는 링크를 https://university.ac.kr 이런식으로 되어있었다고 하면 이 도메인 지원 해주는 서비스가 종료되어서 안들어가져서 학교 측에서 DNS 신청을 통해 university.ac.kr 이라는 도메인을 받게 되었습니다 (예시입니다..!) 저는 저 university.ac.kr 이라는 도메인을 누르면 외부인들이 실험실 홈페이지에 (관리자 페이지가 아닌) 접속하게 하고 싶습니다.. 설명해주신 방법대로 하니 university.ac.kr이라는 링크를 쓰게되면 관리자 페이지에 접속되게 되더라구요..ㅠㅠ 원래 워드프레스 상에서 사이트 주소와 워드프레스 주소가 https://ip주소/ 이런식으로 설정되어있었습니다..! 어떻게 해야 university.ac.kr을 누르면 만들어진 홈페이지가 보이게 설정할 수 있을까요..? 도움 부탁드리겠습니다 ! 감사합니다 !
말씀하신 관리자 페이지라는게 워드프레스의 /wp-admin 관리자 페이지를 말씀하시는건가요??기존에 ip주소로 셋팅되어있다면 데이터베이스에서(phpMyadmin)에서 주소를 도메인주소로 변경해주시거나 기존 ip주소로 들어가서 워드프레스 설정에서 도메인주소로 변경해주셔도 됩니다. 다만 내부에 사진등의 링크가 ip주소로 되어있다면 문제가 발생할 수있습니다. 해당 부분에 대해서는 제 블로그에는 설명된 글이없고 제가 현재 외부이기에 길게 설명드리기가 어렵습니다. 워드프레스 주소 변경하기등으로 포털에서 검색하시면 꽤 많은 글이 올라와있을겁니다. 참고해서 해보시고 잘안되시면 다시한번 문의주세요^^
사이트 주소와 워드프레스 주소를 https://ip주소/wordpress 에서 https://university.ac.kr 으로 변경하고 로그아웃을 하니 https://university.ac.kr으로 들어가면 제가 만들어진 홈페이지가 잘 보이게 되었습니다. (https://ip주소/wordpress 로 설정하고 로그아웃해도 만들어진 홈페이지가 잘 보이게 됩니다.!) 근데 어느 한 메뉴를 누르니 https://ip주소/wordpress/메뉴이름 이렇게 뜨면서 404 찾고 계신 페이지를 발견할 수 없습니다. 이렇게 오류가 뜨는데 혹시 어떻게 해결해야하는지 알고계실까요? 도움 주시면 감사하겠습니다..!!
레드밀크님 덕분에 해결 잘하였습니다 정말정말 감사합니다ㅠㅠ!!
외부라서 자세하게 도움못드려 죄송할뿐입니다. 해결되셔서 다행입니다
안녕하세요! 레드 밀크님
나스 초보입니다. 님께서 작성해 놓은 글 보고 시작했는데
처음부터 난관이네요 ㅎㅎ
phpmyadmin 외부 접속이 안되는데 점검해봐야할 부분이 있을까요?
아니면 php빼고 다음부터 해도 될까요?
안녕하세요 nas주소를 도메인으로하신거라면 ip주소로 접속해서 해보세요