웹 프로그램 설치 기본기(4) - 권한 이해하기

매뉴얼

이 부분은 조금 "어렵다"고 할 수 있는 부분이라 오바지랄좀 하겠삼 -_-

제로보드 설치해 보신분~ 이런 거 보신적 있죠? 당최 무슨 말인거냐 orz
PHP4, MySQL DB Server, 707, 701, 다시 707, 텔넷, FTP 퍼미션 ...
GG. 그래 나에겐 이세계가 어울리지 않아. 이딴거 필요없어! 휘릭~

하여간 뭐든지 새로운 걸 해보려고 하면, 그래서 익숙한 패턴을 조금만 벗어나면 엄청나게 덮쳐오는 낯섬의 홍수들. 그래서 리눅스가 좋은 건 아는데 윈도우 계속 쓰게되고, 불여우 좋다던데 그냥 익스플로러 쓰는거 아니겠삼? 게다가 귀차니즘이 드디어 당당한 대세로 인정받은 다음에야...

자, 저 숫자들이 뭔지 봅시다.
7은 4+2+1 입니다. 4는 읽기, 2는 쓰기, 1은 실행 권한을 말합니다.
707 세자리에서 앞자리는 파일 주인, 가운데는 공유하는 그룹, 끝자리는 나머지 모든 사람입니다.
즉 707 권한이란, "이 파일에 대해, 소유자는 뭐든지 할 수 있고, 공유 그룹은 아무것도 할 수 없고, 나머지 모든 사람들도 뭐든지 할 수 있다" 는 의미입니다.
자, 일단 어려운 설명은 뒤에 하고 어떻게 해야되는지 봅시다.

FileZilla 프로그램에서 오른쪽 "원격" 파일 목록에서 권한을 변경할 디렉토리를 선택합니다. 그리고 마우스 오른쪽 클릭-> "파일 속성"을 선택합니다.

자, 이케 떴다면 707로 바꾸랬으니 어케 해야되는지 감이 오시죠. 이 프로그램처럼 숫자값을 입력할 수 있다면 거기다가 707이라고 입력한 후 "확인", 혹 그렇지 않다면, 가운데 줄 그룹권한 - 읽기, 쓰기, 실행은 다 체크 해제, 윗줄과 아랫줄은 모두 체크한 후 "확인"하면 되겠습니다.

웹 프로그램을 설치하는데 왜 이케 해야되나요? 이 앞편에서 말했듯, 서버에서 실행되는 프로그램도 자기가 주체로서 이름과 허가권을 갖습니다. 웹 서버에는 웹 브라우저로 그 주소를 쳤을때(http://sample.or.kr/bbs/zboard.php) 해당하는 문서를 찾아 돌려주게끔 계속 돌아가고 있는 프로그램이 있습니다. 그걸 "웹 서버 프로그램"이라고 합니다. (계속 돌아간다고 해서 "데몬"이라고 말하기도 합니다)

그 프로그램도 /home/h2dj/public_html 에 있는 파일들을 가져다 주기 위해 일단 그 디렉토리로 와야겠죠. 그럼 문지기가 딱! 막아서 "누구냐?" 그럽니다. 그럼 그 프로그램은 "나는 웹 서버다!" 합니다. 문지기가 보니 파일 주인은 아니고, 친구들도 아닙니다. "어딜 가냐?" "/home/h2dj/public_html/bbs" 로 간다. 문지기가 파일 목록을 보니 /home/h2dj/public_html/bbs 의 권한이 707입니다. "음... 너는 쥔장은 아니고, 친구들(공유 그룹)은 아닌 "나머지 모든 사람"이군. 너는 7 = 4+2+1이니 뭐든지 할 수 있구나. 통과!" 이케 되는 겁니다.

그럼 왜 "7"로 하라고 하냐? 보통 웹 브라우저로 내용을 보기만 하고 가면 파일에 대한 읽는 권한(4)과 그 디렉토리로 들어가는 권한(1: 디렉토리의 "실행"은 거기로 들어감을 말합니다)만 있으면 됩니다. 보통 파일을 생성하면 755로 많이 만들어집니다. 다른 사람이 맘대로 파일 내용을 고치거나 지워서는 안되니까요. 근데 웹 프로그램의 경우 필요에 따라 파일을 만들어야 되는데 "디렉토리에 쓰는" 권한이 필요하게 됩니다. 디렉토리란 말 그대로 "파일의 목록"을 갖고 있는 파일이거던요. 거기다 만들 파일 이름을 올려야 나중에 쓸 수 가 있겠죠.

자, 여기서 더 설명하면 다음 편을 안 볼 것 같으니 마칩니다 :)
파일 목록을 보여주는 명령을 실행한 결과입니다. 이렇게 철저한 보안체계가 있어 유닉스-리눅스가 윈도우보다 서버로 좋다는거~
진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크
2006/08/17 13:41 2006/08/17 13:41
Trackback Address :: http://blog.jinbo.net/h2dj/trackback/152
pyosoon 2009/08/15 12:06 URL EDIT REPLY
궁금한 점이 있습니다. 제로보드 설치 이후에도 707을 유지해도 괜찮은가요? 보안상 문제가 있다고 친구에게 들었습니다. 혹시 여기에 대해서 아시면 알려주시면 감사하겠습니다. ^^
지각생 | 2009/08/16 01:34 URL EDIT
흠, 아마 제로보드 디렉토리는 설치 후에는 뒤의 7을 5로 바꿔도 될겁니다. 그 아래에 있는 data 디렉토리는 그대로 두시고요. 근데 보안을 염려하신다면 제로보드4 보다는 XE 를 쓰시는게 더 나으실 것 같네요 :)
Name
Password
Homepage
Secret

웹 프로그램 설치 기본기(3) - 웹 서버 살짝 이해하기

매뉴얼
웹 프로그램 설치 기본기, 세번째. 우리의 홈페이지와 웹 프로그램을 돌려주는 웹 서버를 살짜기 이해하고 갑시다.
이 부분이 젤 재미 없을 지 모르니 하고 싶은 얘기는 산과 같으나 지금 단계에서 필요한 것만 얘기를 하겠삼.

1. DocumentRoot 란?
직접 서버를 설치, 운영하는 것이 아니면 대개 호스팅 서비스 제공하는 곳에 자기 계정 하나를 만들어 쓰게 됩니다. 그 호스팅 서비스 제공하는 곳을 http://sample.or.kr 로 하고 계정을 h2dj라고 하죠.
 그 서버에 FTP 로 접속하면 뭔가 떴죠? 아마 /home/h2dj/ 쯤 됐을 겁니다.
그 아래에 다른 디렉토리를 만들 수도 있고, 파일을 만들 수도 있고, 하여간 제한된 용량 안에서 이것 저것 둘 수가 있는데요, 그중에 "홈페이지" 파일들을 이곳에 두기로 약속을 한 디렉토리가 있습니다. (없으면 만드삼. 못 만들면 관리자에게 만들어달라하삼)
 그게 보통 public_html 이거나 http 입니다. 이 전편에서 요 두개 디렉토리 언급한거 기억하시죠?
 곧, FTP 로 접속했을때 /home/h2dj/public_html , 혹은 /home/h2dj/http 라는 디렉토리에 있는 파일들만이 웹 브라우저를 통해 접근할 수 있다. 이런 거죠. 그냥 /home/h2dj/ 아래 README.please  라는 파일을 올리면 정상적인 방법으론 웹 브라우저에서 접근할 수 없습니다.

2. 내 프로그램이 위치할 곳은?
 이 전 단계에서 FTP로 접속한 후, /home/h2dj/public_html 로 원격 디렉토리를 바꾸고, 내 PC에 압축 풀어놓은 디렉토리를 끌어 놓아 업로드를 했죠? 압축 풀고 이름을 "wiki"로 바꿨다고 하면, 업로드가 다 끝난 후 /home/h2dj/public_html/wiki 가 생겼을 겁니다.
자, 그럼 그곳은 어떻게 웹 브라우저로 접근할까요? 위에서 /home/h2dj/public_html ㅗ부분을 도메인 주소 http://sample.or.kr 로 바꿔줍니다. DocumentRoot 부분을 도메인 주소로 바꿔준다는 겁니다. 결국 http://sample.or.kr/wiki 가 이제 업로드된 웹 프로그램의 경로가 되는 거죠.

3. 인덱스 파일?
 웹은 처음에 연구 결과 공유를 목적으로 했습니다. 그래서 모든 문서는 말 그대로의 "문서"였죠. 그래서 웹 서버는 홈페이지 접근 요청을 받으면 그 주소(/home/h2dj/public_html)로 가서 항상 "인덱스 파일"이란걸 찾습니다. 이 파일의 실제 이름은 (관리자가 설정하기 따라서 다양할 수 있는데)  index.html, index.htm, index.php, main.php 등이 보통입니다. 그래서 홈페이지 서버에 계정을 얻고 나서 관리자가 정한 이름의 인덱스 파일을 올리지(만들지) 않는다면,

이런 메시지를 보게 될 겁니다. 결국 http://sample.or.kr 을 주소창에 쳤을때 웹 서버는 "http://sample.or.kr/index.php" 에 해당하는 파일을 가져다가 당신에게 얹어준다는 뜻입니다. (index.html 일수도 있고, 위에서 말한대로) 자, 인덱스 파일이 없으면 그 곳은 웹브라우저로 접근할 수 없습니다

4. 누구냐? 넌
 아마 거의 안쓰겠지만 요즘은 윈도우도 "여러 사용자" 시스템이죠. 계정을 여러개 만들어 각자 나눠진 만큼 쓰는거. 윈도우는 있으나 마나지만 서버의 경우는 대개 이게 엄격히 구분됩니다. 각 사용자는 자신에게 할당된 자원만 사용할 수 있고, 그걸 넘어서 서버 전체에 접근하고 고치고, 영향력을 행사할 수 없습니다.
 엄청 할 얘기 많지만 이것만 기억하세요. 나중에 또 나옵니다. 서버에 있는 모든 것은 각자 "주체"가 있다는 거, 모든 파일/디렉토리는 소유자, 소유 그룹이 있고, 프로그램도 각자 어떤 이름을 갖고 권한과 책임아래서 주체로서 동작한다고.
진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크
2006/08/17 12:43 2006/08/17 12:43
Trackback Address :: http://blog.jinbo.net/h2dj/trackback/151
Name
Password
Homepage
Secret

웹 프로그램 설치 기본기(2) - FTP 사용하기

매뉴얼
1. FTP?
  FTP는 하나의 통신 방식인데, 파일 전송을 위해 만든것입니다. 그래서 효율이 좋습니다. 웹 프로그램은 자신의 PC가 아니라 웹 서버에 있어야 되는데 웹 서버는 대개 (아주)멀리 떨어져 있죠. 그러니 그곳으로 파일들을 보내기 위해 FTP를 사용합니다.
(참고로 웹이 사용하는 통신방식은 HTTP라고 합니다. 둘이 다르다는 거~)

2. 어떻게?
 당근 FTP 프로그램이 있습니다. 많이 쓰시는 알집, 알씨를 만든 알툴즈에서 내놓은 "알FTP"라는 프로그램이 있고, 이거 쓰셔도 좋습니다. 근데 불여우에서 알툴즈 홈페이지 가니 다운로드가 안되는군요. 웹표준을 지키지 않다니! 그래서 다른 거 추천합니다. FileZilla 라고 하는 프로그램이죠. 이 전 단계에서 FileZilla 찾는 거 살짝 예시했죠? http://filezilla.sf.net 으로 가셔서 다운받고, 설치를 해 주세요.

3. 프로그램 설치
이 부분은 하기 싫어 넘어갑니다. FileZilla 의 경우 알FTP보다 몇개 더 물어보는게 있는데 그냥 다 기본값으로 두고 진행하면 됩니다.

4. 프로그램 사용
 

이케 됩니다. 좀 지저분&복잡해보이죠. 서버의 말과 진행과정은 안 보게 할 수 있습니다. 적당히 간격 조절해서 이쁘게 해서 보시고, 자 딱 세 개만 입력하면 기본적으로 될 거 다 됩니다.
FTP 주소 : 홈페이지 주소 (http://~~)
사용자ID : 웹 서버 계정입니다. 게시판 아이디, 홈페이지 로그인 아이디 그런 거 아닙니다. 직접 호스팅 신청을 했으면 그때 정한 거고, 다른 사람이 한 거면 알려달라고 하세요
비밀번호 : 위 ID에 맞는 비밀번호

나머진 그냥 두고 "엔터"치거나 "접속" 이런 비스무리한 버튼을 눌러주면 접속이 됩니다. 그럼 비어있던 "원격"부분에 파일 목록이 뜨게 됩니다.

5. 파일 전송
왼쪽 "내컴" 부분에서 전에 다운 받아 압축까지 풀어놓은 웹 서버 프로그램을 찾습니다.
그걸 클릭한채로 끌어서 오른쪽 "원격"부분에 와서 놓아주세요. 그럼 알아서 디렉토리와 파일들을 주루룩 업로드하기 시작합니다.

(여기서 잠깐 앞으로 갔다 왔으면 좋겠는데, 서버에 접속한 후 기본 디렉토리말고 public_html 이나 http 등의 디렉토리가 있으면 그곳으로 이동한 후 ("원격"에서) 파일을 올려주세요. Document Root 라고 하는 위치인데, 이건 관리자나 처음 호스팅 신청한 사람에게 물어보면 됩니다. 여기다가 안 올리면 나중에 관리자를 수고롭게 하거나 SSH 라는 방식으로 연결해서 직접 옮겨야 합니다. 그러니 천천히 정확히 ^^)
그림이 좀 지저분해 보이겠네요. 걍 보삼 -_-

6. success?
전송 중 에러가 안 났으면 이제 웹 프로그램이 웹 서버에 위치한 겁니다. 이제 웹 프로그램 설치로 들어갈 건데요, 그전에 필요한 개념 몇가지 알고 갑시다.

- 계속 -
진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크
2006/08/17 12:03 2006/08/17 12:03
Trackback Address :: http://blog.jinbo.net/h2dj/trackback/150
Name
Password
Homepage
Secret