공부

리눅스 실습 - 원격 리눅스 서버에 접속하기

낑깡28 2023. 3. 14.

오늘은 원격 리눅스 서버에 접속하기를 공부해 보았습니다.

 


access_count.sh
리눅스 명령어를 이용하여 access.log파일에서 130.237.218.86에 접속한 기록을 필터링해 보기

 

1. 교육생에게 제공되는 'student.pem' 파일을 웹에서 리눅스로 다운로드합니다.

 

2. 다운로드한 파일에 권한을 부여해 줍니다.

$ chmod 400 student.pem

 

3. 이제 원격 서버에 접속해 줍니다. 이때 원격 서버 주소는 3.34.229.232, 아이디는 깃허브 아이디를 사용했습니다.

$ ssh -i "student.pem" ostarry0728@3.34.229.232

 

원격 서버에 접속을 성공하면 나타나는 화면입니다.

 

4. 완료되었다면 'access.log' 파일을 웹에서 리눅스로 다운로드합니다.

$ wget https://gist.githubusercontent.com/yrkimyy/82a0d437caceabda591d5ac172feb5fa/raw/fd00a5211cd9a1d2aa99114d997d16ef2ad0b2af/access.log

 

5. 그다음 access_count.sh를 생성해 주겠습니다.

$ nano access_count.sh

 

6. 파일을 생성한 후 파일 내에 명령어를 작성해주겠습니다.

#! /bin/bash

echo `cat -n access.log | grep -c '130.237.218.86'`

 

이 명령어 내용은 명령어 cat으로'access.log'의 -n(각 줄의 번호도 함께 출력) 하는 내용을 가져오는 것과 동시에 '130.237.218.86' IP의 -c(패턴과 일치하는 줄 수를 출력) grep 해오겠다는 내용입니다.

 

 

7. 작성 후 Ctrl x (nano 종료 커맨드)를 시행한 뒤 Y(Yes)를 눌러 저장해 주고 Enter를 눌러주면 이전 프롬프트 화면으로 돌아오게 됩니다. 그다음 'access_count.sh' 파일에 '읽기 쓰기 권한'을 부여해 줍니다.

$ chmod 700 access_count.sh

 

8. 완료되었다면 다음 명령어를 실행해 봅니다.

$ ./access_count.sh

 

 

결과 값은 357이 나옵니다.

 


 

response_200_count.sh
access.log 에서 마지막 100줄의 로그 중, 상태 코드가 200인 로그를 추출하여 새로운 파일에 저장해보기

 

1. 해보고자 하는 주제를 명령어로 풀어 써봅니다. 동시에 'response_200.log' 파일을 생성합니다.

$ tail -n 100 access.log | grep HTTP/1.1 | grep 200 > response_200.log

 

2. nano response_200.log로 편집기를 실행하여 명령어를 입력 해줍니다.

#! /bin/bash
< response.log wc -l

 

 

3. 입력 후 내용을 저장 후 편집기를 나와줍니다. 그리고 파일에 권한을 부여해줍니다.

$ chmod 700 response_200_count.sh

 

4. 완료 되었다면 다음 명령어를 실행해봅시다.

$ ./response_200_count.sh

 

 

결과 값은 93이 나옵니다.

댓글