목록프로그래밍/Shell (20)
Self-Improvement
bash, batch 코드를 처음 배우고나서 프로젝트성??으로 2018년에 작성해봤던 자료를 저장, 정리 네트워크 장비 보안 (Bash) EX) N-14.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 #!/bin/bash . function-net.sh MAIN1 LIST4 BAR CODE [N-14] NTP 서버 연동 LEVEL 중 cat $RESULT [ 양호 ] : NTP 서비스가 서버로 설정된 경우 [ 취약 ] : NTP 서비스를 사용하지 않거나, 서버와 연동되어 있지 않은 경우 EOF BAR PRINT1 if [ -f network-config ] ; then NTP1=`grep ^ntp netwo..
보호되어 있는 글입니다.
https://devhints.io/bash
1. dir [경로] - 디렉터리안의 내용을 출력 dir /s [파일] - 파일이 존재하는지 확일할때 유형 2. type [파일] - 파일안의 내용을 출력 3. findstr - 리눅스의 grep같은 명령어 4. not errorlevel 1 (%errorlevel% == 0) - 전의 명령어 수행의 결과를 판단할시 사용 5. secedit /export /cfg [파일이름] - 로컬 보안 정책에 해당하는 모든 설정 값을 파일에 저장할 수 있다. 6. net user [유저이름] - 유저목록을 보거나 특정 유저이름의 관한 설정정보를 볼 수 있다. net localgroup [그룹명] - 그룹목록을 보거나 그룹에 속한 계정을 확인할때 사용 7. del [파일이름] - 해당 파일을 지울 수 있다. 8. ch..
*$HOME/.bash_history 파일의 출력 형식 변경 쉘스크립트 기존의 .bash_history파일의 내용 위의 사진처럼 명령어는 알아볼 수 있지만 시간대가 이상한 형식으로 출력이 되어진다. 이러한 것을 쉘 스크립트를 이용하여 시간대가 알아볼 수 있게 출력되는 형식으로 바꾼다. -------------------------------time.sh-------------------------------- #!/bin/bash > ~/.bash_history.time > ~/.bash_history.cmd > ~/.bash_history.conv tail -200 ~/.bash_history | grep -v ^# > ~/.bash_history.cmd for LEAD in `tail -200 ~/...
*passwd 명령어시 변경한 사용자 이름 및 날짜 저장하는 스크립트 #cd /root/bin #mv /usr/bin/passwd /usr/bin/passwd.old #vi passwd #chmod 755 passwd #cp /root/bin/passwd /usr/bin/passwd.old #passwd #cat /test/passwd.log ※실습한 뒤에 복원작업 필수 *ls 명령어시 악의적인 파일만 안보이게 스크립트 #touch backdoor #mv /bin/ls /bin/ls.old #vi ls #chmod 755 ls #cp /root/bin/ls /bin/ls #ls -al backdoor 파일이 보이지 않는다 #/bin/ls.old -al backdoor 파일이 보여짐 ※실습한 뒤에 복원작업..
*ping 테스트 프로그램 #vi ping.sh #chmod 755 ping.sh #ping.sh *네트워크 점검 프로그램 #vi functions.sh ※functions는 색상이 정의된 함수이며 이용한다. #vi check_network.sh -----------check_network.sh-------------- #!/bin/bash . functions.sh LAN1() { print_error "[ FAIL ] Local Network Connection" echo "(ㄱ) VMware > Edit > Virtual Network Editor" echo "(ㄴ) VMware > VM > Settings > Network Adapter" echo "(ㄷ) #ifconfig" } GATE1() {..
*원격 서버의 자동 명령어 수행 #vi telnet.sh #chmod 755 telnet.sh #telnet.sh *특정 경로의 파일 확장자 변경 #vi move.filename.sh #chmod 755 move.filename.sh #move.filename.sh /root/bin txt els *환경 설정 스크립트 #vi ENV_main.sh --------ENV_main.sh---------- /root/bin/ENV1.sh /root/bin/ENV2.sh /root/bin/ENV3.sh ---------------------------- #chmod 755 ENV_main.sh #vi ENV1.sh (telnet, ssh Open서비스 진행) ------------ENV1.sh-----------..
*hosts파일에 등록 프로그램(본인 IP 제외) #vi hosts.shd #chmod 755 hosts.sh #cp /etc/hosts hosts #hosts.sh #cat hostsd *사용자추가 프로그램 #vi user.listd #vi useradd.shd #useradd.shd *다른서버와의 서비스내용 비교 #vi check_service.shd #chmod 755 check_service.sh #check_service.shd *파일에서 일부 데이터 추출 #vi report.txtd #vi check_report.shd #chmod 755 check_report.sh #check_report.sh U-1d *ftp 파일 자동 업로드/다운로드 (비대화형 ftp) 1.정해진 파일 업로드/다운로드 ..
*루프제어 : break N, continue N //break N (N은 숫자) && break 1 : 루프 하나 탈출 && break 2 : 루프 두개 탈출 //continue N (N은 숫자) 제어 루프의 시작으로 되돌린다. && continue 1 : 첫 안쪽 루프의 제어부분으로 && continue 2 : 두번째 안쪽 루프의 제어부분으로 *실습 1.로그파일을 이용하여 10초마다 점검하여 특정레벨 발생시 메일로 전송 (nohup CMD) ※nohup CMD : 로그아웃해도 계속 진행 #vi script.shd #chmod 755 script.sh #cp -p /var/log/messages /root/bin/messages #script.sh /root/bin/messages & #echo cri..