반응형

아파치 설치


1.Apache 24 설치 

OS환경과 bit에 맞는걸로 설치하시면 됩니다.

https://www.apachelounge.com/download/



2.C++ Redistributable Visual Studio 2015 설치

아파치에서 C++ Redistributable Visual Studio 2015 설치가 없으면 VCRUNTIME140.dll 에러가 날수도 있어서 필요하다고 합니다.

비트에 맞게 설치해주세요.

https://www.microsoft.com/ko-kr/download/details.aspx?id=53840


3. 다운로드한 Apache24 폴더만 원하는 곳(D:Apache24)에 풀어줍니다.


4. D:Apache24\conf 폴더에 httpd.conf 파일 수정

  - ServerRoot 경로 변경

   ServerRoot "c:/Apache24" 로 기본설정되있는데 3번에서 설정해준 경로로 맞춰줍니다.


  - 포트 변경

    Listen 80 으로 기본설정되있는데 포트가 겹치거나 바꾸고싶다면 

    Listen 원하는port로 변경해줍니다.


  - 웹문서 저장위치 변경

    c:/Apache24/로 되있는거를 내환경에 맞게 변경해줍니다. (D:/Apache24/) 


  - ServerName 변경

    #ServerName www.example.com:80 을 찾아서 #을 제거하고 (#은 주석을 의미합니다.)

    ServerName localhost:80 (포트가 다르다면 해당포트를 입력해주세요.)


5.내 컴퓨터에 환경변수에서 Path 등록

환경변수에가서 D:\Apache24\bin 을 등록해줍니다.


6. cmd 관리자권한으로 실행


설치

httpd -k install -n testPhp

시작

httpd -k start -n testPhp

제거

httpd.exe -k uninstall -n testPhp


7. it work! 가뜨면 성공한 겁니다.





php설치


1.php zip파일 다운


2.php.ini 환경설정파일 수정


; extension_dir = "./" 이렇게 되있는부분을 (php는 ;가 주석을 의미합니다.)

extension_dir = "D:\PHP\ext\"


경로에 맞춰 수정하고 저장합니다.


3. Apache24와 php연동

아파치 Apache24/conf 폴더의 httpd.conf를 수정해야합니다.


<IfModule dir_module>

    DirectoryIndex index.php index.html

</IfModule>


위에부분에 index.php를 추가한것입니다.


그리고 맨아래부분에


<IfModule ssl_module>

SSLRandomSeed startup builtin

SSLRandomSeed connect builtin

</IfModule>


PHPIniDir "C:/Windows"

LoadModule php7_module "D:/PHP/php7apache2_4.dll"

AddType application/x-httpd-php .html .php


를 추가해줍니다.

아래부분의 경로부분은 맞춰줍니다.

PHPIniDir 경우는 php.ini 파일의 위치를 적어주면 됩니다.


4. apache24\htdocs 폴더로 접속해서 메모장으로 phpinfo.php를 생성


안에

<?php

phpinfo();

?>

를 입력해줍니다. ( phpinfo() 함수는 php정보를 출력해줍니다. )


5. 웹브라우저 주소창에 http://localhost/phpinfo.php 입력


php 7.0의 정보가나오면 성공!


mysql 연동


1.설치 후 폴더확인

저같은 경우는

D:\Program Files\MySQL\MySQL Server 5.6

이폴더에 가시면 my.ini가 있습니다.


2.my.ini수정

# basedir = ....

# datadir = ....

# port = ....

이부분에서 #(주석처리)를 지워주고 아래처럼 경로를 입력해줍니다. (\말고 /입력)


basedir = D:/Program Files/MySQL/MySQL Server 5.6

datadir = D:/Program Files/MySQL/MySQL Server 5.6/data

port = 3306

으로 수정해줍니다.


3.php.ini에서 아래 주석을 풀어줍니다. (;가 주석)

extension=php_mysqli.dll

extension=php_pdo_mysql.dll


4.mysqltest.php 생성


<?php

echo "MySql 연결 테스트<br>";

$db = mysqli_connect("localhost", "root", "비밀번호", "db명");

if($db){echo "연결되었습니다.<br>";}

else{echo "연결에 실패하셨습니다.<br>";}

$result = mysqli_query($db, 'SELECT VERSION() as VERSION');

$data = mysqli_fetch_assoc($result);

echo $data['VERSION'];

?>


작성후 확인하시면 됩니다. 성공하면 성공이라고 뜹니다!

반응형
반응형

1.node.js설치

https://nodejs.org/en/ 에서 다운로드 받을수 있습니다.


2.버전확인

node --version 


3.원하는 폴더생성


4.$npm init

(처음 이름만 써주고 다 기본값설정 엔터누르면됨)

package.json파일 생성

프로젝트 정보기록파일 (npm으로 프로젝트 관리하기위해 사용)


5.js파일 생성


nodejs.org 에 예제샘플이 있습니다.


소스

const http = require('http');


const hostname = '127.0.0.1';

const port = 3000;


const server = http.createServer((req, res) => {

  res.statusCode = 200;

  res.setHeader('Content-Type', 'text/plain');

  res.end('Hello World\n');

});


server.listen(port, hostname, () => {

  console.log(`Server running at http://${hostname}:${port}/`);

});



위와같은 소스를 새로만들어서 example.js로 저장


6. npm으로 start 스크립트생성 (실행하기편하게)

package.json파일을 에디터로 열어서

"scripts": {

} 안쪽에

"start": "node example.js"

를 적어줍니다. 안에뭐가있다면 ,로 구분해주세요.


7.서버시작


npm start 누르면 서버가 시작됩니다.


8.브라우저로 확인

127.0.0.1:3000 번으로 가면 확인할수 있습니다.



반응형
반응형


1. pom.xml dependency 추가

<dependency> 

<groupId>com.navercorp.lucy</groupId>

<artifactId>lucy-xss-servlet</artifactId> 

<version>2.0.0</version> 

</dependency>


2. web.xml 설정

<filter> 

<filter-name>xssEscapeServletFilter</filter-name> 

<filter-class>com.navercorp.lucy.security.xss.servletfilter.XssEscapeServletFilter</filter-class> 

</filter> 


<filter-mapping> 

<filter-name>xssEscapeServletFilter</filter-name> 

<url-pattern>/*</url-pattern> 

</filter-mapping>


3. /resource 폴더 내에 "lucy-xss-servlet-filter-rule.xml" 파일을 생성


lucy-xss-servlet-filter-rule.xml


<?xml version="1.0" encoding="UTF-8"?>

<config xmlns="http://www.navercorp.com/lucy-xss-servlet">

   <defenders>

       <!-- XssPreventer 등록 -->

       <defender>

           <name>xssPreventerDefender</name>

           <class>com.navercorp.lucy.security.xss.servletfilter.defender.XssPreventerDefender</class>

       </defender>


       <!-- XssSaxFilter 등록 -->

       <defender>

           <name>xssSaxFilterDefender</name>

           <class>com.navercorp.lucy.security.xss.servletfilter.defender.XssSaxFilterDefender</class>

           <init-param>

               <param-value>lucy-xss-sax.xml</param-value>   <!-- lucy-xss-filter의 sax용 설정파일 -->

               <param-value>false</param-value>        <!-- 필터링된 코멘트를 남길지 여부, 성능 효율상 false 추천 -->

           </init-param>

       </defender>


       <!-- XssFilter 등록 -->

       <defender>

           <name>xssFilterDefender</name>

           <class>com.navercorp.lucy.security.xss.servletfilter.defender.XssFilterDefender</class>

           <init-param>

               <param-value>lucy-xss.xml</param-value>    <!-- lucy-xss-filter의 dom용 설정파일 -->

               <param-value>false</param-value>         <!-- 필터링된 코멘트를 남길지 여부, 성능 효율상 false 추천 -->

           </init-param>

       </defender>

   </defenders>


    <!-- default defender 선언, 별다른 defender 선언이 없으면 default defender를 사용해 필터링 한다. -->

    <default>

        <defender>xssPreventerDefender</defender>

    </default>


    <!-- global 필터링 룰 선언 -->

    <global>

        <!-- 모든 url에서 들어오는 globalParameter 파라메터는 필터링 되지 않으며 

                또한 globalPrefixParameter로 시작하는 파라메터도 필터링 되지 않는다. -->

        <params>

            <param name="globalParameter" useDefender="false" />

            <param name="globalPrefixParameter" usePrefix="true" useDefender="false" />

        </params>

    </global>


    <!-- url 별 필터링 룰 선언 -->

    <url-rule-set>

       

       <!-- url disable이 true이면 지정한 url 내의 모든 파라메터는 필터링 되지 않는다. -->

       <url-rule>

           <url disable="true">/disableUrl1.do</url>

       </url-rule>

       

        <!-- url1 내의 url1Parameter는 필터링 되지 않으며 또한 url1PrefixParameter로 시작하는 파라메터도 필터링 되지 않는다. -->

        <url-rule>

            <url>/url1.do</url>

            <params>

                <param name="url1Parameter" useDefender="false" />

                <param name="url1PrefixParameter" usePrefix="true" useDefender="false" />

            </params>

        </url-rule>

        

        <!-- url2 내의 url2Parameter1만 필터링 되지 않으며 url2Parameter2는 xssSaxFilterDefender를 사용해 필터링 한다.  -->

        <url-rule>

            <url>/url2.do</url>

            <params>

                <param name="url2Parameter1" useDefender="false" />

                <param name="url2Parameter2">

                    <defender>xssSaxFilterDefender</defender>

                </param>

            </params>

        </url-rule>

    </url-rule-set>

</config>



*표준프레임워크 공통컴포넌트에서는HTMLTagFilter를 제공하고 있으니 확인하려면 web.xml에서 HTMLTagFilter(필터, 필터매핑)을 주석처리해주면 됩니다.


lucy에 관련된 자세한 정보는 Naver Git인 https://github.com/search?q=org%3Anaver+lucy 에서 찾으실 수 있습니다.

반응형

'IT > 보안' 카테고리의 다른 글

Yasca 설치 및 사용법  (0) 2017.09.28
SQL인젝션  (0) 2017.09.28
XSS정의 / XSS공격 / XSS방어  (0) 2017.09.27
web 어플리케이션 공격기법의 종류  (0) 2017.09.27

+ Recent posts