리눅스는 운영체제의 종류이다.
운영체제는 OS(Operating System)의 약어로 하드웨어 컨트롤, 응용프로그램을 실행해주는 하나의 소프트웨어이다.
리눅스는 보통 네트워크분야쪽에서 많이 사용되는 운영체제로써 IT기업들이 많이 사용한다.
데비안 리눅스
여기서 내가 사용하는건 리눅스운영체제의 기반으로 만들어진 데비안이라는 리눅스를 사용한다.
리눅스에서는 수많은 배포판이 존재하는데 그 중 본인이 좋아하거나 공부목적으로 사용하기 위해 본인취향에 맞게 선택하면 된다.
데비안 리눅스는 이안머독이라는 똑똑하고 잘생긴 오빠야가 만들었다. 자세한 설명은 포스팅하면서 이어 나가겠다.
리눅스를 설치하기 위해 2가지, 듀얼부팅할것인지 가상화를 돌릴건지 선택하면 된다. 나는 가상화롤 진행할것이며 가상화는 VMware 혹은 Virtual Box를 사용할것이다.
이전 포스트를 봤으면 아마 리눅스 설치까지 다 마쳤을꺼다.
리눅스 기초 명령어
리눅스는 기본적으로 명령어를 이용하여 작업을 수행한다. 우리가 사용할 명령어를 사용하기전에 리눅스에 대한 구조를 알아야한다.
일단 우리가 사용하는 컴퓨터의 구조를 알아보자면
본체, 마우스, 키보드, 스피커, 모니터 이렇게 구성된다.
이거는 뭐 누구나 다 아는거고 여기서 핵심은 본체이다.
본체를 뜯어보면 복잡한 구조로 되어있다.
본체의 구성은 크게
메인보드, CPU, 메모리, 하드디스크, SSD, 그래픽카드 이렇게 되어있는게 국룰이다. 이중에서 하나라도 없으면 한국인들의 인내심을 테스트하는 사탄이 탄생하게 된다.
여기서 CPU, 메모리, 하드디스크를 중심적으로 본다.
CPU : Central Processing Unit의 줄임말로 "중앙처리장치"이다. 이는 우리가 작업하는 컴퓨터들의 핵심이다.
뭐 우리가 프로그래밍을 아예 전문적으로 파고들거 아니면 상세하게 알아도 쓸모는 없다.
RAM(메모리) : Random Access Memory의 줄임말로 읽고 쓰기가 가능하며, 주기억장치라고 한다.
HDD/SSD(저장장치) : HarD Disk, Solid State Disk의 줄임말로 각자의 차이점이 있다.
HDD - 자가를 이용하여 데이터를 저장시킨다. 데이터 읽기/쓰기가 오래걸리지만 가격이 저렴
SSD - ssd는 반도체의 일종으로 전자식으로 작동한다. 데이터 읽기/쓰기가 hdd에 비해 빠르지만 가격이 비쌈
리눅스는 보통 텍스트/그래픽 이렇게 나뉜다.
우리가 설치했던 칼리 리눅스는 그래픽으로 주로 사용된다.
만약 부팅시키고 로그인까지 했다면 아마 아래 사진처럼 나올거다.
역시 멋지다. 우리는 중요한건 터미널이라는 프로그램이다. 터미널은 왼쪽위에 있다.
빨간 네모칸에 있는게 터미널이다.
터미널은 그래픽 기반 운영체제에서 쓰이는 프로그램으로 쉘이라는걸 커널에 전달해준다.
커널 : 커널은 운영체제중에서 제일 기초중이며, 운영체제의 핵심이라고도 한다. 하드웨어에게도 명령을 내려주는 길목이기도 하며 컴퓨터를 완전하게 통제도 가능하다.
쉘 : 쉘은 컴퓨터를 사용하는 사용자가 컴퓨터에게 명령을 내리기 위한 도움 어시스트이다. 즉 우리가 컴퓨터를 통제를 할려면 커널에 접근 해야 하는데 우리가 커널에게 말을 걸려면 어떻게 해야 할까? 바로 쉘이라는것을 사용하여 커널에게 명령하고 커널은 쉘이 가져다 주는 명령을 받아먹고 시스템에게 명령은 내린다.
사용자 > 쉘 > 커널 > 하드웨어 이렇게 명령을 내리면 하드웨어서 명령을 처리해주고
하드웨어 > 커널 > 쉘 > 사용자 순으로 받아서 우리에게 결과를 보여준다.
그럼 쉘에게 어떻게 우리의 의사를 전달할까
바로 터미널이라는 귀엽고 아기자기하고 앙증맞은녀석을 소환시킨다. 터미널은 그냥 입력과 출력을 하는거다.
터미널을 실행하면 검은창에 흰 글자가 나온다.
칼리 리눅스는 배경이 약간 투명이 들어가는데 이와 비슷한게 윈도우에도 있다.
컴퓨를 그냥 인테리어용도로 쓰거나, 문서용으로 쓰는 컴퓨터 사용자라면 저거 보고 이런생각이 든다.
"이거 해커들이 사용하는것"
물론 사람마다 차이가 있지만 내 주변 컴맹들은 이거 틀어주면 소리지르면서 뛰댕긴다. 진짜 해커들이 사용하는건줄 알고 본인들도 "야 이건 X됬다. 내가 이런 위험한걸 깔아놨다니..." 진짜 그때는 한대 쥐어박고 참교육 5시간 했을거다.
암튼 이거는 사용하는사람에 따라 위험할수도 있고, 위험하지도 않을수도 있다. 그 이유는 나중에 설명.
리눅스와 윈도우는 성질 자체가 틀리다. 그래서 리눅스에서 배운걸 아무리 윈도우에서 사용하더라도 안된다. 물론 되는것도 있지만 대부분 안된다.
이제 기초 명령어들을 알아보자. 이거는 해킹 및 기본 리눅스에서 많이 사용하는 명령어들을 적은거니 잘 보도록.
cd
cd는 change directory의 줄임말이다. 리눅스에서는 폴더라고 하지 않고 디렉터리, 디렉토리 라고 불린다.
쉽게해서 다른 폴더를 갈떄 사용하는거다.
사용법은 cd "디렉터리 경로"를 적으면 이동된다. 이거는 윈도우에서도 가능하다.
cd를 적고 원하는 디렉터리 이름을 적으면 된다.
이동방법은 2가지가 존재한다.
절대경로와 상대경로로 지정한다.
이거는 검색해보자. 알려주기 귀찮아서 그러는거 절대 아니니 오해 절대절대절대절대절대절대절대절대절대절대절대 안했으면 좋겠다는 나의 작은 마음을 가져본다.
이렇게 해서 경로 이동이 가능하다.
ls
list의 줄임말로 현재 디렉터리에 뭐가 있는지 보여주는거다. 파일이 뭐가 있는지, 디렉터리가 뭐가 있는지, 이상한 파일이 있거나 내가 제일 좋아하는 파일이 있다거나.....
ls는 옵션이 많다.
여기서 옵션이란, 명령어 뒤에 붙이는 옵션으로 숨겨진파일이나 디렉터리를 보여주거나 권한, 만든 날짜등 보여주는거 같은 부가옵션이다. 이것도 명령어에 따라 옵션이 틀려진다. 명령어는 족히 200개가 넘는다.
그럼 그 200개가 넘는 명령어에 옵션을 다 외워야 하는가?
그건 아니다. 인간도 본인들의 한계를 잘 알고 있다. 그래서 명령어 뒤에 help를 붙이면 옵션이 뭐뭐 있는지 보여준다. 착하다.
ls는 그냥 파일 및 디렉터리의 이름만 보여준다. 내가 이걸 언제, 권힌이 뭐뭐 있는지 모른다.
그냥 ls만 입력하면 그 디렉터리에 있는 파일 및 디렉터리만 보여준다. 디렉터리는 보통 파란색으로 표시된다.
이 디렉터리 색상은 리눅스 배포판에 따라 다르니 잘 알아두자.
만약 여기서 숨겨진게 있어서 그걸 보고 싶으면 옵션 -a를 붙여서 볼 수 있다. 리눅스에서 옵션은 하이픈(-)기호를 써서 옵션이라는걸 알려준다. 하이픈 뒤에 옵션을 붙이면 되고 명령어 뒤에는 띄어쓰기로 해야한다. 안그러면 오류가 일어난다.
이렇게 오류가 나오니 띄어쓰기는 묻지도, 따지지말고 꼭 하십셔
아쉽게도 여기에는 숨겨진 파일이 없나보다. 까비
또한 -l(L)옵션을 붙여서 상세정보도 확인 가능하다.
전보다 복잡해졌다. 이거는 꼭 알아야 하니 궁금하지도 않는 TMI를 할 테니 잘 듣도록.
빨간부분만 보자, 알파벳과 하이픈이 많다. 이거는 권한이다. 파일과 디렉터리에 어떤 권한이 있는지 확인이 가능하다. 이거는 권한관련 포스팅 할 때 상세하게 알려줄거다. 패쓰
그 다음 숫자는 파일 및 디렉터리에 대한 심볼릭 링크 및 하드링크에 대한거다.
링크들을 이해하기위해서 inode라는걸 알아야한다.
inode는 파일모드, 링크수, 소유자명, 그룹명,.= 파일크기, 파일 생성날짜와 시간, 파일 주소, 마지막접근정보, 수정정보, 아이노드 정보 등 데이터이다.
심볼릭 링크 : 윈도우에 바로가기랑 비슷하다. 디렉터리 grub은 5개나 바로가기가 있다는거다.
하드 링크 : 복사본이라고 보면 쉽다. 하지만 성질이 약간 틀리는 애매모호한 녀석이다.
다음은 root root이라는 똑같은게 있다. root이 무슨뜻인지는 나중에 알려주고 저거는 소유권을 나타내는거다.
즉 root이라는 사용자가 소유자라는거다. 그리고 2개로 되어있는데 앞쪽 root은 유저(User), 뒷쪽은 그룹이다.(Group)
그 다음은 파일 및 디렉터리에 대한 용량이다.
눈치가 빠른 사람들은 알겠지만 날짜와 시간이다.
파일 및 디렉터리 이름이다. 칼리 리눅스에서는 하얀색은 파일, 파란색은 디렉터리로 표시된다.
pwd
pwd는 Print Working Directory의 줄임말로 지금 본인이 어느 경로에서 작업을 하고 있는지, 어느 디렉터리에서 보고 있는지 알려주는 명령어다. 약간 대단하지도 않지만 그래도 있으니깐 써 먹는데 약간 효자다.
허무하다.
나머지 명령어는 리눅스에대해 조금 들어가면서 설명하는게 나을거같다. 매번 캡쳐 뜨고 그림 그리고 매번 이러니 귀찮은게 절대절대절대절대 맞다.
모의해킹
본인은 모의해킹을 바로 할려고 마음먹지는 않았다. 모의해킹 하기 전에 리눅스먼저 관심을 가졌지만, 리눅스에 대한 활용도도 찾아보니깐 의외로 쓰이는곳이 많았다. 그러던 중 해킹과 관련된것도 찾아보고 조금 더 알아보니 내가 그나마 관심있는 분야이기도 하다.
모의 해킹은 해킹의 일종이다.
해킹이라고하면 다른 사람들이 똥씹은 표정으로 나쁜것 이라는 마인드를 가지는데 사실 맞다. 반박할수없다.
뉴스에 해킹관련된거 찾아보면 다른사람의 정보를 훔쳐보는 1급변태들이 나오는데 당연히 사람들이 안좋게 인식할수도있지.
해킹은 좋은부분도 있고 나쁜 부분도 있다.
해커는 해킹을 하는 사람을 부르는 명칭인데 해커에서도 종류가 있다.
블랙헤커 : 해커
화이트해커 : 좋은 해커
그레이 해커 : 나쁨(블랙) + 좋음(화이트) = 나좋(그레이)
해커에 대한 종류는 이렇게 크게 3가지가 있다.
예를들면 우리집에 강도가 들어왔다. 이 강도를 때려 잡을려면 경찰이 필요하다.
강도는 블랙해커고 경찰이 화이트해커
인터넷세계는 살인자도 있고 강도도 있다. 물론 성범죄자도 있고, 인터넷 세계는 우리가 생각하는 이상으로 넓다.
넓다고 표현을 하는게 맞는지 모르지만 우주랑 비슷하다고 보면 된다. 끝이 어딘지 모른다.
인터넷세상에서 사고를 치면 숨어도 모를것이다. 그래서 아직까지 범죄를 저지르고 잡히지 않는 해커들이 존재한다.
물론 본인들은 처신 잘 하길 바란다.
못잡는게 아니라 잡는 방법을 모를 뿐이다. 기술은 발전한다. 어제 못잡았던걸 내일 잡을수 있다.
끝으로
사실 정보보안 같은걸 포스트를 할까 말까를 고민을 많이 했다. 모의해킹은 기술을 배우는건 좋지만 어떻게 쓰이는지에 따라 다르다.
줄을 끊을때 쓰면 문제 없지만 사람한테 쓰면 문제가 생긴다.
이렇게 해킹기술을 어떻게 쓸건지 생각해야 한다.
그래도 일단 진행을 해 보고 문제가 생길거같다면 바로 다른걸로 넘어갈거다.
그리고 칼리 리눅스는 컴퓨터보다는 노트북에 설치하는걸 권장한다.
해킹은 무선쪽에서도 큰 이슈를 만들기 때문이다.
무선해킹쪽으로 공부하면 제일 좋을 때다. 무선통신이 한창 발달하고 있으니
노트북에는 기본적으로 블루투스, 와이파이, 캠 등등 해커들의 벌꿀같은 존재이기 때문이고 노트북 하나만 공격하면 개인정보, 카메라도촬, 무단 도청(마이크, 스피커), 와이파이 해킹, 블루투스 기기 공격 등 많은걸 가능하니깐.
최근에 공부시작한 "정보보안"이지만 전부 독학으로 진행한거다. 그래서 나도 잘 모르는 부분 혹은 잘못된 정보가 있을거다. 이거는 정보보안 고인물들이 바로 지적 해 줄테니 아무것도 모르는 사람들은 그냥 고인물 편 들어주길 바라며 나한테 훈수둬주길 바란다.
이때 아니면 언제 배우겠음
일단 정보보안 마무리는 조금 허전하게 마무리 했지만 다음에는 알차게 나올지 모르는 정보보안 기대해주길 바란다.
또한 다른 포스트가 늦게 올라와도 이해해주길 바란다.
그 이유는
카스글옵이 놀아달라고 떼 씀
ㅎㅎ ㅈㅅ;;
'리눅스, 네트워크' 카테고리의 다른 글
메일서버 - 시작하기 (1) | 2024.03.24 |
---|---|
정보보안 - AP (0) | 2023.08.13 |
메일서버 설정하기 - 동작원리 알기 (0) | 2022.08.10 |
정보보안 (0) | 2021.11.03 |
리눅스 (0) | 2021.05.27 |