컴퓨터

JavaScript에서 window.location 사용 할 때 캐쉬를 우회하기

인터넷 익스플로러 8에서 페이지를 이동할 때 캐쉬를 참조하면서 페이지 값이 갱신되지 않 는 경우가 있습니다.

아래의 Javascript 처럼 url끝에 timestamp를 넣어 새 페이지로 인식시키면 IE8에서 캐쉬 참조를 우회할 수 있습니다.

ex.) window.location 으로 test.php?ay=5&as=2 등으로 반복해서 열리다 보면, 캐쉬에 저장되어 이후로는 test.php 만 열리게되어 _GET값 전달이 잘 작동하지 않습니다.

해결) test.php?ay=5&as=2&_=1400488733848 으로 열리고 끝의 숫자가 항상 바뀌므로 새 페이지처럼 열리게 됩니다.

<script type="text/javascript">
window.location = ""<?php echo $g4['page_path'] ?>/test.php?ay=5&as=<?php echo $an ?>
</script>
<script type="text/javascript">
window.location = ""<?php echo $g4['page_path'] ?>/test.php?ay=5&as=<?php echo $an ?>&_=" + (new Date()).getTime();
</script>
이렇게 바꿔서 사용하면 됩니다.
컴퓨터

add the creation date to the filenam

배치 파일 스크립트로 폴더 내에 있는 모든 파일 명에 파일 날짜를 추가하기

선택한 폴더의 모든 파일명 끝에 파일 생성 날짜 붙여넣는 배치 파일 스크립트입니다.

한번 날짜가 추가되면 또 실행해도 더 이상 추가되지 않게 했습니다.

PHP로 파일을 upload하면 원래 생성 날짜가 사라져서 한번 만들어 봤습니다.

sample.zip → sample_20140514.zip

temp.zip → temp_20140418.zip

@echo off
TITLE Append the creation date of a file to the filename in a batch script 
::mode con cols=60 lines=11 
set Loc="%userprofile%\바탕 화면\sample" 
goto START :: sample.zip → sample_20140515.zip 
:START
cd %Loc% 
FOR %%q IN (*.zip) DO FOR /F "tokens=1-5 delims=-: " %%J IN ("%%~tq") DO ( 
Echo %%q | FIND "%%J%%K%%L" > NUL 
if ERRORLEVEL 1 ren "%%q" "%%~nq_%%J%%K%%L%%~xq" ) 
dir /b *.zip 
goto END 
:END
 echo. 
echo. 
echo 변환완료. 종료하겠습니다. HAVE A NICE DAY! 
echo. pause 
컴퓨터

코모도 원격 데스크톱 허용 방법

코모도 인터넷 시큐리티나 코모도 파이어월을 설치한 PC를 외부에서 원격 데스크톱(mstsc)으로 원격 제어하려면 코모도의 방화벽에 아래와 같은 설정을 해주셔야 합니다. (코모도 인터넷 시큐리티 6.3을 기준으로 설명드리겠습니다.)

3줄 요약

  1. 코모도의 방화벽에 막혀서 원격제어가 안된다.
  2. 전역 규칙에 원격제어 포트를 허용해 준다.
  3. 프로그램 규칙에 svchost.exe 에 원격제어 포트를 허용해 준다.

1. 전역 규칙 추가

Comodo Remote Desktop

1-1. 코모도 고급 설정(Advanced Settings) -> 보안 설정(Security Settings) -> 방화벽(Firewall) -> 전역 규칙(Global Rules) 창을 연다.

1-2. 맨 아래의 ^ 표시를 클릭하면 메뉴가 뜨는데 [+추가(Add)]를 클릭

  • 조치사항(Action) -> 허용(Allow)
  • 프로토콜(Protocol) -> TCP
  • 방향(Direction) -> IN
  • 설명(Description) -> 적당한 이름 아무거나 (예: 원격 방화벽 열기)
  • 원천지주소(Source Address) : 모든 주소(Any Address), 목적지주소(Destination Address) : 모든 주소(Any Address), 원천지 포트(Source Port) : 모두(Any) (3가지 탭은 그냥 기본값임)
    목적지 포트(Destination Port) :
    • 유형(Type) : 단일 포트(A Single Port)
    • 포트(Port) : 3389 (원격포트를 보안때문에 바꾸셨다면 바꾼 포트 입력)
  • [확인(OK)]을 누르고 빠져나옴

2. 프로그램 규칙 추가

Comodo Remote Desktop

2-1. 코모도 고급 설정(Advanced Settings) -> 보안 설정(Security Settings) -> 방화벽(Firewall) -> 프로그램 규칙(Application Rules) 창을 연다.

2-2. 윗쪽 오른쪽 끝에 [처리방식(Treat As)] 옆에 돋보기 아이콘 클릭하고 svchost.exe 입력하고 엔터

2-3. C:\WINDOWS\system32\svchost.exe가 검색되었으면 앞에 체크하고 (선택되면 자동으로 체크됨) 마우스 오른클릭하여 [편집(Edit)] 클릭

2-4. 맨 아래의 ^ 표시를 클릭하면 메뉴가 뜨는데 [+추가(Add)]를 클릭 (위의 1-2의 내용과 동일합니다.)

  • 조치사항(Action) -> 허용(Allow)
  • 프로토콜(Protocol) -> TCP
  • 방향(Direction) -> IN
  • 설명(Description) -> 적당한 이름 아무거나 (예: 원격 방화벽 열기)
  • 원천지주소(Source Address) : 모든 주소(Any Address), 목적지주소(Destination Address) : 모든 주소(Any Address), 원천지 포트(Source Port) : 모두(Any) (3가지 탭은 그냥 기본값임)
    목적지 포트(Destination Port) :
    • 유형(Type) : 단일 포트(A Single Port)
    • 포트(Port) : 3389 (원격포트를 보안때문에 바꾸셨다면 바꾼 포트 입력)
  • [확인(OK)]을 누르고 빠져나옴

남은 이야기

  • 한글화 된 코모도 인터넷 시큐리티 6.3을 기준으로 설명 드렸습니다. (영문 버전을 쓰시는 분들을 위해 영어이름도 같이 넣었습니다.
컴퓨터

RVHOST AUTORUN 제거 방법

rvhost.exe

악의적인 웹사이트나 USB 자동실행으로 감염되는 웜 바이러스입니다.

결론 : 윈도우 재설치 / 백신프로그램 설치 강력추천

: 아래의 내용은 단순히 임시 조치이므로 가성비 높은 윈도우 재설치 및 백신프로그램 설치를 추천드립니다.

: 증상이 나타나기 이전 날짜로 시스템 복원을 하는 것도 좋은 방법입니다.

5줄 요약

  1. 메모리에서 수상한 프로세스 제거
  2. 시작프로그램에서 수상한 목록 제거
  3. 예약된 작업에서 수상한 예약작업 제거
  4. USB 자동실행 기능 끄기 및 Autorun.inf 파일 삭제
  5. 수상한 레지스트리 삭제

1. 메모리에서 제거

  1. 윈도우 작업관리자 실행

    : CTRL+SHIFT+ESC를 누르거나, 시작 -> 실행 -> TASKMGR 치고 엔터

    : 작업관리자가 실행이 안되는 경우 악성코드가 작업관리자, 레지스트리 편집기를 사용하지 못하도록 레지스트리를 변경시킨 경우가 많으므로, 아래의 백신사이트에서 치료 툴로 고치시면 됩니다.

    Ahnlab Registry Fix Tool 내려받기

  2. 프로세스 목록중에 숫자영문랜텀의 6자리 이름의 프로세스가 있으면 선택하고 "프로세스 끝내기" 누름

    예) 120F38, RVHOST

  3. 그 밖의 수상한 프로세스들도 "프로세스 끝내기"

2. 부팅할 때 자동 실행되지 않도록 조치

조치 1/5. 시작프로그램에 등록된 것 제거
  1. 시작 -> 실행 -> MSCONFIG 치고 엔터
  2. "시작프로그램" 탭에 숫자영문랜텀의 6자리 이름의 프로세스가 있으면 체크를 품. 예) 120F38, RVHOST
  3. 그 밖의 수상한 프로세스들도 체크를 품 예) rvhost.exe, fooool.exe, bittorrent.exe, sxs.exe, copy.exe, command.exe, ie.exe, copy.exe, nrxtsyv.exe
  4. "적용"을 누르고 팝업 창이 뜨면 "다시 시작하지 않고 끝내기" 클릭 (아직 재부팅 전에 해야 할 것이 있으므로... "다시 시작" 안눌름)

(나중에 재부팅 하고 창이 뜨면 "Windows 시작 시 이 메세지를 다시 표시하지 않으며 시스템 구성 유틸리티를 시작 안함" 앞에 체크하고 확인)

조치 2/5. 예약된 작업에서 수상한 것 삭제

C:\WINDOWS\Tasks 에 수상한 것 있으면 모두 삭제

예) At1.job

시작 -> 실행 -> cmd 입력하고 엔터
del %WINDIR%\Tasks\At*.job /f /s /q /a
조치 3/5. USB 자동실행 기능 끄기 및 Autorun.inf 삭제
  1. USB 와 CD-ROM의 자동실행 기능을 끕니다.

    usbguard 내려받기

    압축풀고 실행하고 "자동실행 차단" 누르기

  2. C: D: E: 등 모든 드라이브와 USB 드라이브의 Autorun.inf를 삭제합니다.
    : Autorun.inf를 열어보면 
    [autorun] shellexecute=wscript.exe nar.vbs
    

    등의 내용으로 스크립트 바이러스를 실행하는 내용이 있을 수 있습니다.

    탐색기에서 안보이는 숨김속성의 파일이므로 아래처럼 삭제합니다.

    시작 -> 실행 -> cmd 입력하고 엔터
    del c:\autorun.* /f /s /q /a 
    del d:\autorun.* /f /s /q /a 
    del e:\autorun.* /f /s /q /a 
    .
    .
    
    가지고 있는 모든 드라이브에서 삭제하면 됩니다.
조치 4/5. 레지스트리를 검색합니다.
    부팅할 때에 자동 실행하게 하는 레지스트리를 찾아 삭제합니다.
  1. 시작 -> 실행 -> regedit 입력하고 엔터
  2. 레지스트리 편집기가 실행되었으면, [편집] 메뉴의 [찾기]를 누르고 [찾을 내용]에 RVHOST.EXE를 입력하고 [다음 찾기]를 누릅니다.
  3. 검색된 레지스트리가 있으면 오른클릭하여 [삭제(D)]를 눌러 삭제합니다
  4. F3를 누르면 이어서 계속 검색할 수 있습니다.

    예)HKCU -> Software -> Microsoft -> Windows -> CurrentVersion -> Run -> Yahoo Messengger = %시스템%RVHOST.EXE

    HKLM -> SOFTWARE -> Microsoft -> Windows NT -> CurrentVersion -> Winlogon -> Shell = Explorer.exe RVHOST.exe

조치 5/5. 가지고 있는 백신 프로그램으로 전체검사를 돌려봅니다.

: 남아 있을 지 모를 악성코드를 없애기 위해 전체검사를 합니다.

다 되었으면 이제 재부팅
컴퓨터

우분투 12.04 Server LTS를 설치해보자

Ubuntu 12.04

리눅스 환경에서 아파치 웹서버를 구축해야 할 필요가 있어서, 처음으로 리눅스를 설치해보았습니다. 아래는 설치과정입니다.

우분투 12.04 Server 내려받기

데스크톱 버전과 서버 버전이 있는데, 서버로 사용할 거라 단순하게 서버 버전으로 내려받았습니다.

우분투 12.04 Server 내려받기주1

내려받은 파일 USB로 설치

UNnetbootin 프로그램으로 USB (2G이상)으로 담아서 설치하였습니다. 주2

USB로 우분투 설치하기 관련 자료 링크

설치 중간에 추가기능 설치

USB로 부팅하면 여러 메뉴가 나오는데

[INSTALL]을 선택하면 우분투이외에 rubuntu, Edubuntu, Kubuntu의 추가기능 설치항목도 뜹니다.

그냥 필요할 것 같은 기능 같아서 대충,

  • basic ubuntu server
  • openssh server (꼭 설치)
  • 메일 서버
  • Samba file server
  • Ubuntu Cloud Image instance
  • Virtual Machine host

을 클릭했습니다.

참고로, [install ubuntu Server]를 선택하면 항목이 간단했습니다.

선택할 것이 밑에 두 개 정도만 보이더군요.

  • openssh server
  • Samba file server

설치 완료 후 처음 부팅 시 tty 로그인 화면

  • 설치과정에서 만든 사용자계정으로 로그인
  • 편의상 root 계정 사용을 위해
sudo passwd root

하고 암호를 입력하면 됩니다.

화면에 이상한 문자가 표시된다면 언어설정을 한글로 설치해서입니다.

잠시 영문표시로 바꾸려면

LANG="en_US.UTF-8"

입력하면 됩니다.

이제 root 계정으로 다시 로그인합시다.

logout ( 혹은 Ctrl + D 혹은 exit)

하고

다시 root로 로그인합니다.

랜카드 환경 설정

설치 시 랜카드는 DHCP로 자동으로 잡히는데, 고정 IP로 잡고 싶거나 랜 선이 뽑힌 상태로 설치했다면, 인터넷 연결을 위해 IP 설정을 해야 합니다.

터미널 상태에서 ifconfig 명령어로 랜 IP 입력방법

ifconfig 명령어로 랜 IP 입력방법 관련 자료 링크

putty로 원격조정으로 넘어가자.

사용하는 윈도우 컴퓨터가 따로 있다면, 우분투 서버는 놔두고 이 단계에서 윈도우 컴퓨터 상에서 putty로 연결해서 사용하면, 한글 문자도 안 깨지고 웹검색 하면서 설치할 수도 있는 등등 편리합니다. 먼저 openssh가 설치되어 있어야 합니다.주3

우분투에서 putty 사용방법 관련 자료 링크

x환경 없이 server 설치 후 오픈박스 설치

처음에 compiz로 설정하였는데 로그인이 잘 안 돼서 다시 openbox로 설정하였습니다.

  • [openbox 설치 관련 자료 링크] 중에 memu.xml은 아래와 같이 백업 받고 고치는 게 좋을 듯합니다.
cp /etc/X11/openbox/menu.xml .

설명 : menu.xml을 현재 폴더(.)에 copy

  • [compiz 설치 관련 자료 링크] 중에 emerald설치중 인터넷에서 파일 내려받기
w get http://cgit.compiz.org/fusion/decorators/emerald/snapshot/emerald-0.9.5.tar.gz 
tar -zxvf emerald-0.9.5.tar.gz

설명:위 명령어에서 w get을 사이의 공백을 붙이세요. 붙이니깐 블로그에 글이 안써지네요;;

compiz 설치 관련 자료 링크

openbox 설치 관련 자료 링크

아파치 웹서버 구축하기 - APM( apache + PHP5 + mysql)

리눅스 아파치 웹서버 구축하기 - XAMPP주4

아파치 웹서버 구축 관련자료 링크 1

아파치 웹서버 구축 관련자료 링크 2

그밖에 APM 관련 링크는 구글링해보면 너무도 많아서...

phpmyadmin설치

위에서 XAMPP로 설치하셨다면 phpmyadmin 설치는 생략해도 됩니다.

phpmyadmin 설치 관련자료 링크

남은 이야기

처음 리눅스를 접해 보았는데, 마치 커다란 탈옥 아이폰을 가지고 노는 느낌이더군요.^^ 여러분은 어쩐지 모르겠지만, 콘솔에서 명령어를 입력해서 PC를 다루는 것이 GUI보다 더 매력적이고 직관적으로 저에게 느껴졌습니다. 아무튼, 리눅스를 처음 접하는 분들을 위해 정리해보았는데 조금이나마 여러분께 도움이 되었으면 좋겠습니다.^^ 잘못된 내용이 있으면 언제든 댓글 주시면 정정하겠습니다.^^

각주.
  1. 우분투를 선택한 이유, 리눅스는 처음 접하는 것이라 잘 모르지만 페도라와 우분투 중에 완전무료 지향이라는 점에서 우분투를 골랐습니다. [Back]
  2. 제 경우에는 쓰던 2G USB로는 USB 부팅이 안 되길래, 8G USB 새것으로 바꾸어서 해보니 잘되었습니다. [Back]
  3. 특히 copy+paste 가능해서 명령어를 웹 문서에서 복사해서 쓸 수 있는 게 제일 좋더군요^^ [Back]
  4. XAMPP는 64bit는 지원하지 않습니다. 32bit사용자만 사용하세요 [Back]