어드민 페이지에 이용하시면 될듯 합니다. 모든게 아파치가 알아서 해주니 참 편합니다.
해당디렉토리의 모든 파일에 다 적용됩니다.

먼저 해당 디렉토리의 아파치설정이 FileInfo AuthConfig 로 되어있는지 확인해야 됩니다.
안되어있으면 수정해줘야합니다. httpd.conf 파일에서 확인해보세요
# vi /usr/local/apache/conf/httpd.conf

쭉쭉~ 내려가다 보시면 350라인쯤에 요런게 있습니다.

..
..
AllowOverride None

위와같이 AllowOverride None이나 All로 되어있으면 안됩니다. 위의 라인을 다음과같이 수정합니다.

AllowOverride FileInfo AuthConfig


일단 .htaccess 파일을 맹급니다
인증을 걸고싶은 디렉토리에서 아래와 같이 파일을 작성하세요

AuthName "access only members" 
AuthType Basic 
AuthUserFile 디렉토리의절대경로/.htpasswd 
AuthGroupFile /dev/null 
ErrorDocument 401 
require valid-user

다음은 .htaccess 를 생성한 디렉토리에서 htpasswd를 실행해줍니다.

htpasswd -c .htpasswd 아이디 
New password: (사용할 패스워드 입력) 
Re-type new password: (사용할 패스워드 재입력) 
Adding password for user hostway 

사용자 추가 : htpasswd .htpasswd 추가아이디 
패스워드 변경 : htpasswd .htpasswd 아이디

'Server' 카테고리의 다른 글

실제예(passwd명령어)로 SetUID, SetGID 이해하기  (0) 2017.01.08
iptables  (0) 2017.01.08
CentOS/Apache SSL 설정  (0) 2017.01.06
FTP 정리 Active/Passive 그리고 TFTP  (0) 2017.01.06
윈도우 net user 커맨드  (0) 2017.01.06

-------------------------------------------------------------------------------
◎ Apache 웹서버 환경설정


현재 아파치가 설치되어 있는 곳의 conf라는 디렉토리를 보면 httpd.conf라는 파일이 있슴다.
일단 이 파일을 vi편집기로 열어놓세요 아파치웹서버의 환경설정은 이 파일안에서 다함다.
그럼 순서대로 나열하고 중요한부분은 해석하고 사용법을 알아보겠슴다.

ServerType -standalone : 요청이 들어오기전 항상 응답할 준비가 되어있음 (대부분 사용, 빠름)
-inet : 요청이 들어오면 응답 (속도 떨어짐) 장점 : 메모리 적게사용

PidFile /var/run/httpd.pid : 아파치웹서버 PS id 정보가 여기에 저장

ResourceCondig conf/srm.conf : #으로 주석처리

AccessConfig conf/access.conf : #으로 주석처리

Timeout 300 : 요청이 들어왔을 때 300초까지 응답해줌 변경시에는 숫자만 바꿔주면 됨다

KeepAliv On : 홈페이지 접속한 상태를 계속 유지하면서 빠른시간내에 메뉴를 클릭(15초 횟수:100번) 

MaxKeepAliveRequests 100

KeepAliveTimeout 15

MinSpareServers 6 : 첨 실행되는 PS 개수 10개 줄어드는거 최소 6개 가장많이 늘어나는거 64 (메모리땜시 설정)

MaxSpareServers 64

StartServers 10

MaxClients 150 // 클라이언트 접속할수 있는 수

MaxRequestsPerChild // 자식PS가 100번정도 요청을 받고 사용하고 다시 삭제(ps 오랫동안 존재하면 보안상 문제)

Listen 3000 // 일반사용자 사용가능

User nobody // 권한을 주지않음으로 시스템 보안 유지

Group nobody

ServerAdmin root@localhost // 웹서버 문제가 생겼을 때 정보를 받을수 있는 멜주소 

ServerName new.host.name // DNS에 등록되어있는 호스트명 /etc/host 에 등록된 호스트명
IP Address 입력해도 됨

DocumentRoot // 홈페이지 내용 저장 디렉토리

UserDir public_html // 유저 디렉토리

DirectoryIndex // 시작페이지 파일이름 지정(순서대로)

AccessFileName .htaccess // 웹상에서 인증화면 뜸.. 

ThpesConfig /etc/mime.types // 아파치에서 적용하는 확장자 정의(ex 쇽웨이브정의)

HostNameLookups off // on 으로 되어있으면 클라이언트의 네임서버까지 추적(시간이 오래걸림)

ErrorLog // 아파치 에러메세지 디렉토리

LogLevel warn // warn(중간)뿐만아니라 debug notice 등등 있음 (로그메세지의 양)

ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/" //별칭정의

AddType application/x-httpd-php3 .php3 // 확장자 추가

AddHandler cgi-script .cgi // cgi 사용시 이부분의 주석을 풀어주어야 함

AddType text/html .shtml

AddType text/html .htm

버추얼호스트 설정방법(중요)

하나의 서버에 여러게 도메인 사용이 가능하다

NameVirtualHost 202.31.150.148 // 아파치웹서버에 아이피 어드레스


ServerAdmin webmaster@abc.co.kr //문제발생시 받을수 있는 주소
DocumentRoot /home/abc // 밑의 서버네임 홈페이지가 존재하는 위치
ServerName www.abc.co.kr
ErrorLog logs/abc.co.kr-error_log // 위 도메인에 문제가 생겼을 경우 저장되는 경위 (보통 안만듬) 
/var/log 에 있음
CustomLog logs/abc.co.kr-access_log common // 이것도 보통 안만듬


사용예.. (300~400개 정도 사용가능함)

NameVirtualHost 211.171.255.78



..





..



◎ 아파치 환경설정 두 번째..

//루트 디렉토리 이하의 디렉토리 환경설정 ex) 

Options All : MultiView를 제외한 모든부분 허가
ExecCGI : cgi 허가
FollowSymLinks : 심볼링크로 설정된 파일에 대해 원본을 찾아서 제공
Includes : server side include 서버가 이전하면 홈페이지의 주소를 변경하여야함 그러나 주소가 
입력된 파일하나만 수정해서 바꾸지 않아도 됨
IncludesNOEXEC : ssi를 지원하면서 cgi만 거부(보안상)
Indexes : 디렉토리 보여줌
None : 모든 옵션 불허
MultiViews : 홈페이지안에 영국어 한국어 중국어 세계의 언어가 있으면 특정 옵션을 사용하여 
나라마다 언어를 자동으로 제공, 이미지 이름이 동일한 경우 선택적으로 보여줌
SymLinksIfOwnerMatch : 심볼링크로 설정된 파일에 대해서 원본과 링크파일의 소유자가 
동일한 경우 원본만 보여줌

AllowOverride All : 모든 것을 허가
AuthConfig : 사용자 인증과 관련된 명령을 디렉토리 단위로 사용가능케 함 
FileInfo : 파일정보 표시 가능
Limit : 사용자의 접근을 제한할수 있음 아이피나 도메인을 이용해서..
None : 접근제한기능을 사용하지 않음
Options : 접근제한설정을 사용가능하게 지시


간단히 예를 들자면...

Options ExecCGI Indexes 
AllowOverride None

이렇게 하면 /home이라는 디렉토리에 CGI를 적용하고 웹상에서 index파일이 없을 때 해당디렉토리의 
파일이나 디렉토리를 보여주고 접근제한기능을 사용하지 않는다는 뜻이죠..

SSI (SERVER SIDE INCLUDE)를 설정해보자

ssi를 설치하면 웹상에서 텔넷명령을 실행할 수 있다. ex) 
- 단점 : 아파치 웹서버에 부담을 줄수 있다


Options All ExecCGIInclude IncludesNOEXEC Indexes


SSI를 설정하고나서 문서를 작성할 때 
// 파일의 수정일 표기
// 파일의 크기 표기
// food 파일내용을 삽입

이제 SSI 서비스를 받아보자

(SSI : 웹상에서 어떤 일을 첨부할수 있고 웹상에서 텔넷명령 실행가능)


최종수정일: 
파일의크기: 







ssi를 서비스하면 웹상에서 위와같은 서비스를 받을수 있다
그렇나 아파치 웹서버에 부담을 준당..

인증서비스(htaccess) 
다음은 home 디렉토리에 인증서비스를 하는 요령이다.


Options Includes ExecCGI // cgi 사용가능
AllowOverride ALL //.htaccess를 사용가능케 함


이제 public_html 밑에 인증서비스를 한다

.htaccess라는 파일 생성
Options All 
AuthType "Basic" // 인증방식을 베이직으로
AuthName "Administrator" // 인증화면 사용주체
AuthUserFile /home/wawacampus/public_html/.htpasswd //계정하과 비번이 있는 파일


require valid-user // AuthUserfile에 있는 사용자만 접근가능
allow from IP주소 (그사람은 허용함)
deny from all (모든 사람은 거부하고 특정한 IP주소만 허용)


.htpasswd 파일 생성방법

#> htpasswd -c .htpasswd person

두 번째부터는 -c 옵션은 사용하지 않음


혹시 틀린부분이 있다거나 하시면 아낌없는 질타를 바랍니다. - Leopit

'Server' 카테고리의 다른 글

쉘다루기/쉘의 종류  (0) 2017.01.06
DISK Quota 설정하기  (0) 2017.01.06
/etc/alias 사용법  (0) 2017.01.06
FTP Command  (0) 2017.01.06
sendmail.cf  (0) 2017.01.06

+ Recent posts