'Programming'에 해당되는 글 72건

  1. 2013.01.17 | PHP 시작
  2. 2013.01.17 | HTML 예제들
  3. 2013.01.04 | 자바스크립트 내장 객체
  4. 2013.01.03 | 스타일객체
  5. 2013.01.01 | onload이벤트
  6. 2013.01.01 | 이벤트 정리
  7. 2013.01.01 | 폼 유효성 검사2(submit&button 비교)
  8. 2013.01.01 | 폼 유효성 검사(아이디, 비밀번호)
  9. 2013.01.01 | history 객체 메서드&속성
  10. 2012.12.31 | SSH란?

PHP 시작

Programming/PHP | 2013. 1. 17. 10:00
Posted by 오요미

PHP는 스크립트 언어이며 서버에서 프로그램을 해석하여 실행한 후 실행결과를 클라이언트(웹 브라우저)에게 넘겨주는 방식이라 했다. 그러므로 PHP프로그램을 사용할 경우 웹서버에게 PHP프로그램 이름을 알려주어 PHP프로그램 해석기(Zend엔진)를 가동하여 실행 할 수 있도록 해야한다. HTML과 PHP를 사용하여 웹사이트 구축을 할 경우 웹서버에서 PHP프로그램 부분을 표시하는 방법은 다음 4가지가 있다.

 

<?

PHP프로그램이 들어갑니다.

?>

//안될 경우 Windows/php.ini중 short_open_tag=on으로 설정

 

<?php

PHP프로그램이 들어갑니다.

?>

 

<script language="php">

PHP프로그램이 들어갑니다.

</script>

 

<%

PHP프로그램이 들어갑니다.

%>

//안될 경우 Windows/php.ini중 asp_tag=on으로 설정

 

'Programming > PHP' 카테고리의 다른 글

tpl assign 사용예  (0) 2013.01.17
preg_함수들...  (0) 2012.12.18
 

HTML 예제들

Programming/HTML | 2013. 1. 17. 09:54
Posted by 오요미

<html>
 <head>
  <meta http-equiv = "Content-Type" content = "text/html; charset = utf-8">
  <title>HTML태그와 옵션들</title>
 </head>

 <body link="#ff0000" vlink="#00ff00" alink="#0000ff">
  Naver : <a href = "http://www.naver.com"> naver</a>

  <h1>Naver</h1>
  <h2>Naver</h2>
  <h3>Naver</h3>
  <h4>Naver</h4>
  <h5>Naver</h5>
  <h6>Naver</h6>

  <font size=1>Naver</font><br>
  <font size=2>Naver</font><br>
  <font size=-1>Naver</font><br>
  <font size=3>Naver</font><br>
  <font size=4>Naver</font><br>
  <font size=+1>Naver</font><br>
  <!-- 기본크기는 3이며 부호가 붙을경우 기본크기를 중심으로 변한다-->

  <!--문자의 기본크기 지정하기-->
  <BASEFONT size=3>
  <font size=-1>changed font size -1</font><br>
  <font size=+1>changed font size +1</font><br>

 <!--문자 폰트지정하기 explore 5.5이상 charset=utf-8로-->
 <font face="바탕체" size=+2>바탕체</font><br>
 <font face="굴림체" size=+2>굴림체</font><br>
 <font face="궁서체" size=+2>궁서체</font><br>
 <font face="돋움체" size=+2>돋움체</font><br>

 <!-- p태그를 이용한 단락지정하기 (br과는 다르게 단락이 추가됨)-->
 <p> welcom to simplex internet!</p>
 <p> welcom to simplex internet!<br>

 <!-- 수평선 그리기-->
 <!-- hr 태그에는 4가지 속성 - size(픽셀수), width(픽셀수), align(left, right, center), noshade(수평선의 음영 효과를 없앤것)을 사용할수 있다.-->
 <p> welcom to simplex internet!
 두께 1인 수평선<hr size = 1>
 두께 3인 수평선<hr size = 3>
 두께 5인 수평선<hr size = 5>

 너비 500인 수평선 <hr width=500>
 너비 300인 수평선 <hr width=300>
 너비 100인 수평선 <hr width=100>

 noshade<hr noshade><br>

 <!--가운데로 정렬하기-->
 <center> 월드와이드 웹에 대하여 center를 이용한 가운데 정렬</center>

 <!-- 좌측, 우측, 가운데 정렬하기 -->
 <!--웹브라우저에 나타나는 요소들의 정렬을 위해 사용할 수 있는 태그로 div가 있다.이 태그의 속성인 align에 left/center/right를 지정함으로서 태그 내부에 삽입된 것을 원하는 대로 정렬할 수 있다.-->
 <div align=center>월드 와이드 웹에 대하여 div를 이용한 가운데 정렬</div>
 <div align = right>월드 와이드 웹에 대하여 div를 이용한 오른쪽 정렬</div>
 <br>

 <!--인용된 문장 보여주기-->
 <!--html문서 내에서 문장이나 단어를 인용할 때 blockquote(문장)와 cite(간단한 단어, 제목)를 사용한다. 이는 인용된 문장과 일반 텍스트를 구별되어 보이도록 만들게 된다.-->
 다음은 김옥진님의 시집<cite>용복 마을의 겨울</cite>에 나오는 시의 한 구절 입니다.
 <hr><p>
  사람들이 쓰다 버린<br>
  조각난 언어들이<br>
  쓰레기통에 가득 쌓인다<br>
  시름겨워내뱉는 한숨소리도<br>
  신문지에 싸여 던져지고<p>
  </blockquote><hr>

 <!--이메일 주소 모양 지정하기(이탤릭체)-->
 <address>
 이 웹사이트에 대한 문의가 있으시면
 <a href = "webmaster@hotmail.com">webmaster</a>에게 메일을 보내주십시오.
 </address><hr>

 <!--강조된 문장 모양 지정하기-->
 <!--strong > em-->
 <strong>중요</strong>
 <hr>이책에서<em> 이 부분</em>이 제일 중요합니다.

 <!--키보드 입력된 문장 모양 지정하기-->
 <!--kbd 태그는 사용자가 키보드로 입력할 것을 지시 하거나 키보드로 입력된 듯한 효과를 보여주기 위해 사용하게 된다.-->
 도스 프롬프트에서 다음과 같은 명령으로 컴파일 합니다.<br><hr>
 <kbd>c:/>javac javaapp.java</kbd><hr>

 <!--예제 문장 모양 지정하기-->
 <!--samp태그는 컴퓨터가 보여주는 메시지를 보여주거나 프로그램의 실행 결과를 보여주거나 할때 사용하게 된다. 일반적으로 글자 모양은 고정 폭 글자체로 나타나게 된다.-->
 <samp>hello world!</samp>

 <!--소스코드 모양 지정하기-->
 자바에서 콘솔로 값을 보여주려면 다음과 같은 함수를 사용해야 합니다.<br><hr>
 <code>
  System.out.println(...);
 </code><hr>

 <!--입력된 그대로 보여주기-->
 <!--소스 코드를 html에 붙여 넣으면 들여쓰기없이 한줄로 출력되는데 이를 pre태그를 사용하여 그대로 나타낼 수 있다. 이는 시스템의 고정폰트를 사용하게 되며 p나 br , tab을 사용하지 않는것이 좋다.-->
 다음은 php소스코드 입니다.<hr>
 <pre><code>
    if($this->menu_id){
    $this->select_mentrem();
    if($this->menu_url){
     $this->set_menudir();
     $this->check_menufile($this->menu_file);
     $this->delete_menfilmf();
     $this->insert_menfilemf();
    }
 </code></pre>
 
 <!--변수 모양으로 보여주기-->
 <!--var 태그는 변수이름을 나타낼때 주로 사용된다-->
 이 프로그램 클래스의 이름은 <var>JavaApp</var>이고 처음 실행되는 메소드는 <var>main</var>입니다.<br>

 <!--용어를 정의하는 모양으로 보여주기-->
 <dfn>HTML</dfn>은 Hyper Text Makup Language란 말의 약자로, 하이퍼텍스트 문서를 만들기 위한 언어이다.<p>
 
 <!--글자 모양을 여러가지로 바꾸기-->
 This is <B>Boldface Font.</B><BR>
 This is <I>Italic Font.</I><BR>
 This is <U>Underlined Font.</U><br>
 This is <tt>Typewrite Font.</tt><br>
 This is <blink>Blinking. Blinking.</blink><br>
 <!--blink는 네스케이프에서만 지원-->
 This is <sub>subscription</sub><br>
 This is <sup>superscription</sup><br>
 <p>

 <!--텍스트를 옆으로 흐르게 만들기-->
 <!--태그내에 삽입된 텍스트를 옆으로 흐르게 만든다. 속성 : direction(left, right):방향, scrolldelay(1/100s):흐르는 속도, loop:반복횟수지정, hspace, vspace: 텍스트가 흐르는 영역의 주변 여백을 지정함, width, height:텍스트가 흐르는 영역을 지정, align(top, bottom, middle)-->
 <marquee> 텍스트가 옆으로 흐릅니다.</marquee>
 <marquee direction = "right">텍스트가 오른쪽으로 흐릅니다.</marquee>
 <marquee width=300>텍스트가 좁은 공간에서 흐릅니다.</marquee>
 <marquee bgcolor = "yellow"> 노랑색 텍스트가 흐릅니다.</marquee>
 <marquee height = 300  bgcolor = "blue" >텍스트가 흐른다.</marquee>
 <p>

 <!--특수 문자 지정하기-->
 <!--특수 문자란 키보드를 통해 입력할 수 없는 문자나 HTML 문서에서 예약어로 사용하고 있는 문자를 의미한다.이러한 문자들을 문서에서 사용하려면 먼저 특수 문자를 사용하겠다는 사실을 알려 주어야 한다.
 HTML 문서에는 ESC코드를 사용하여 특수 문자를 입력할 수 있다. 이 ESC코드는 보토 "&"기호로 시작하여 ";"기호로 끝나게 된다.

  </body>
</html>

'Programming > HTML' 카테고리의 다른 글

DOCTYPE  (0) 2013.05.13
 

자바스크립트 내장 객체

Programming/Javascript | 2013. 1. 4. 00:39
Posted by 오요미

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<pre>

<script language="javascript" type="text/javascript">

//[1] 날짜 관련 객체

// Date객체의 인스턴스 생성

var today = new Date();

// Date객체의 주요 속성/메서드 출력

document.write(today.getYear() + "년<br />");

document.write((today.getMonth()+1) + "월<br />"); //0월 부터 시작 Day는 요일

document.write(today.getDate() + "일<br />");

document.write(today.getHours() + "시<br />");

document.write(today.getMinutes() + "분<br />");

document.write(today.getSeconds() + "초<br />");

document.write("<hr />");

//[2] 수학 관련 객체

document.write("2의 10승 : "+Math.pow(2,10)+"<br />");

document.write("3, 5, 1, 4 중 가장 큰 값 : "+Math.max(3,5,1,4) + "<br />");

document.write("3, 4, 1, 4 중 가장 작은 값 : "+Math.min(3,5,1,4)+ "<br />");

document.write("3.4를 소수 첫째 자리에서 반올림 : "+Math.round(3.4)+ "<br />");

document.write("3.5를 소수 첫째 자리에서 반올림 : "+Math.round(3.5)+ "<br />");

//[3] 문자열 관련 객체/함수

var s = " Abc Def Fed Cba";

with(document){                                          //with안에 있는 document객체는 document를 생략할 수 있다.

writeln(s.length); //길이 writeln 자동으로 줄바꿈<pre></pre>안에 있을 경우

writeln(s.toLocaleLowerCase());         //소문자 : LCase()

writeln(s.toUpperCase());         //대문자 : UCase()

writeln(s.charAt(5));         //5번째 인덱스에 위치하는 문자

writeln(s.indexOf("e"));         //"e"문자열의 인덱스(위치)

writeln(s.lastIndexOf("e"));                 //뒤에서 "e"문자열 검색

writeln(s.substring(5,8));         //5번째 인덱스에서 8-1번째

writeln(s.substr(5, 3));                 //5번째 인덱스 부터 3자 반환

var ss = s.split(" ");         //공백을 기준으로 배열값으로 반환

for(i=0; i<ss.length; ++i){

writeln(ss[i]);

}

}

</script>

</pre>

'Programming > Javascript' 카테고리의 다른 글

주문자와 배송지 정보 같게 설정하는 checkbox  (0) 2013.01.22
웹브라우저 관련 예제들  (0) 2013.01.22
스타일객체  (0) 2013.01.03
onload이벤트  (0) 2013.01.01
이벤트 정리  (0) 2013.01.01
 

스타일객체

Programming/Javascript | 2013. 1. 3. 23:59
Posted by 오요미

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>스타일 객체 : style</title>

<style type="text/css">

#Panel1{

background-color:Yellow; width:"200px"; height:"200px";

}

</style>

<script language="javascript" type="text/javascript">

function ChangeColor(obj) {

obj.style.backgroundColor='';

}

function ChangeValue(obj){

obj.value = ""; //html레벨 : 각각의 속성을 지정

obj.size = 40;

obj.style.border = "1px solid red"; //css레벨 : style객체로 접근

}

function ChangeTextBox(){

document.getElementById("txt").value="";

document.getElementById("txt").style.backgroundColor = "red";

}

</script>

</head>

<body>

<div id="Panel1" onmouseover="this.style.backgroundColor='silver';" onmouseout="ChangeColor(this);">

<!-- 노랑->은색->노랑 (backgroundColor='' 속성에 아무값을 주지 않으면 처음값으로 돌아가게 된다.) -->

<!-- background-color -> backgroundColor 스크립트에 속성을 적을 때 이렇게 표기한다. -->

<input type="text" id="txt" value="아이디" onfocus="ChangeValue(this)"/>

<!-- 워터마크기능 -->

<input type="button" value="텍스트박스 모양 변경" onclick="ChangeTextBox();" />

</div>

</body>

</html>

'Programming > Javascript' 카테고리의 다른 글

웹브라우저 관련 예제들  (0) 2013.01.22
자바스크립트 내장 객체  (0) 2013.01.04
onload이벤트  (0) 2013.01.01
이벤트 정리  (0) 2013.01.01
폼 유효성 검사2(submit&button 비교)  (0) 2013.01.01
 

onload이벤트

Programming/Javascript | 2013. 1. 1. 19:59
Posted by 오요미


인터프리터에 의해 웹브라우저는 html의 처음부터 해석을 하게 된다. 하지만 스크립트 코드가 head에 있기 때문에 body태그에 스타일 적용을 하지 못한다. 이를 위해 onload이벤트를 사용한다.


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>window.onload 이벤트</title>

<script type="text/javascript">

//[1]페이지 로드시 함수로 지정한 자바스크립트 실행 

/* window.onload = pageLoad;

function pageLoad() {

changeColor();

changeSize();

}; */

//[2] 익명 함수 : anonymous function 스타일

window.onload = function() {

changeColor();

changeSize();

};

function changeColor(){

document.getElementById("myDiv").style.backgroundColor="red";

}

function chageSize() {

document.getElementById("myDiv").style.height="100px";

}

</script>

</head>

<body>

<div id="myDiv" style="height:50px;">

페이지가 로드 되고 난 후 배경색이 yellow로 변경됩니다.

</div>

<script type="text/javascript">

document.getElementById("myDiv").style.backgroundColor="yellow";

</script>

</body>

</html>

'Programming > Javascript' 카테고리의 다른 글

자바스크립트 내장 객체  (0) 2013.01.04
스타일객체  (0) 2013.01.03
이벤트 정리  (0) 2013.01.01
폼 유효성 검사2(submit&button 비교)  (0) 2013.01.01
폼 유효성 검사(아이디, 비밀번호)  (0) 2013.01.01
 

이벤트 정리

Programming/Javascript | 2013. 1. 1. 19:05
Posted by 오요미

이벤트란? 

사용자로 부터 특정 조작이 행해졌을 때 컴퓨터로부터 발생되는 일종의 신호


자바스트립트의 이벤트 목록

  • blur : 입력 포커스가 폼의 구성요소에 있다가 옮겨진 경우에 발생
  • click : 링크나 폼의 구성원을 선택한 경우에 발생
  • change : 입력 포커스가 폼 내의 필드에 주어진 경우 발생
  • focus : 폼의 구성원의 필드에 입력을 하기 위해 선택하는 경우 발생
  • load : 페이지를 브라우저로 읽을 때 발생하는 이벤트
  • mouseover : 마우스 포인터를 하이퍼 텍스트 링크 위로 옮길 때 발생
  • select : 폼의 구성원의 필드를 선택한 경우에 발생하는 이벤트
  • submit : 폼을 등록한 경우에 발생하는 이벤트(폼과 함께 제공되는 submit과 같은 입력이 끝났음을 알리는 버튼을 누르면 발생)
  • unload : 지금 읽고 있는 페이지 외의 다른 페이지를 읽고자 할 경우 발생
  • dblclick : 해당 객체를 더블클릭 했을 경우
  • mouseout : 객체 안에 마우스 포인터가 머무르다 벗어나게 된 경우 발생

이벤트 핸들러란?(on~)
  • 특정 이벤트와 이에 대한 조치 내용을 담은 코드를 연결하는 역할
  • 자바 스크립트에서는 주로 사용자 입력과 관계된 form과 anchor에 대해서 이벤트 핸들러를 제공


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

</head>

<body 

onload="window.alert('어서오세요.');"

onunload="alert('안녕히 가세요');"

>

<input type="text" onfocus="this.style.backgroundColor='yellow';" 

onblur="this.style.backgroundColor='white';"

/>

<input type="text" onkeypress="alert('타이핑 하셨군요.');"

onchange="document.bgColor='silver';"

onmousemove="this.style.backgrounColor='yellow';"

/>

<table border="1" width="100%">

<tr>

<td onclick="alert('클릭하셨군요');">클릭</td>

<td onmouseover="alert('오버하셨군요.');">마우스오버</td>

</tr>

<tr>

<td ondblclick="alert('더블 클릭하셨군요');">더블클릭</td>

<td onmouseout="alert('밖으로 이동하셨군요.');">마우스아웃</td>

</tr>

</table>

</body>

</html>

'Programming > Javascript' 카테고리의 다른 글

스타일객체  (0) 2013.01.03
onload이벤트  (0) 2013.01.01
폼 유효성 검사2(submit&button 비교)  (0) 2013.01.01
폼 유효성 검사(아이디, 비밀번호)  (0) 2013.01.01
history 객체 메서드&속성  (0) 2013.01.01
 

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

<script language="javascript" type="text/javascript">

function CheckForm() {

var uid = document.getElementById("txtUserID");

if(uid.value.length<3 || uid.value.length >12){

alert("아이디를 3자 이상 12자 이하로 입력하세요");

uid.focus();

uid.select();

return false;

}else{

return true; //현재 다음 이벤트 실행:submit

}

}

</script>

</head>

<body>

<!-- 확인버튼 눌렀을 때 아이디가 3자 이상 12자 이상인지 검사 -->

<form id="MyForm" action="test.html" method="post" onsubmit="return CheckForm();">

아이디 : <input type="text" id="txtUserID" name="txtUserID"/>

<input type="submit" value="확인" />

</form>

</body>

</html>


<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

<script language="javascript" type="text/javascript">

function CheckForm(){

var txt=document.getElementById("txt");

if(txt.value == ""){

alert("아이디를 입력하시오.");

txt.focus();

}else{

document.MyForm.action = "test.html";

document.MyForm.submit();

}

}

</script>

</head>

<body>

<form name="MyForm">

아이디 : <input type="text" name="txt" id="txt"/>

<input type="button" value="확인" onclick="CheckForm();"/>

</form>

</body>

</html>

'Programming > Javascript' 카테고리의 다른 글

onload이벤트  (0) 2013.01.01
이벤트 정리  (0) 2013.01.01
폼 유효성 검사(아이디, 비밀번호)  (0) 2013.01.01
history 객체 메서드&속성  (0) 2013.01.01
location 객체 속성&메서드  (0) 2012.12.30
 

<html>

<head>

<meta name="viewport" content="width=device-width;" charset="utf-8" />

<title>폼 유효성 검사 : 아이디 및 암호 체크</title>

<style type="text/css">

div, td, input{color:Navy; font-size:9pt; font-family:"맑은 고딕" Verdana 굴림;}

</style>

<script language="javascript" type="text/javascript">

//자바스크립트는 html의 form, button, textbox등 들을 하나의 객체로 보고 id와 name으로 접근이 가능하다.

function CheckForm(){

//[1] 아이디 텍스트 박스에 접근해서 txtUserID 변수로 객체 담기

var txtUserID = window.document.FrmLogin.txtUserID;

if(txtUserID.value == ""){         //아이디가 입력되지 않았다면

alert("아이디를 입력하시오.");

return false; //진행하지 말고 대기(submit이벤트 중지)

}

//[2] 암호체크

if(document.FrmLogin.txtPassword.value=""){

alert("암호를 입력하시오.");;

return false;

}

}

</script>

</head>

<body>

<!-- form은 post방식을 사용하도록 권장: 데이터가 URL에 노출되므로..-->

<form id="FrmLogin" name="FrmLogin" action="sun/defalt." method="post" onsubmit="return CheckForm();">

<!-- submit이라는 이벤트를 잡을려면 onsubmit이라는 이벤트 핸들러를 사용해야하며 "return 함수명"으로 적는다. -->

<div align="center">

<table border="1" width="300">

<tr>

<td align="right">아이디:</td>

<td><input type="text" id="txtUserID" name="txtUserID" /></td>

<!-- id와 name속성은 될수 있도록 같게 써준다. -->

</tr>

<tr>

<td align="right">암호:</td>

<td><input type="Password" id="txtPassword" name="txtPassword" /></td>

</tr>

<tr>

<td colspan="2" align="center">

<input type="submit" value="로그인" />

<input type="reset" value="취소" />

</td>

</tr>

</table>

</div>

</form>

</body>

</html>



submit을 button으로 바꾸고 조금 심화시켜 만들어 봅시다~

 <script language="javascript" type="text/javascript">

function CheckForm(){

var txtUserID = document.FrmLogin.txtUserID;

if((txtUserID.value == "") || txtUserID.value.length<3 || txtUserID.value.length>12){

alert("아이디를 입력하시오.");

document.FrmLogin.txtUserID.focus();         //해당 객체에 커서 포커스:커서가도록

//document.FrmLogin.txtUserID.select(); //해당 객체 텍스트 블록 영역 선택

document.getElementById("txtUserID").select();

return false;

}

else{

document.FrmLogin.action = "./asp/Deault.aspx"; //action속성을 동적으로 변경

document.FrmLogin.submit(); //폼의 내용을 action 속성 URL로 전송

}

}

</script>

 <form id="FrmLogin" name="FrmLogin" action="" method="post">
 <input type="button" value="로그인" onclick="CheckForm();"/>


'Programming > Javascript' 카테고리의 다른 글

이벤트 정리  (0) 2013.01.01
폼 유효성 검사2(submit&button 비교)  (0) 2013.01.01
history 객체 메서드&속성  (0) 2013.01.01
location 객체 속성&메서드  (0) 2012.12.30
document 객체 속성&메서드  (0) 2012.12.30
 

history 객체 메서드&속성

Programming/Javascript | 2013. 1. 1. 14:11
Posted by 오요미

<meta name="viewport" content = "width=device-width;" charset = "utf-8" />

<script language = "javascript" type="text/javascript">

//뒤로가기 앞으로가기 정보가 있어야 적용가능

GoBack = function() {history.back();}

//뒤로가기

GoForward = function() {history.forward();}

//앞으로가기

function GoBack1(){ history.go(-1);}

//-1수가 커질 수록 전전 단계로 증가

</script>


<input type="button" value="뒤로" onclick="GoBack();" /><br />

<input type="button" value="뒤로" onclick="history.go(-1);" /><br />


<a href = "#" onclick = "GoForward();" >앞으로</a><br />

<a href="javascript:GoBack1()">한단계 뒤로</a>

 

SSH란?

Programming/Linux | 2012. 12. 31. 10:22
Posted by 오요미

SSH란? 기본 설명

SSH(Secure Shell)는 네트워크를 통해 원격으로 다른 호스트에 액세스하는 과정을 보호하기 위한 의도로 설계되었다. SSH는 더욱 우수한 인증 기능뿐만 아니라 SCP(Secure Copy), SFTP(Secure File Transfer Protocol), X 세션 전달 및 포트 전달과 같은 기능을 제공하여 네트워크에서 교환되는 데이터를 암호화함으로써 기타 비보안 프로토콜의 보안성을 강화한다. 사용 가능한 암호화 유형은 512비트 암호화에서 Blowfish, Triple DES, CAST-128, AES(Advanced Encryption Scheme) 및 ARCFOUR와 같은 암호를 포함한 32768비트 암호화에 이르기까지 다양하다. 암호화 비트를 높여서 구성할수록 네트워크 대역폭을 더 많이 사용하게 되는 부작용이 생긴다. 그림 1 그림 2에서는 네트워크상에 있는 누군가가 Wireshark와 같은 네트워크 스니핑 애플리케이션을 사용하여 telnet 세션을 쉽게 볼 수 있다는 것을 알 수 있다.


그림 1. telnet 프로토콜 세션은 암호화되지 않음 
telnet 프로토콜 세션이 암호화되지 않는다는 것을 나타내는 이미지 

자주 사용하는 약어

  • API: Application programming interface
  • FTP: File Transfer Protocol
  • IETF: Internet Engineering Task Force
  • POSIX: Portable Operating System Interface for UNIX
  • RFC: Request for Comments
  • VPN: Virtual private network

telnet과 같은 안전하지 않은 "일반 텍스트" 프로토콜을 사용하면 네트워크상에 있는 누군가가 비밀번호나 기타 민감한 정보를 훔쳐 볼 수 있다.그림 1에는 telnet 연결을 통해 원격 호스트에 로그인한 사용자fsmythe가 표시되어 있다. 사용자 이름(fsmythe)과 비밀번호(r@m$20!0)를 입력하면 불행하고 의심 없는 이 telnet 사용자와 동일한 네트워크에 있는 어떤 사용자라도 이 정보를 볼 수 있다.


그림 2. SSH 프로토콜 세션은 암호화됨 
SSH 프로토콜 세션이 암호화되는 과정이 표시된 이미지 

그림 2에는 전형적인 SSH 세션에 대한 개요와 동일한 네트워크 세그먼트에 있는 다른 사용자가 암호화된 프로토콜을 어떻게 볼 수 없는지가 표시되어 있다. 주요 Linux® 및 UNIX® 배포판은 기본적으로 설치되는 SSH 패키지 버전(일반적으로 오픈 소스 OpenSSH 패키지)과 함께 제공되므로 소스를 다운로드하여 컴파일하지 않아도 된다. Linux나 UNIX 플랫폼을 사용하고 있지 않은 경우에는 지원과 연습을 위해 많은 사용자들이 애용하는 WinSCP, Putty, FileZilla, TTSSH  Cygwin(Windows 운영 체제상에 설치되는 POSIX 소프트웨어)과 같은 다양한 오프 소스 및 무료 SSH 기반 도구를 사용할 수 있다. 이러한 도구는 Windows 플랫폼에서 UNIX나 Linux 형태의 쉘 인터페이스를 제공한다.

어떤 운영 체제를 사용하든지 SSH는 일상적인 평범한 컴퓨팅 작업에 매우 긍정적인 혜택을 제공한다. SSH는 믿을 수 있으며 안전하고 유연할 뿐만 아니라 간단한 설치와 사용 그리고 구성—, 게다가 우수한 기능까지 겸비한다.


출처  : http://www.ibm.com/developerworks/kr/aix/library/au-sshsecurity/index.html

'Programming > Linux' 카테고리의 다른 글

리눅스 ls명령어  (0) 2013.03.07
ftp 명령문  (0) 2013.01.17
vi 명령어  (0) 2012.12.18
for 문을 이용한 shell script  (0) 2012.12.18
 
블로그 이미지

오요미

공부할 수 있는 순간을 감사하며 공부하라.

카테고리

분류 전체보기 (121)
Electronics (1)
Programming (72)
Culturallife (30)
English (11)
취업 (1)
대학원 (4)
Life (1)