본문 바로가기

linux26

[linux] 리눅스 포트 스캔 방법 (nmap port scan) 참고: https://phoenixnap.com/kb/nmap-scan-open-ports nmap은 전세계에서 유명한 네트워크 스캐너입니다. nmap 호스트 보안 도구를 사용하면 방화벽 및 보안 구성이 얼마나 잘 작동하는지 확인할 수 있습니다. 이 포스트에서는 리눅스 시스템에서 nmap을 사용하여 열려 있는 모든 포트를 스캔하는 방법을 알아보겠습니다. 포트 란? 운영체제에서 포트란 네트워크 트래픽에 대해 번호가 매겨진 주소입니다. 기본적으로 서비스 마다 다른 포트를 사용합니다. 예를 들어 일반 웹 트래픽은 포트 80을 사용하고 POP3 이메일은 포트 110을 사용합니다. 여기서 방화벽은 특정 포트를 통한 트래픽을 허용하거나 제한하는 방법으로 작동합니다. 포트 구성에 따라 보안 위험을 유발할 수 있으므로.. 2023. 6. 20.
[linux] 시스템 관리자를 위한 리눅스 명령어 참고: https://www.tutorialspoint.com/25-useful-linux-commands-for-system-administrators 리눅스는 대부분의 시스템 관리자가 서버 및 인프라 관리를 위해 사용하는 오픈 소스 운영체제 중 하나 입니다. 시스템 관리자로서 시스템을 효율적으로 관리하고 문제를 해결하려면 리눅스 명령어에 대한 이해는 필수입니다. 이 포스트에서는 시스템 관리자를 위한 25 가지 유용한 리눅스 명령어와 예제를 알아보겠습니다. ls - List Directory Contents ls 명령어는 디렉토리의 내용을 나열합니다. 기본적으로 현재 디렉토리의 파일과 디렉토리 목록을 나열합니다. 예제 - 현재 디렉토리 내의 모든 파일과 디렉토리를 나열하려면 다음 명령어를 사용합니다. .. 2023. 5. 21.
[linux] 리눅스 재귀적으로 grep 명령어 사용 참고: https://stackabuse.com/how-to-grep-recursively-in-bash/ grep 명령어는 파일 또는 디렉토리의 특정 텍스트를 검색할 수 있는 강력한 도구입니다. 로그분석, 코드리뷰, 텍스트 검색이 필요한 작업 등에 널리 사용됩니다. bash에서 grep 명령어는 단일 파일에서 특정 텍스트를 검색할 수 있지만 디렉토리 및 하위 디렉토리에 있는 여러 파일에서 텍스트를 검색하려면 어떻게 해야할까요? 이런 상황에서 재귀적 grep을 사용합니다. grep 명령어의 재귀적 사용은 디렉토리 및 해당 하위 디렉토리의 모든 파일 내의 텍스트를 검색할 수 있게 해줍니다. 이는 다량의 파일이 있거나 특정 디렉토리 아래의 모든 파일에서 텍스트를 검색하려는 경우 특히 유용합니다. 재귀 gre.. 2023. 2. 6.
[linux] 리눅스 OS 확인 리눅스는 오픈 소스 운영 체제인 관계로 현재 다양한 종류의 리눅스 버전이 존재합니다. 이를 일반적으로 리눅스 배포판 이라고 합니다. Suse, OpenSUSE, Debian, Ubuntu, CentOS, Arch, Fedora, RHEL은 대표적인 배포판 이름입니다. 서버에 설치된 리눅스 OS 버전 및 이름을 알면 보안 패치에 매우 유용할 수 있습니다. 리눅스에서 OS 버전 확인 리눅스에서 OS 이름과 버전을 찾는 방법은 다음과 같습니다. 터미널 프로그램을 실행합니다. ssh로 원격 로그인 합니다. ($ ssh user@server-name) 다음 명령어 중 하나를 입력하여 리눅스의 OS 이름과 버전을 찾습니다. $ cat /etc/os-release $ lsb_release -a $ hostnamect.. 2022. 9. 29.
[linux] 리눅스 IP 주소 확인 방법 TL;DR - IP 주소를 확인하는 리눅스 명령어는 다음과 같습니다. ip addr ip addr show eth0 ifconfig -a ifconfig eth0 ip route ip route show dev eth0 IP 주소란? IP 주소는 192.168.0.1 같은 숫자의 나열 값으로 인터넷에서 데이터 통신을 위해 사용되고 네트워크 인터페이스를 식별하는 기능과 위치를 특정하는 기능을 가지고있습니다. IP 주소는 기기가 인터넷을 통해 데이터 패킷을 보내거나 받을 수 있도록 하는 식별자입니다. 이는 위치와 관련된 정보를 가지고 있어서 양방향 통신이 가능하게 합니다. 대부분의 인터넷 서비스 제공업체(ISP: Internet Service Provider)는 여전히 IPv4를 사용하고 있습니다. 이는 ".. 2022. 9. 21.
[linux] 리눅스 ifconfig 명령어 사용법 참고: https://www.tecmint.com/ifconfig-command-examples/ ifconfig는 리눅스 운영체제의 커맨드라인 인터페이스나 시스템 구성 스크립트를 통해 네트워크 인터페이스의 매개변수를 구성, 관리 및 쿼리하기 위한 간단한 인터페이스 설정 유틸리티입니다. ifconfig 명령어는 현재 네트워크 구성 정보를 표시하고, 네트워크 인터페이스에 대한 IP 주소, 넷마스크 또는 브로드캐스트 주소를 설정하고, 네트워크 인터페이스에 대한 별칭을 만들고, 하드웨어 주소를 설정하고, 네트워크 인터페이스를 활성화 또는 비활성화하는데 사용합니다. 1. 모든 네트워크 인터페이스 설정 보기 인수 없이 ifconfig 명령어를 사용하면 모든 활성 인터페이스 세부 정보를 표시합니다. 또한 ifcon.. 2022. 1. 18.
[linux] 리눅스 CMD에서 OS 버전 확인하는 방법 참고: https://www.cyberciti.biz/faq/how-to-check-os-version-in-linux-command-line/ 참고: https://sisiblog.tistory.com/277 리눅스는 자유오픈소스 운영체제입니다. 이는 다양한 변종이 있는데 일반적으로 리눅스 배포판으로 부릅니다. Suse, OpenSUSE, Debian, Ubuntu, CentOS, Arch, Fedora, RHEL 모두 일반적인 리눅스 배포판 이름입니다. 이 리눅스 서버를 운영할 때 운영체제 버전을 알면 보안패치에 아주 유용하게 쓸 수 있습니다. 운영체제 버전 확인 일반적인 리눅스의 버전을 확인하는 과정은 다음과 같습니다. 터미널 프로그램을 실행 (bash shell) 원격 서버인 경우 ssh 로그인 .. 2022. 1. 13.
[linux] 리눅스 10가지 wget 명령어 사용법 참고: https://www.fastwebhost.in/blog/10-examples-of-linux-wget-command/ wget 명령어는 웹에서 파일 다운로드를 도와주는 리눅스 커맨드라인 유틸리티입니다. 이 명령어는 HTTP, HTTPS, FTP 프로토콜을 이용해 웹서버에서 파일을 다운로드 받습니다. 그리고 스크립트나 cronjob에서도 실행시킬 수 있습니다. wget은 백그라운드에서 실행되는 비인터랙티브 프로그램으로서 쓸만한 기능으로는 미러링이 있습니다. 이 기능으로 웹에서 전체 웹 사이트를 다운로드 할 수 있습니다. wget 명령어의 몇 가지 예를 살펴보겠습니다. 1. 웹페이지 다운로드 다음은 웹에서 파일을 다운로드하는 기본 형식입니다. $ wget http://example.org/file... 2022. 1. 13.
[linux] 리눅스 tail 명령어 사용 예제 (실시간 로그 보기) 참고: https://shapeshed.com/unix-tail/ 리눅스 같은 시스템에서는 cat 명령어로 파일 내용을 볼 때 유용하게 사용할 수 있습니다. 그런데 어떨 때는 파일의 일부분만 보고 싶을 때가 있습니다. 이 때 tail 명령어를 사용하면 됩니다. tail 명령어란 tail 명령어는 리눅스 계열 시스템의 유틸리티로 입력받은 파일의 마지막 부분을 출력하는 프로그램입니다. 기본적으로 tail은 입력파일의 마지막 10줄을 출력하는데 로그파일의 모니터링 용도로 사용할 수도 있습니다. 파일의 마지막 10줄 보는 방법 파일의 마지막 10줄을 보기 위해선 tail 명령어에 읽고 싶은 파일의 이름을 입력하면 됩니다. 그러면 표준 출력으로 파일의 마지막 10줄을 출력합니다. $ tail [파일 명] 2020.. 2019. 12. 10.
[linux] 리눅스 kill 명령어 사용법 (프로세스 죽이기) 참고: https://www.howtoforge.com/linux-kill-command/ 리눅스에서 작업을 할 때 응용프로그램이나 프로세스가 멈추는 것을 볼 수 있습니다. 이 때의 유일한 해결책은 그 프로세스를 종료하는 것입니다. 리눅스는 이러한 시나리오에서 사용할 수 있는 kill 유틸리티를 제공합니다. kill 명령어 kill 명령어는 대개 프로세스를 죽일 때 사용합니다. 하지만 내부적으로는 프로세스에 시그널을 보내 원하는 작업을 하게 하는 명령어입니다. 이 툴을 사용하려면 다음 구문을 사용합니다. $ kill [options] [...] 프로세스 죽이는 방법 죽이려는 프로세스의 pid를 얻은 다음 kill 명령어의 인자로 넘기면 됩니다. $ kill [pid] 예를들어 node.js로 실행 중인 .. 2019. 2. 13.
[linux] 리눅스 ls 명령어 사용 예제 (파일 목록 보기) 원문: https://www.tecmint.com/15-basic-ls-command-examples-in-linux/1. 그냥 파일 목록 보기ls 명령어에 아무 옵션도 붙이지 않고 실행하면 파일 타입, 크기, 날짜 등의 정보없이 파일의 목록만 나열한다. [root@localhost /]# ls bin dev home lost+found misc net proc sbin smartagent sys usr boot etc lib media mnt opt root selinux srv tmp var 2. 좀더 상세한 목록 보기-l 옵션(알파벳 엘)은 파일이나 디렉토리의 크기, 수정시간, 소유자, 권한의 정보를 추가로 보여준다. [root@localhost ~]# ls -l 합계 68 -rw-------. 1.. 2018. 3. 15.
[linux] 리눅스 df 명령어 사용 예제 (디스크 용량 확인) 원문: https://www.tecmint.com/how-to-check-disk-space-in-linux/ 리눅스는 디스크 용량 관련 유틸리티로 'df'를 제공한다. 'df'는 disk filesystem의 약자로 사용가능 공간이나 사용한 공간 등의 정보를 리포트 해주지만 단순 숫자의 나열이 아니라 사람이 직관적으로 내용을 파악할 수 있도록 해주는 옵션도 있다. 1. 파일시스템의 디스크 사용량 확인하기 'df' 명령어는 디바이스 이름, 전체 블럭 수, 전체 디스크 공간, 디스크 사용량, 빈공간, 마운트위치를 보여준다. [root@localhost ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup 1797106.. 2018. 3. 9.
[linux] 리눅스 cat 명령어 사용 예제 (파일 내용 보기) 원문: https://www.tecmint.com/13-basic-cat-command-examples-in-linux/cat 명령어는 리눅스나 유닉스같은 운영체제에서 가장 자주 사용하는 명령어 중 하나입니다. cat 명령어는 파일을 만들거나 내용 보기, 합치기, IO 리다이렉트 등의 기능을 합니다.1. 파일의 내용 보기아래의 예제는 /etc/passwd 파일의 내용을 보여준다.[root@localhost /]# cat /etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologin2. 여러 파일의 내용 보기아래 예는 test1과 test2의 파일 내용을 보여준다.[.. 2018. 3. 9.
[linux] 리눅스 vi 색깔 테마 바꾸기 참고: http://sisiblog.tistory.com/168vim에서는 글자의 색을 간단히 바꿀 수 있도록 몇가지 색상 테마를 제공한다. 이 테마를 사용하는 방법은 ':color [테마 이름]' 이와 같이 사용하면 된다.':color desert' 라고 입력하면 desert 테마로 색상이 바뀌는 것을 확인할 수 있다. 여기서 vim이 제공하는 테마의 이름이 알고싶다면 '/usr/share/vim/vim[VER]/colors/' 이 경로에 '테마이름.vim'으로 확인할 수 있다. 또한 vi 명령모드에서 ':color ' 입력하고(명령 뒤 공백) 탭을 누르면 저장되있는 설정을 돌아가며 설정할 수 있고 기본으로 돌리고 싶다면 default 테마를 선택하면 된다. 2017. 7. 11.
[linux] 리눅스 wget 명령어 - 다운로드 따라하기 참고: http://sisiblog.tistory.com/25리눅스 서버 구축 시 패키지 매니저를 사용하지 않고 입맛대로 빌드하여 사용하고 싶을 때가 있다. 이럴 경우 소스코드를 포함하는 아카이브를 구해야 하는데, 이동식 디스크를 사용할 수도 있지만 네트워크가 연결된 서버라면 웹에서 파일을 다운로드 받는 편이 수월하다.wget으로 파일을 다운로드 하려면 http나 ftp 주소를 알아야한다. 여기서는 적당히 크기가 있는 우분투 배포판을 가지고 다운로드하겠다.wget 명령어 형식은 'wget [다운받을 파일의 주소]'이다. 위의 그림과 같이 입력한 후 실행하면 대용량의 파일도 다운받을 수 있다. 위의 그림은 우분투 iso 파일을 다운받는 중에 캡쳐한 화면이다. 다음카카오 미러를 통하여 다운로드 받고있고 진행.. 2017. 7. 7.
[linux] 리눅스 putty, vi로 'Hello World' 프로그램 만들기 vi 사용 방법: http://sisiblog.tistory.com/176집에있는 컴퓨터로 외부 서버에 접속하여 프로그래밍 하려면 주로 텔넷이나 SSH 클라이언트를 사용한다. 여기서는 터미널 프로그램으로 putty를 사용하겠다.Host Name에 원격 서버의 IP 주소를 입력하고 Port에 할당받은 포트를 입력한 후 Open을 눌러 연결 시도한다. 서버와의 연결이 성공하면 로그인 ID와 비밀번호를 입력한다. 성공하면 환영 메시지나 로그가 출력되고 쉘에 접속하게 된다. 위 그림은 현재 로그인한 계정의 /home 디렉토리로 접속됐다. mkdir 명령어로 테스트용 디렉토리를 만들고 그 디렉토리에 hello.c 라는 이름의 파일을 만든다. vi의 사용법은 상단의 링크에서 확인할 수 있다. 이제 코딩하기 직전까지.. 2017. 7. 6.
[linux] 리눅스 vi 명령어 - 사용법 따라하기 vi 명령어 요약: http://sisiblog.tistory.com/168문서 파일을 만들거나 편집하려면 명령줄에 'vi [파일이름]'을 입력한다. 파일이름 항목에 기존에 존재하는 파일을 넣으면 그 파일을 읽어 편집이 가능하게하고, 존재하지 않는 파일이면 새로 파일을 만들어 편집할 수 있게 한다.현재 디렉토리에는 asdf.txt가 없는 상황이다. 여기에 'vi asdf.txt'를 입력하면 asdf.txt를 만들고 편집할 수 있는 화면이 나온다. 위 그림은 vi가 실행된 화면이다. 최초 실행 시 편집모드가 아닌 명령모드로 열리기 때문에 실질적인 문서 편집을 할 수 있는 상황은 아니다. 여기서 편집을 하려면 키보드의 'i'를 입력한다. (소문자 i, 필요에 따라 a 또는 o를 입력할 수 있다. 자세한 기능.. 2017. 7. 6.
[linux] 리눅스 "rm -rf /" 사용 예제 시스템 정보삭제하는데 재귀적으로 강제로 루트부터rm -rf /실수로 입력하지 못하도록 되어있음 /proc, /sys 등은 남겨두고 모두삭제 2017. 6. 16.
[linux] 리눅스 find 명령어 사용 예제 (파일 찾기) 참고: http://www.binarytides.com/linux-find-command-examples 1. 현재위치 아래에 있는 모든 디렉토리와 파일 표시 $ find $ find . $ find . -print 2. 특정 디렉토리에서 찾기 $ find ./sub1 파일이나 디렉토리 이름에 와일드 카드 사용 $ find ./ -name "*test*" 3. 파일만, 디렉토리만 찾기 $ find ./ -type f -name "sub*" $ find ./ -type d -name "sub*" 관련 글 리눅스 재귀적 grep 사용 방법 2017. 6. 16.
[정보보안] arp spoofing (arp 스푸핑) address resolution protocol(arp)는 tcp/ip의 주요한 프로토콜로 ip 주소의 물리적 주소(mac address)를 알아낼 목적으로 만들어졌습니다. application 레이어의 네트워크 프로그램은 ip 주소를 사용해 다른 호스트와 통신하는 반면 datalink 레이어는 네트워크 카드에 영구적으로 각인되어있는 물리적 주소를 사용합니다. 패킷 포멧은 다음과 같습니다. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | HW type = 0x0001 (Ethernet) | Protoco.. 2016. 5. 10.