(앞에 ' -' 그런 다음 웹 사이트 목록 기능을 끄십시오. 그렇지 않으면 기능이 꺼집니다. SymLinksifOwnerMatch;AllowOverride --.htaccess 파일에 있는 제어 지시문입니다. All, None(.htaccess에서 구성을 볼 수 없음) 또는 다음 지시문의 조합일 수 있습니다: Options; AuthConfig Limit
Order, Allow, Deny --서비스를 받을 수 있는 사람 제어 . oreder의 매개변수는 최종적으로 오른쪽 매개변수를 기준으로 하며, 순서가 바뀔 수 있습니다
-------------------------- ------- ----------------- ------- ----------
<디렉터리 "/www/images">
<파일 ~ ".jpg$"> - -지정된 파일 의 경우 는 특정 디렉터리에 있거나 전역적으로
주문 거부, 허용
모든 항목에서 허용
디렉토리>
----------------------------------------------- --- ---------------------------------- --- ------
-- 서버 상태(또는 정보)를 보려면 "http://servername/server-status" URL을 사용하도록 허용합니다. 위치는 주로 제어 URL입니다
SetHandler server-status(server-info)
주문 거부, 허용
모두 허용
------ ---- --------------------------------- ---- --------------------------------- ----
Alias / url-path /filesystem-path --URL을 파일 시스템 경로에 매핑합니다(시스템에서 ln -s 소프트 링크를 사용하여 이를 달성할 수도 있음)
<디렉토리 "/filesystem-path">
3. 디렉토리 액세스를 위한 사용자 비밀번호 제어(비시스템 사용자)
<디렉토리 "/var/www/html" > --이론은 위치, 파일에서도 사용할 수 있습니다
옵션 색인 FollowSymLinks
AllowOverride None
주문 허용, 거부
모두 허용
authname "본인 인증" --브라우저에서 URL을 열라는 메시지를 표시합니다.
authtype basic
authuserfile /etc/httpd/userpasswd --사용자 및 비밀번호 파일 위치
유효 사용자 필요
# htpasswd -c /etc/httpd/userpasswd Frank -- 액세스를 허용하는 사용자 만들기
# htpasswd /etc/httpd/userpasswd george - - 다른 하나를 생성하고, 비밀번호 파일을 생성하기 위한 '-c' 매개변수를 기억하세요. 이는 첫 번째 사용자를 생성할 때만 사용할 수 있습니다.
참고: 디렉토리가 비밀번호 제어 액세스를 사용하는 경우 웹 브라우저를 통해 상위 디렉토리가 나열될 때 디렉토리가 표시되지 않습니다. 즉, 숨겨집니다. 하지만 URL을 직접 입력하면 접속할 수 있습니다(계정과 비밀번호가 있어도).
4. 도메인 이름 기반 가상 호스트
NameVirtualHost *:80 -- 포트 80을 가상 호스트 포트로 설정하려면 이 구성을 추가하세요.
ServerName www.george.com
DocumentRoot /var/www/html/
.......... ... .
--두 번째 가상 호스트
ServerName mail.george.com
DocumentRoot /var/ www/cgi- bin/openwebmail/
ScriptAlias /mail /var/www/cgi-bin/openwebmail/openwebmail.pl
<위치 />
.......... .. .......
위치>
이 실험의 SeverName 매개변수를 IP 주소에 연결하면 IP 기반의 가상 호스트도 만들 수 있습니다
5. 로그 매개변수
ErrorLoglogs/error_log --오류 저장 위치 log
LogLevel 경고 --오류 로그 수준을 정의합니다. 다음을 포함합니다: 디버그, 정보, 알림, 경고, 오류, 비판, 경고, emerg.
LogFormat "%h %l %u %t "%r" %>s %b " %{Referer}i" "%{User-Agent}i"" 결합
.....
LogFormat "%{User-agent}i" Agent --the four 액세스 로그
의 기본 형식입니다.CustomLog 로그/access_log 결합 --결합된 액세스 로그 형식 사용
%h – 클라이언트의 IP 주소 또는 호스트 이름
%l –The 이것은 RFC에서 판단한 것입니다. 클라이언트 식별 1413 ID에 따라 출력의 "-" 기호는 여기에 있는 정보가 유효하지 않음을 나타냅니다.
%u – HTTP 인증 시스템을 통해 얻은 웹페이지에 액세스한 클라이언트의 이름입니다. 인증이 있는 경우에만 유효합니다. 출력에 "-" 기호는 여기에 있는 정보가 유효하지 않음을 나타냅니다.
%t – 서버가 요청 처리를 완료한 시간입니다.
"%r" – 따옴표는 고객이 보낸 요청 내용으로 유용한 정보가 많이 포함되어 있습니다.
%>s - 서버가 클라이언트에 반환하는 상태 코드입니다.
%b – 마지막 항목은 응답 헤더를 제외하고 클라이언트에 반환된 바이트 수입니다.
"%{Referer}i" – 이 항목은 요청이 제출된 웹 페이지를 지정합니다.
"%{User-Agent}i" - 고객의 브라우저에서 제공하는 브라우저 식별정보입니다.
6. SSL 암호화 구성
# yum install -y mod_ssl --암호화 모듈 설치
# vim /etc/httpd/conf.d/ssl.conf
ErrorLog LOGS/SSL_ERROR_LOG
TRANSFERLLOG LOGS/SSL_ACCESS_LOG
LOGLEVEL WarNGINGINGINGINGINGINGINGINGINGICOCOCOL 모두 -sslv2
SSLCIPHERTE 기본값:!
SSLCertificateFile /etc/pki/tls/certs/localhost.crt --구성 공개 키 파일
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key --구성 비밀 키 파일
<파일 ~ ".(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
ServerName www.george.com
DocumentRoot /var/www/cgi-bin/openwebmail /
ScriptAlias /mail /var/www/cgi-bin/openwebmail/openwebmail.pl
<위치 />
SSLOptions +StdEnvVars
옵션 인덱스
주문 거부, 허용
모두 허용
SetEnvIf User-Agent ".*MSIE.*"
nokeepalive ssl-unclean-shutdown
downgrade-1.0 force-response-1.0
CustomLog 로그/ssl_request_log
"%t % h % {SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"
6.1. 인증서를 직접 구성하세요
# mkdir /etc/pki/test/
# cd /etc/ pki/test
# openssl genrsa -out /etc/pki/test/test.key 1024 --Secret key
# openssl req -new -key test.key -out test.csr
국가 이름( 2 문자 코드 ) [XX]:cn
시/도 이름(전체 이름) []:guangDong
지역 이름(예: 도시) [기본 도시]:Shenzhen
조직 이름(예: , 회사) [기본 회사 Ltd]:IT
조직 단위 이름(예: 섹션) []:maintenance
일반 이름(예: 이름 또는 서버의 호스트 이름) []:www.george.com
이메일 주소 []:root@mail .george.com
인증서 요청과 함께 보내려면
다음 '추가' 속성을 입력하세요
챌린지 비밀번호 []:123456
선택적 회사 이름 []:Azt
# openssl req -x509 -days 365 -key test.key -in test.csr -out test.crt --Public key
# ls --그런 다음 다음 test.crt && test.key를 /etc/httpd/conf에 구성합니다. .d/ssl.conf는
test.crt test.csr test.key
6.2일 수 있습니다. 구성한 인증서를 테스트하세요
그러나 우리가 직접 만든 인증서는 브라우저에서 인식될 때 신뢰할 수 없습니다. 상태도 "CA 루트 인증서가 "신뢰할 수 있는 루트 인증 기관" 저장소에 없기 때문에 신뢰할 수 없습니다."
브라우저(test.crt)에서 직접 생성한 인증서를 수동으로 추가해야 합니다. "신뢰할 수 있는 루트 인증 기관" && "신뢰할 수 있는 게시자". Google Chrome을 열로 사용하면 단계는 다음과 같습니다.
그러면 "다음" - "마침" - "예"를 클릭하는 대화 상자가 몇 개 더 나타납니다. 괜찮습니다.
이때 브라우저를 이용하여 당사 홈페이지를 열어 "인증서에 문제가 없습니다"라는 인증서 상태를 확인하시기 바랍니다.