강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

쉘스크립트 암호화
작성자 : 13 김영철
등록날짜 : 2009.01.29 16:27
2,720
안녕하세요.
"rootman.co.kr" 운영자입니다.

요즘 너무 나도 바쁜 하루 하루입니다.
시간 쪼개서 한 팁 올립니다...


"shc" 는 스크립트 파일을 바이너리로 바꿔 주는 역할을 합니다.
php encoder 같은 역할을 한다고 보면 됩니다.

예전엔 중요한 소스 같은 경우, php로 스크립트 파일 위치를 열어서 특정 디렉터리에 위치해 놓고 컴파일하여 사용했는데,
"shc"를 사용하니 더욱 강력(?)하고 손 쉽게 인코딩하더군요.

역시 아는 것이 힘입니다.

쉘 스크립트도 역시 중요한 "root" 패스워드 정보, "DB" 정보 등 공유되거나 유출되면 안 되는 파일들이 존재합니다.

이럴 때 정말 유용하게 사용될 수 있으니, 아직까지 모르셨던 분들 아래 문서 참고하셔서 도움되시길 바랍니다.

좋은 날, 기쁜 날 되시길 빕니다.


-------------------------------------------------------
1. 다운로드 
-------------------------------------------------------
(1) 공식
    http://www.datsi.fi.upm.es/~frosal/

(2) rootman 사이트
    http://www.rootman.co.kr/NFS/Util/shc-3.8.3.tgz


-------------------------------------------------------
2. 설치
-------------------------------------------------------
  [root@ns1 local]# tar xvfz shc-3.8.3.tgz
  shc-3.8.3/CHANGES
  shc-3.8.3/Copying
  shc-3.8.3/Makefile
  shc-3.8.3/match
  shc-3.8.3/pru.sh
  shc-3.8.3/shc.1
  shc-3.8.3/shc.c
  shc-3.8.3/shc.html
  shc-3.8.3/shc.README
  shc-3.8.3/test.bash
  shc-3.8.3/test.csh
 
  [root@ns1 shc-3.8.3]# make install
  ***    Installing shc and shc.1 on /usr/local
  ***    ¿Do you want to continue? y
  install -c -s shc /usr/local/bin/
  install -c -m 644 shc.1 /usr/local/man/man1/


"shc" 파일은 /usr/local/bin/ 디렉터리에 설치됩니다.


-------------------------------------------------------
3. 테스트
-------------------------------------------------------
(1) 파일 생성 (__EOF___ 까지 쉘 상태에서 긁어다가 붙이시면 됩니다.)
cat > /root/tmp/script.sh    << __EOF__
#!/bin/sh
#------------------------------
# this file is not encrypted
#------------------------------
echo "I love Duane's articles and will send him a donation via PayPal."
exit 0;
__EOF__


(2) 명령행 실행
  [root@ns1 tmp]# shc /root/tmp/script.sh
  "script.sh.x"라는 바이너리 파일이 생성됩니다.


(3) 생성된 스크립트 수행
  [root@ns1 tmp]# ./script.sh.x
  I love Duane's articles and will send him a donation via PayPal.


-------------------------------------------------------
4. 특이한 기능
-------------------------------------------------------
[root@ns1 tmp]# shc -e 09/10/2004 -m "Dude it is too late to run this script." -f script.sh
[root@ns1 tmp]# ./script.sh.x
./script.sh.x: has expired!
Dude it is too late to run this script.

- 쉘 스크립트에 대한 만료일을 지정하여 실행할 수 있습니다.
- 지정된 날짜 이후는 실행되지 아니 합니다.
- 위 예는 "2004년 10월 9일"을 스크립트 만료일로 지정하여 만료 후에는 "Dude it is too late to run this script."라는
  메시지를 출력하라고 지정한 내용입니다.


-------------------------------------------------------
5. 참고사항
-------------------------------------------------------
- "shc" 명령어는 스크립트에 대한 C 소스 코드를 생성합니다.
- binary로 파일이 생성되므로 "./파일명" 형태로 실행하여야 합니다.
- 생성된 스크립트 파일은 이름을 변경해도 무관합니다.


-------------------------------------------------------
6. 기본 실행 옵션 설명
-------------------------------------------------------
(1) -e date
    만료일을 지정합니다. (dd/mm/yyyy format)

(2) -m message
    만기 시 메시지를 출력합니다.

(3) -f script_name
    컴파일할 스크립트 파일을 지정합니다.

출처 : Tong - ddakzzi님의 SERVER통

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
2895 ftp로 원격서버의 데이터 자동백업 13 김영철 01.29 2594
2894 계정 자동 세팅 13 김영철 01.29 2715
2893 응급복구 13 김영철 01.29 2572
2892 특정 계정에대해서 telnet 접속 X , ftp 접속 O 13 김영철 01.29 2818
2891 rootman의 서버 초기세팅시 초기 설정사항 퍼미션 및 소유권변경 정보 13 김영철 01.29 2397
2890 네임서버 설정 13 김영철 01.29 2462
2889 트래픽을 증가시키는 외부사이트의 이미지 퍼가기를 막기 위한 apache config 설정 13 김영철 01.29 2705
2888 리눅스 도메인 셋팅방법 13 김영철 01.29 2374
2887 리눅스 서브도메인 셋팅방법 13 김영철 01.29 2820
2886 아파치 - throttle 모듈 설치 13 김영철 01.29 2736
2885 APM - 단독서버 운영을 위한 셋팅 13 김영철 01.29 2945
2884 vi edit 사용 13 김영철 01.29 2819
2883 TOMCAT 13 김영철 01.29 2415
2882 vi 명령어 2 13 김영철 01.29 3237
2881 ncftp, ncftpget, ncftpput - 서브디렉토리 전송 13 김영철 01.29 3686
2880 ncftp, ncftpget, ncftpput - 서브디렉토리 전송 13 김영철 01.29 2588
2879 [서버운영] ncftp 100% 활용하기 13 김영철 01.29 2622
2878 rsync (remote sync daemon) UNIX 서버간 원격 복사 13 김영철 01.29 3106
2877 rsync 와 ssh 를 이용한 파일 전송 13 김영철 01.29 3436
2876 rsync윈도우에서 리눅스로 백업하기 13 김영철 01.29 3953
2875 RSYNC 사용하기 13 김영철 01.29 2450
2874 ssh 재시작(각종 변곃후) 13 김영철 01.29 2974
2873 ssh 보안설정1 13 김영철 01.29 2655
2872 find 명령어 사용법 13 김영철 01.29 2496
2871 chgrp 명령어 사용법 13 김영철 01.29 4425
2870 killall 명령어 사용법 13 김영철 01.29 3479
2869 kill 명령어 사용법 13 김영철 01.29 2803
2868 ps 명령어 사용법 13 김영철 01.29 3781
2867 루트밑에 특정 확장자 파일을 특정디렉토리에 복사 13 김영철 01.29 2917
열람중 쉘스크립트 암호화 13 김영철 01.29 2721
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취