네트워크

워드프레스, 익스프레스엔진을 직접 집 컴퓨터에 설치해보자.

콘파냐 2014. 2. 2. 02:04

네이버나 티스토리 블로그를 운영하다 보니, 워드프레스나 xe(익스프레스엔진)같은 설치형 블로그에 관심이 생겨 호스팅을 하는 방법이 아닌 직접 집에서 노는 컴퓨터에 설치해봤다.

컴퓨터의 성능이 너무낮고, 유동IP라  방문자가 많아지면 문제가 되겠지만, 연습용으로는 충분하다.

전기세가 부담이기 때문에 좀 그렇지만, 자신만의 취향이 있으니 이런 방법을 혹시 찾으시는 분이 계신다면 조금이나마 도움이 되었으면 한다.

 

웹서버를 열고 웹사이트를 구축하는 방법은 여러가지 방법이 있겠지만, 리눅스에 웹 페이지를 설치하는 법을 포스팅 한다.

요즘은 리눅스도 윈도우 못지 않게 설치가 편해졌졌고 별반 다르지않다. 리눅스의 선택은 페도라나, 데미안, 우분투 등 많은 무료버전이 있다. 기본 설치에 대한 부분은 나중에 기회가되면 리눅스 버전별로 할 생각이다.

인터넷에 설치에 관한 글들은 많으니 여기선 기본적인 설치를 한 다음에 내용에 대해서 설명하겠다.

특이 이번 포스팅은 가정에서 네트워크 구성하는 방법과 포트포워드 방법 위주로 포스팅이 이루어질 것이다.

 

앞으로 이 글을 읽는 대부분의 분은 리눅스에 능숙하지 않을 것이고 나 또한 리눅스를 아직 능숙히 다루지 못하기 때문에, 설치형 블로그를 사용하는데 필요한 기능위주로 설명 하겠고, 몇번에 나눠서 자세히 포스팅을 할 예정이다.

구형 노트북에 리눅스를 설치한 포스팅을 예전에 올려 놨었는데, 너무 한번에 앞축하려다 보니 부족한 부분이 많이 보였다. 따라서 내 블로그에 현재까지 포스팅은 자세한 부분도 있고, 개략적으로 넘어가는 부분도 있었지만, 앞으로 포스팅은 가능하면 꼼꼼하게 천천히 할 생각이다.

 


이번 포스팅은 시작점은 한대의 컴퓨터가 있고 남는 컴퓨터에 리눅스가 깔려있다는 가정하에 시작하는 것이고, x윈도우 모드와 텍스트 모드중에 텍스트드로 진행할 예정이다. 텍스트 모드로 하는 이유는 나같이 구형의 컴퓨터에 리눅스를 설치하는 경우는 x윈도우 모드가 버거울 수가 있고, 텍스트모드에 익숙해지면 더 편리하고 많은 것들을 할 수 있기 때문이다. 앞으로 리눅스를 깊게 공부하려면 힘들다 생각하시말고, 천천히 익혀가자.

 

2014/01/24 - [네트워크] - 오래된 구형 노트북 활용해서 리눅스 웹 서버 만들어보자

 

 

 

리눅스의 간단한 사용법과, 텍스트 모드 설정법

부팅을 하자. 리눅스 설치시에 x윈도우를 설치하지 않았다면 텍스트모드로 부팅이되지만, 설치 했다면 x윈도우로 부팅이 될 거다. 설치시 설정한 루트사용자가 아닌 사용자와 비밀번호로 로그인한다.(루트사용자는 사용불가능) 기본설정 - 루트사용자로 x윈도우 로그인은 안된다.

로그인 했으면 인터넷이 잘 동작하는지 확인한 후(특수한 경우가 아니면 잘 동작됨), 프로그램->시스템도구->터미널을 실행한다.

터미널 창이 뜨면 설치시 설정한 루트사용자 계정과 패스워드를 다음과 같이 입력해준다.

 

[~~@localhost]$su 루트사용자계정 -p (엔터)

[~~@localhost]$암호 :패스워드

[루트사용자id@localhost]#gedit /etc/inittab

아래 그림처럼 파일이 열리면 그림에 보이는 부분을 3으로 설정해 준다.

3의 의미는 터미널 모드로 부팅한다는 의미다.

x윈도우 모드는 5번이다.

*참고:gedit는 x윈도우상에서 쓸수 있는 편집기다.텍스트모드에서는 vi 편집기를 사용해야한다.

 

inittab 설정gedit는 x윈도 환경에서만 사용할 수 있다. 텍스트 모드에선 vi 편집기를 사용해야한다.

재부팅을 하면 터미널 모드로 진입 되고 루트 사용자계정으로 로그인 한다.

로그인을 하면 다음과 같이 뜨게된다.

[root@localhost]#

여기까지가 터미널 모드로 설정하는 방법이고 다시 x윈도우로 가는 법은 위에 설정파일을 바꿔주고 재부팅하는법이나,

[root@localhost]# init 5

라 하면 재부팅하지않고 x윈도우를 사용할 수 있다. 터미널에서 다시 int 3을 치면 텍스트로간다.

 

무선랜환경은 고려하지않고 글의 주제와 맞지 않기때문에 유선랜환경으로 사용하자.

 

각자 집의 네트워크 환경은 다르기 때문에, 모든 상황을 다 설명할 수는 없고, 기본적으로 (인터넷회사)ISP에서 제공하는 공유기, 자신의 공유기 또는 ISP공유기 직접 컴퓨터 연결을 생각하겠다.

그리고 여기선 가장 흔한 공유기가 2대일 경우를 설명하겠다.

 

 대부분은 가정용 인터넷은 웹서버로 사용하는 포트80번이 막혀있기때문에 공유기에서 제공되는 포트포워딩을 해야한다. 사이트를 구축하기위해선 mysql 포트3306 도 필요하고, 외부에서 ssh로 접속을 원한다면포트22 또한 막혔기때문에, 이렇게 막힌 포트는 포트 포워딩을 통해서 해결하면 대부분 해결이 된다.

 

2012/12/01 - [네트워크] - [네트워크]로컬 네트워크의 의미

 

2012/11/16 - [윈도우즈 서버] - (Active Directory)컴퓨터 이름/도메인변경

 

2012/11/16 - [네트워크] - 도메인 작업그룹 홈그룹

 

 

포트포워딩을 하여 웹서버 기본적인 네트워크 환경 구성하기

포트 포워딩이란 어떤 서비스의 포트번호가 아닌 다른 포트번호로도 서비스를 사용할 수 있게 포트번호를 매칭시켜주는 것이라 생각하면 되겠다. 우리는 웹서버 80번을 포트 포워딩 할껀데 외부에서 이 서비스를 이용할 포트번호를 선택할때 시스템에서 예약된 포트번호 외에 안쓰는 포트번호로 해야한다. 무난하게 웹서비스 포트포워딩을 할때 흔히 사용되는 8080포트로 포워딩을 해보자.

 

2014/01/22 - [네트워크] - 공유기 기본적인 개념과 설정

 

2014/01/25 - [네트워크] - DMZ, 슈퍼 DMZ란? 공유기 포워딩 제대로 해보기

 

 

먼저 포트포워딩을 하기위해선 집에 연결된 공유기의 내부 IP값을 알아야하는다. 공유기 기준으로 내부 컴퓨터가 보는 IP값은 자신의 내부IP주소이자 동시에 내부컴퓨터의 게이트웨이 주소가 된다. 게이트웨이라는 말 그대로 외부와 내부를 연결하는 관문이란 뜻이다.

웹서버로 사용할 컴퓨터의 게이트웨이주소를 알아보기 위해선 웹서버에서 다음과 같이 쳐보자

[root@localhost]# ifconfig

이 명령어는 윈도우에 ipconfig와 같다.

 

 

 위와 같이 뜨는 화면에서 eth0 밑줄친 부분의 IP주소만 확인하자.

이 IP주소가 로컬상에서 컴퓨터의 주소인데 마지막 숫자를 1로 바꾸면 자신의 게이트웨이 주소가 된다.

여기서 게이트주소는 192.168.0.1 이다.

(공유기마다 설정화면이 다르기 때문에, 공유기 회사 홈페이지에서 정보를 얻자.)

이 주소로 접속을 하면 자신의 공유기 설정화면이 나온다.  이화면에 동적IP정보를 얻을 수 있는데

동적IP는 외부에서 지정해준 외부주소다. 우선은 이 외부주소(동적ip)를 적어두자.

 

 

관리도구에 들어가 고급설정 -> NAT/라우터 관리로 가면 포트포워드 설정이 있다.

 

 

공유기를 기준으로 내부 IP주소에는 현재 접속한 컴퓨터가 있을것이고, 웹서버로 사용할 컴퓨터도 있을 것이다.

위 사진에서

웹서버로 사용할 IP의 주소는 192.168.0.9

내부포트 80 은 웹서버의 서비스 포트번호

외부포트번호 8080은 외부에서 이 서비스를 찾으려 사용할 포트번호이다.

이렇게 설정해놓으면 나중에 http://IP주소:8080/ 으로 웹서비스를 이용할 수 있다.

설정은 자신의 IP주소에 맞게 설정 하도록한다.

 

설정을 마쳤으면 외부 공유기를 설정해야 한다. 인터넷 제공업체(ISP)에서 제공된 공유기에 접속을 하기위해선 아까 내부공유기 설정화면에서 기억해둔 동적IP주소를 확인한다. 이 동적IP주소는 외부공유기가 내부 공유기에게 설정해준 IP주소다. 위에서 게이트웨이를 찾는법과 같이 이 동적IP주소의 마지막 숫자를 1로 바꾸면 내부 공유기의 게이트웨이주소가 된다. 그럼 위에서 한 것과 똑같이 인터넷창에 내부공유기의 게이트웨이IP를 입력하여 외부공유기 설정페이지에 들어간다.

 

외부 IP주소위 회사는 기본 사용자 암호가 admin이다

 

여기서도 외부 IP주소를 잘 기억해둔다. 이 IP주소는 실제 IP주소이고 외부에서 접속 가능한 IP주소가된다.

이 IP주소는 대부분 가정용은 유동IP라 바뀔 수도 있기 때문에(거의 고정적), 나중에 접속에 문제가 될때 먼저 체크해준다.

암호는 인터넷 제공업체에 문의를하도록 하고 로그인을 한다.

고급설정->DMZ 서버->Super DMZ 사용에 체크를 하고 내부 공유기의 맥어드레스(하드웨어주소)를 입력한다.

 

 

내부 공유기 맥어드레스(하드웨어주소)는 내부공유기 설정페이지 접속하면 쉽게 찾을수 있다. 주의할 점은 공유기 내부 맥 어드레드 주소와 외부 맥 어드레스 주소가 있는데, 외부 맥어드레스주소를 사용해야한다는 것이다.(당연히 외부에서 바라보는 맥어드레스 주소여야한다) 맥주소를 확인한후 위에 검색버튼을 눌러 매칭되는 주소를 선택하면 정확하다.

확인후 공유기와 모뎀(외부케이블 연결된모뎀)등 끌수 있는 것은 다 끄고 다시 킨다.(중요)

 

여기까지 했으면 외부 공유기설정에 외부 IP주소가 내부 공유기의 외부IP주소로 둔갑되어 있어야 한다.

 

웹서비스를 가동시키기 위해 리눅스에 웹서비스 설정하기

[root@localhost]#yum info httpd

위 명령어를 치면 현재 웹서비스의 설치상태를 알려준다.

[root@localhost]#yum -y install httpd

위 명령어는 웹서비스를 설치해준다.

설치를 마쳤으면

[root@localhost]#service httpd start

[root@localhost]#chkconfig httpd on

을 해주면 웹서비스가 리눅스 부팅과 동시에 가동된다.

 

그럼 외부에서 접속을 해보자

http://자신의 공유기 외부IP주소:8080/

 

 

포스팅을 하고나니 주된 내용은 포트포워드 설정과 관련된 네트워크 설정이 되었다.

실제로 리눅스 명령어에 대한 설명은 크게 하지 않았는데, 경험상 이것들을 일일히 설명하는 것보단, 대략 이런 것이구나 알고 넘어가는 것이 좋다. 어짜피 자주 사용하다 보면, 체득된다.

사실 무료 호스팅을 사용하는 방법도 있지만, 이왕이면, 직접 설치해 보는 것도 나중에 사이트를 직접 운영하게 된다면 좋은 경험이 될 것이다.

아무튼 네트워크 설정 부분이 처음 설정하는 분들에겐 가장 문제가 많은 부분이다.

여기까지 성공했다면 50%는 끝났다고 생각해도된다.

다음엔 mysql, php의 설치와 설정을 하도록 해보겠다.

반응형