mu-sa의 등록된 링크

 mu-sa로 등록된 티스토리 포스트 수는 107건입니다.

SSTI(Server Side Template Injection)이란? [내부링크]

Web Template Engine 웹 템플릿 엔진은 동적인 웹 페이지를 생성하기 위해 사용되는 도구나 프레임워크입니다 보통 HTML, CSS, JavaScript 등 프론트엔드와 백엔드 코드 데이터를 결합하여 사용자에게 동적인 웹 페이지를 제공합니다 이 웹 템플릿 엔진은 서버 사이드 템플릿 엔진과 클라이언트 사이드 템플릿 엔진으로 나눠집니다 프레임워크 : 소프트웨어 개발을 위해 사용되는 구조화된 환경 또는 플랫폼을 뜻함 서버 사이드 템플릿 엔진 (Server Side Template Engine) 클라이언트가 데이터를 전달하면 웹 서버는 DB 또는 API에서 데이터를 미리 정의된 템플릿에 넣어 html을 구성합니다 그리고 구성된 html을 다시 클라이언트 쪽으로 전달해 줍니다 즉 HTML 코드에서 고정..

OS Injection이란? [내부링크]

OS Injection OS Command Injection 또는 Shell Injection은 웹 응용 프로그램이 구동 중인 웹 서버 운영체제에서 명령을 실행하는 취약점입니다 이때 웹 응용 프로그램은 HTTP 폼, HTTP 헤더, 쿠키와 GET 파라미터를 통해 사용자로부터 시스템 Shell을 전달받는데 사용자가 제공하는 입력 값에 대한 검증이 제대로 구현되어 있지 않다면 해당 취약점을 악용할 수 있습니다 이 취약점을 통해 명령어를 실행하면 웹 서버에 구동하는 계정의 권한으로 실행됩니다 이 계정의 권한으로 공격자의 권한을 상승시키거나 웹 응용 프로그램을 장악하여 데이터를 손상시킬 수 있습니다 즉 간단히 설명하자면 사용자가 웹 사이트에 쉘 실행 함수를 주입시켜 시스템 명령어를 실행하는 공격입니다 OS In..

불충분한 인증과 인가 및 프로세스 검증 누락 [내부링크]

불충분한 인증과 인가를 설명하기 앞서 HTTP 헤더 구조에서 설명한 파라미터에 대해 잠깐 되짚어 보겠습니다 파라미터(매개변수)란? 파라미터는 매개변수라는 의미를 지니는데 보통 외부에서 전달된 데이터로 사용됩니다 위 사진에 Query String은 ? 뒤에 있는 문자열을 뜻합니다 즉 ? 뒤에 있는 cmd부터는 URL 파라미터 영역입니다 URL 파라미터는 웹 서버에 저장된 프로그램을 사용자가 웹 브라우저를 이용하여 값을 전달하는 것입니다 파라미터는 [파라미터 이름] = [파라미터 값]으로 사용되며 파라미터가 여러 개 일 때는 '&' 기호를 입력하여 파라미터를 이어주는 역할을 합니다 파라미터는 주로 웹 브라우저 상에서 사용자가 페이지를 클릭하여 전환할 때 발생하게 됩니다 불충분한 인증이란? 불충분한 인증은 앞..

파일 업로드 취약점(File Upload Vulnerability) [내부링크]

Web Directory 웹 디렉터리는 웹 사이트의 온라인 카테고리입니다 웹 검색 엔진과 다른 역할을 가지는데 웹 검색 엔진은 사용자가 특정 키워드로 정보를 검색할 때 관련된 웹 페이지를 찾는 반면 웹 디렉터리는 특정한 주제나 카테고리에 관련된 웹 사이트를 정리하여 보여주는 역할을 합니다 File Upload Vulnerability 파일 업로드 취약점은 게시판 등에서 파일의 업로드에 대한 규제가 없을 경우 해커가 악성 스크립트 파일(asp, jsp, php 등)을 업로드하고 파일을 실행시켜 시스템 권한을 획득하거나 사용자의 정보를 탈취할 수 있습니다 파일 업로드 취약점의 동작 원리를 이해하기 앞서 일반적으로 웹 애플리케이션에서 파일 업로드가 어떻게 처리되는지 알아야 합니다 보통 사용자가 파일을 업로드하..

파일 다운로드 취약점(File Download Vulnerability)이란? [내부링크]

파일 다운로드 취약점 원리를 알아보기 앞서 절대 경로와 상대 경로부터 살펴보겠습니다 절대 경로 컴퓨터가 지정한 파일의 최초 경로를 절대 경로라고 합니다 예를 들어 hello.txt 파일을 생성할 때 이 경로가 C:\users\document\hello.txt으로 표시된다면 hello.txt 파일의 절대 경로가 됩니다 이처럼 절대 경로를 알고 있으면 파일 위치를 어디서든 접근할 수 있습니다 그러나 절대 경로가 변경되면 그 위치를 수정해야 하는 단점이 있습니다 요약 : 절대적인 기준인 최초 디렉터리(/)를 기준으로 경유한 경로를 모두 기입하는 방식 상대 경로 현재 파일의 위치를 기준으로 파일의 상대적인 경로를 표현합니다 예를 들어 hello.txt 파일이 ./musa/hello.txt 경로에 존재할 때 절대..

[Dreamhack] simple_sqli_chatgpt 문제 풀이 [내부링크]

서버를 생성하고 문제 파일을 다운로드합시다 사이트를 확인해 보니 지난 시간에 푼 simple_sqli과 유사해 보이는데 1개의 userlevel 입력란만 받고 있네요 #!/usr/bin/python3 from flask import Flask, request, render_template, g import sqlite3 import os import binascii app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open('./flag.txt', 'r').read() except: FLAG = '[**FLAG**]' DATABASE = "database.db" if os.path.exists(DATABASE) == False: db =..

[Dreamhack] simple_sqli 문제 풀이 [내부링크]

서버를 생성하고 문제 파일을 다운로드해 주세요 사이트에 접속하면 login 링크가 뜨는데 이 링크를 통해 접속하면 로그인 정보를 입력하라고 나옵니다 이것만 봤을 때 로그인 정보에 SQL 문법을 대입하며 관리자 계정으로 로그인하라는 거 같습니다 #!/usr/bin/python3 from flask import Flask, request, render_template, g import sqlite3 import os import binascii app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open('./flag.txt', 'r').read() except: FLAG = '[**FLAG**]' DATABASE = "database.db"..

[Dreamhack] XSS-2 문제 풀이 [내부링크]

xss-2 문제도 xss-1 문제와 동일하게 서버를 생성하고 문제 파일을 다운로드해 주세요 xss-2 사이트에 각각 항목을 살펴보면 vuln(xss) page는 xss-1과 다르게 alert 부분이 작동되지 않습니다 memo 부분은 xss-1과 동일하게 파라미터 값이 문자열로 출력됩니다 flag 항목도 동일하게 작동됩니다 #!/usr/bin/python3 from flask import Flask, request, render_template from selenium import webdriver from selenium.webdriver.chrome.service import Service import urllib import os app = Flask(__name__) app.secret_key = ..

[Dreamhack] XSS-1 문제 풀이 [내부링크]

이번 시간에는 드림핵 워게임인 XSS 취약점을 이용해서 플래그를 찾아봅시다 1 = 서버를 생성하여 XSS 취약점이 있는 사이트에 접속 2 = 해당 사이트에 문제 파일을 다운로드 받아 확인 3 = XSS 취약점을 이용해서 찾아낸 Flag를 입력 사이트에 접속하면 3가지 항목이 존재하는 걸 알 수 있습니다 우선 이 항목들이 각각 어떤 역할을 수행하는지 살펴봅시다 첫 번째 항목인 vuln(xss) page의 접속하면 스크립트가 필터링 없이 작동됩니다 두 번째 항목의 memo는 URL의 memo 파라미터 값이 화면에 출력되는 모습을 알 수 있습니다 하지만 앞서 작성한 자바스크립트는 문자열로 처리돼서 그대로 출력되네요 세 번째 항목은 param의 파라미터 값을 입력하고 제출 버튼을 누르면 good 알림이 나오는 ..

SQL Injection 공격 기법 [내부링크]

SQL Injection SQL Injection은 웹 서버와 데이터베이스의 소통 언어인 SQL 언어에 악성 SQL 문을 주입시켜 데이터베이스 안에 있는 데이터를 탈취할 수 있는 공격입니다 간단한 예시를 들어 설명하자면 우리가 클라이언트를 통해 웹 서버에 로그인 요청을 보낼 때 웹 서버는 요청 정보를 DB랑 소통하기 위해 '무사'의 비밀번호 1234라는 SQL 언어로 요청합니다 그러면 DB는 '무사'의 비밀번호 1234를 찾아 맞으면 웹 서버에게 맞다고 응답하여 클라이언트에 로그인이 정상적으로 작동되게 됩니다 이때 SQL Injection은 '무사'의 비밀번호 1234라는 SQL 언어에 '무사의 비밀번호를 1111로 변경해 줘 그리고 뒤에 문자는 무시해 줘'라는 코드를 주입시킬 수 있습니다 원본 : '무..

SQL(Structured Query Language)이란 [내부링크]

SQL(Structured Query Language)이란 SQL은 구조화된 쿼리(query) 언어이며 데이터베이스에 데이터를 추출하고 조작하는 데 사용하는 데이터 처리 언어입니다 즉 'SQL'은 데이터베이스의 프로그래밍 언어입니다 SQL에서 사용되는 명령문은 아래 표와 같습니다 유형 명령문 DQL: Data Query Language SELECT(데이터 검색 시 사용) DML: Data Manipulation Language 데이터 조작어 - 데이터 변경 시 사용 가능 INSERT(데이터 입력) UPDATE(데이터 수정) DELETE(데이터 삭제) DDL: Data Definition Language 데이터 정의어 - 객체를 생성하거나 변경할 때 사용 CREATE(데이터베이스 객체 생성) ALTER(데..

DB - 데이터베이스란? [내부링크]

DB - 데이터베이스 데이터베이스는 클라이언트가 요청한 데이터 정보의 조직화된 모음으로 웹 서버에 데이터를 보관하는 저장소입니다 웹 구조 때 설명한 것처럼 네이버에 로그인할 때 사용자의 로그인 정보가 네이버 웹 서버 데이터베이스에 저장된다고 보면 됩니다 c 데이터베이스의 정의 1. 공유 데이터(Shared data) : 어느 하나의 프로그램에 속한 것이 아니라 대다수의 사용자나 프로그램의 공동으로 공유 가능한 데이터입니다 2. 통합된 데이터(Integrated data) : 데이터가 중복되지 않는 것을 의미합니다 3. 운영 데이터(Operational data) : 데이터베이스는 업무를 수행하기 위해 지속적으로 데이터를 유지해야 하는데 이를 유지하기 위해 필요한 데이터다 4. 저장된 데이터(Stored ..

XSS GAME 실습 [내부링크]

"이 내용은 절대로 악의적인 목적으로 사용돼서는 안됩니다. 발생되는 모든 책임은 자신에게 있습니다." 지난 시간에 배운 XSS 개념을 가지고 XSS GAME 사이트에 문제를 풀어봅시다 [ ↓ XSS GAME 사이트 ↓ ] XSS game Welcome, recruit! Cross-site scripting (XSS) bugs are one of the most common and dangerous types of vulnerabilities in Web applications. These nasty buggers can allow your enemies to steal or modify user data in your apps and you must learn to dispatch the xss-game..

XSS(Cross Site Scripting) 공격이란? [내부링크]

XSS(Cross Site Scripting) 공격이란 XSS(Cross Site Scripting)은 클라이언트 사이드의 취약점으로 해커가 피해자 브라우저에 스크립트가 실행되도록 하여 사용자의 쿠키와 세션을 탈취하거나, 피싱 공격을 진행하는 것을 말합니다 간단히 설명하자면 웹 브라우저에 악성 스크립트를 삽입할 수 있는 취약점을 이용하여 피해자에 세션 및 쿠키 정보를 탈취할 수 있습니다 피싱 : 피해자를 속여 중요한 데이터를 누설하게 하고, 바이러스를 다운로드하게 되어 사이버 범죄에 노출시키도록 유도하는 것을 말합니다 XSS 공격은 사용자가 삽입한 내용을 출력하는 기능에서 발생합니다 클라이언트가 HTTP 형식으로 웹 서버에 정보를 요청하면 서버로부터 해당 정보를 HTML, CSS, JS 등의 웹 리소스를..

쿠키와 세션 [내부링크]

쿠키(Cookie)란 사용자가 웹 브라우저에 방문할 때 클라이언트 측에 저장되는 key=value 쌍의 문자열로 구성된 작은 파일입니다 웹 브라우저는 쿠키를 일정 시간 동안 저장하거나 사용자가 브라우저에 머무르는 동안 정보가 유지됩니다 예를 들어 온라인 쇼핑몰 브라우저에 민감하지 않고 서비스 제공에 필요한 데이터를 쿠키로 설정하여 정보를 유지합니다 또한 쿠키는 HTTP 프로토콜의 비상태성을 보완하여 등장했습니다 그러나 쿠키는 사용자가 연속된 요청을 식별하거나 사용자 인증에도 사용되는 반면에 공격자의 표적이 되기 쉽습니다 비상태성 : HTTP 프로토콜은 요청과 응답을 주고받는 도중 상태(Status)를 저장하지 않습니다 따라서 HTTP 프로토콜 이전에 보냈던 요청이나 응답을 기억하지 못합니다 간단히 설..

Fiddler의 간단한 기능과 패킷 변조 [내부링크]

"이 내용은 절대로 악의적인 목적으로 사용돼서는 안됩니다. 발생되는 모든 책임은 자신에게 있습니다." 앞에서 간단하게 설명한 프록시 개념처럼 Fiddler(피들러)는 컴퓨터와 웹 서버 또는 서버 사이의 HTTP 및 HTTP 트래픽을 기록, 검사 및 변경하는 데 사용되는 디버깅 프록시 서버 도구입니다 쉽게 설명하자면 웹 서버 또는 서버 사이의 HTTP 및 HTTP의 데이터량을 기록하거나 검사 및 변경하는 데 사용됩니다 이는 시스템의 오류를 찾고 해결하는 중계기 역할을 수행하는 서버 도구라고 볼 수 있습니다 트래픽(Traffic) : 서버와 네트워크 장치에서 일정 시간 내에 흐르는 데이터의 양 디버깅(Debugging) : 프로그램 개발 단계 중에 발생하는 시스템의 오류를 찾고 그 원인을 해결하는 과정 Fi..

OSI 7계층이란? [내부링크]

OSI 7계층이란? 네트워크에서 통신이 일어나는 과정을 7단계를 나눈 것을 의미합니다 그런데 왜 7계층이나 나누었을까? 계층을 나눈 이유는 통신이 일어나는 과정을 단계별로 파악할 수 있기 때문입니다 7단계 중 특정한 곳에 문제가 생기면 장비 및 소프트웨어를 건드리지 않고 문제가 생긴 단계만 고칠 수 있습니다 예를 들어 PC방에서 메이플스토리를 하는데 연결이 끊겼다 첫 번째 문제점으로 모든 PC가 문제가 있다면 라우터 문제(3층 네트워크 계층)이거나 회사의 회선 문제(1층 물리 계층)로 파악할 수 있다 두 번째로 한 PC만 문제가 있고, 메이플스토리 소프트웨어에 문제가 있다면 (7계층 응용(애플리케이션)계층) 이런 식으로 특정 문제가 발생하는 계층만 고치면 문제를 해결할 수 있습니다 1계층 - 물리 계층(..

프록시(Proxy)란? [내부링크]

프록시(Proxy)란? '대리'나 '대신'의 의미로 클라이언트와 서버 사이에 존재하여 중계기 역할로 통신을 수행하는 것을 말합니다 세부적으로 설명하자면 클라이언트가 프록시 서버로 데이터를 전달 > 프록시 서버는 전달받은 데이터를 서버에 요청 > 서버는 요청받은 데이터를 다시 프록시 서버로 전달 > 프록시 서버는 서버로 받은 데이터를 클라이언트에게 전달하는 순서로 진행됩니다 프록시의 특징 1. 프록시 서버를 통해 데이터를 주고받는 이유는 보안적인 문제가 있습니다 예를 들어 프록시 서버를 사용하지 않고 사용자 쪽에서 해당 서버로 정보를 요청하게 되면 서버의 주소가 쉽게 노출되기 쉽고, 이를 통해 다른 사용자가 서버로 접근할 수 있다 프록시 서버를 사용하면 다른 사용자가 서버의 위치의 접근하기가 어려워집니..

HTTP 헤더 구조와 GET과 POST 메소드 방식 [내부링크]

이번에는 HTTP 헤더 구조에 대해 살펴보겠습니다 HTTP 헤더 구조 HTTP는 브라우저와 서버가 통신할 수 있도록 하는 프로토콜입니다 이때 HTTP는 서버에 요청(Request) 할 때 요청 행과, 요청 헤더, 메시지 본문이라는 세 가지 정보를 담아서 요청하게 됩니다 HTTP 요청 메시지 ( Request ) 요청행 : HTTP 메소드, HTTP 버전 요청 헤더 : HTTP 요청에 대한 정보를 담고 있습니다 (서버에 전달하는 클라이언트 정보) [ 요청 헤더에 포함된 정보 ] host: www.naver.com // 요청 도메인 User-agent: MSIE 6.0; Windows NT 5.0 // 사용자 웹 브라우저 종류 Cookie: key:value // 쿠키 (인증정보) Accept: text..

[Web] 웹 구조와 HTTP [내부링크]

HTML 이란 무엇인가? HTML(Hypertext Markup Language)는 프로그래밍 언어가 아니라 마크업 정보를 표현하는 웹 페이지 언어입니다 웹 페이지는 HTML 문서라고 부르고, HTML은 태그로 구성되어 있습니다 각각의 태그가 웹 페이지 디자인이나 기능을 결정하는 데 사용합니다 HTML 태그는 태그 이름 앞에 꺾쇠괄호()로 감싸서 표현합니다 이 태그는 시작 태그와 종료 태그로 구성되는데 시작 태그는 꺾쇠괄호 () 안에 태그 이름을 붙이지만 종료 태그는 태그 이름 앞에 슬래시()으로 표현합니다 HTML 문서는 기본적으로 head 부분과 body 영역으로 구성됩니다 HTML 버전 위 사진에서 이라는 문서 타입이 설정되어 있는데 이 문서 타입은 HTML 문서를 작성할 때 가장 먼저 작성..

[Minecraft] 플러그인 개발 환경 구축하기 [내부링크]

이번에 자바를 공부하면서 마인크래프트 플랫폼을 통해 쉽게 자바를 입문할 수 있다는 점을 알게 되었습니다 직접 자신만의 플러그인을 개발하여 자바에 대한 재미도 느낄 겸 강좌를 시작하게 되었습니다 플러그인을 개발하기 전에 몇 가지 준비사항이 필요합니다 1. JDK(Java Development Kit) : Java 프로그램을 개발하기 위해 꼭 필요한 도구입니다 2. IDE(Integrated Development Enviroment) : Visual Studio, Eclipse 등 코드 작성 도구입니다 3. Bukkit(Paper or Spigot) : 서버를 여는 프로그램입니다 ( 필자에 랜덤무기 전쟁 구축 강좌를 참고하자 ) [Minecraft] 1.12.2 랜덤무기 전쟁 구축 안녕하세요 오늘은 마인크래..

Bandit 정리 및 후기 [내부링크]

여태까지 리눅스 기초 공부와 Bandit 문제를 모두 풀어봤습니다 리눅스를 공부하기 전에 모습과 지금 모습을 비교해 보면 많은 차이가 있었습니다 리눅스를 공부하면서 처음 보는 명령어들을 접하게 되었는데, Bandit 문제를 풀기 전에 미리 리눅스에서 자주 사용하는 명령어 위주로 공부하기 시작했습니다 그렇게 반복 숙달하는 과정을 통해 리눅스에서 자주 사용하는 명령어들을 익히고, 그만큼 능숙하게 다룰 수 있었습니다 이런 과정에서 도움이 된 건 블로그에 공부한 내용을 정리한 것과 기초 공부 이후 Bandit 문제를 푼 게 많은 도움이 되었습니다 이를 바탕으로 앞으로 리눅스를 어느 정도 사용할 수 있다고 느꼈습니다 Bandit Level 0 ~ Level 33까지 사용한 명령어 정리 [ 리눅스 기본 명령어 사용..

Bandit Practice [ Level 32 ~ 33 ] [내부링크]

이번 시간을 기점으로 bandit의 모든 문제를 다 풀었습니다 따라오시느라 고생 많으셨습니다 이제 어느 정도 리눅스 사용에 능숙해졌을 거라 생각합니다 Bandit Level 31 → Level 32 문제 풀이 ssh [email protected] -p 2220 password : OoffzGDlzhAlerFJ2cAiz1D41JW1Mhmt Bandit Level 31 → Level 32 문제도 이전 문제와 동일합니다! 저장소 복제 이후 파일을 확인하니 key.txt라는 파일을 원격 저장소로 넣으라는 내용이 포함 되었 있습니다 우선 vi 명령어를 이용하여 key.txt 파일을 생성하는데 안에 내용은 문제에서 주어진 'May I come in?'라는 내용을 넣어주세요 이제 ..

Bandit Practice [ Level 30 ~ 31 ] [내부링크]

나머지 문제들도 전부 git과 관련된 문제들입니다 힘내서 풀어 봅시다! Bandit Level 29 → Level 30 문제 풀이 ssh [email protected] -p 2220 password : tQKvmcwNYcFS6vmPHIUSI3ShmsrQZK8S Bandit Level 29 → Level 30 문제도 이전 문제와 동일합니다 임의의 디렉터리를 생성 후 git 명령어를 이용하여 ssh://bandit29-git@localhost:2220/home/bandit29-git/repo 저장소를 복제해 주세요 그다음 repo 디렉터리 안에 README.md 파일을 읽어보니 프로덕션 안에 패스워드가 없다고 나옵니다 패스워드를 찾기 위해 커밋 로그를 확인해 보니 별다른 ..

Bandit Practice [ Level 28 ~ 29 ] [내부링크]

Bandit 문제의 끝에 다가가고 있습니다 리눅스를 다룬지 얼마 안 된 거 같은데 꾸준히 노력한 보람이 있네요 오늘도 힘내서 문제를 풀어봅시다! Bandit Level 27 → Level 28 문제 풀이 ssh [email protected] -p 2220 password : YnQpBuifNMas1hcUFk70ZmqkhUU2EuaS Bandit Level 27 → Level 28 문제는 ssh://bandit27-git@localhost/home/bandit27-git/repo 포트 2220 저장소의 다음 레벨의 패스워드가 있다고 합니다 추가로 저장소 패스워드는 bandit27과 동일하다고 하네요 문제에서 주어진 git 명령어를 이용하여 홈 디렉터리에 해당 주소를 복제..

Bandit Practice [ Level 26 ~ 27 ] [내부링크]

오늘도 힘내서 문제를 풀어 봅시다! Bandit Level 25 → Level 26 문제 풀이 ssh [email protected] -p 2220 password : p7TaowMYrmu23Ol8hiZh9UvD0O9hpx8d 해당 문제는 bandit26의 쉘이 /bin/bash 가 아니라 다른 무엇이라고 합니다 그게 어떻게 작동하고 어떻게 탈출하는지 알아보라고 합니다 홈 디렉터리의 RSA 방식인 sshkey 파일이 있네요 Level 13 → 14 문제에서 다뤘던 ssh 명령어를 이용하여 바로 bandit26으로 접속해 보겠습니다 ssh -i sshkey.private bandit14@localhost -p 2220 하지만 로그인 동시에 연결이 끊기게 됩니다 문제에서 주..

Bandit Practice [ Level 25 ] [내부링크]

확실히 뒤로 갈수록 문제 난이도가 올라가네요 포기하지 않고 열심히 풀어 봅시다 Bandit Level 25 문제 풀이 ssh [email protected] -p 2220 password : VAfGXJ1PBSsPSnvsjI8p759leLZ9GGar Level 25 문제는 포트 30002에서 수신 대기 중이며 bandit24의 비밀번호와 비밀 숫자 4자리 핀 코드를 제공하면 다음 레벨의 패스워드를 획득할 수 있다고 합니다 추가로 brute-forcing이라고 하는 10000개의 조합을 모두 통과하는 것 외에는 핀 코드를 검색할 방법이 없다고 합니다 brute-forcing(브루트 포스) : 무차별 대입 공격으로 특정 암호를 풀기 위해 가능한 모든 값을 대입하는 것을 의미..

Bandit Practice [ Level 24 ] [내부링크]

이제 얼마 안 남았습니다 모두 파이팅! Bandit Level 24 문제 풀이 ssh [email protected] -p 2220 password : QYw0Y2aiA672PsMmh9puTQuhoz8SyR2G Level 24 문제는 이전 문제와 동일하게 /etc/cron.d/ 파일 경로에서 어떤 명령어가 실행되는지 확인하라고 합니다 참고 : 이 문제는 자신만의 첫 번째 쉘 스크립트를 만들어야 합니다 참고 2 : 이 쉘 스크립트는 실행되면 바로 삭제되므로 사본을 보관해야 합니다 지난 문제와 동일하게 다음 레벨의 실행 파일 경로를 복사하고 홈 디렉터리로 이동해 주세요 복사한 실행 파일을 읽어보니 쉘 스크립트가 주어졌습니다 이 코드를 해석해 봅시다 #!/bin/bash //..

Bandit Practice [ Level 22~ 23 ] [내부링크]

오늘도 힘내서 문제를 풀어봅시다 Bandit Level 22 문제 풀이 ssh [email protected] -p 2220 password : NvEJF7oVjkddltPSrdKEFOllh9V1IBcq Level 22 문제는 프로그램 시간 기반 작업 스케줄러인 cron에서 일정한 간격으로 자동 실행되고 있다고 하는데 /etc/cron.d/경로에서 어떤 명령어가 실행되고 있는지 확인해 보라고 합니다 우선 /etc/cron.d 경로에 들어가서 파일을 확인하여 다음 레벨의 비밀번호가 담겨 있어 보이는 cronjob_bandit22 파일을 읽어봅시다 해당 파일을 읽어보니 앞에 *(별) 표시가 있는데 이 *(별)은 앞에서부터 분, 시, 일, 월, 요일의 bandit22 사용자가..

Bandit Practice [ Level 20~ 21 ] [내부링크]

오늘도 문제를 풀어봅시다 Bandit Level 20 문제 풀이 ssh [email protected] -p 2220 password : awhqfNnAbc1naukrpqDYcF95h7HoMTrC Level 20 문제는 홈 디렉터리의 setuid 바이너리를 이용하여 /etc/bandit_pass 경로에서 bandit20의 패스워드를 읽어내는 문제입니다 먼저 /etc/bandit_pass 경로에서 bandit20를 읽어보니 권한이 없다고 나오네요 문제대로 홈 디렉터리의 bandit20-do라는 파일을 이용하여 bandit20 파일에 접근해 봅시다 사진과 같이 bandit20-do 파일 정보를 확인하니 소유자 권한에 s라고 표시가 되어있습니다 이게 바로 setuid가 설정되..

Bandit Practice [ Level 18 ~ 19 ] [내부링크]

이제 bandit 문제의 1/3만 더 풀면 됩니다 모두 파이팅! Bandit Level 18 문제 풀이 ssh [email protected] -p 2220 password : VwOSWtCA7lRKkTfbr2IDh6awj9RNZM5e Level 18 문제는 홈 디렉터리의 password.new 파일에 비밀번호가 보관되어 있는데 password.old 파일에서 변경된 한 줄이 다음 레벨로 가긴 위한 비밀번호라고 합니다 참고 : 이 레벨을 해결하면 터미널에 'Byebye!' 라는 문구가 표시된다고 합니다 홈 디렉터리를 확인해 보니 2개의 파일이 있네요 이 두 파일을 비교했을 때 변경된 한 줄이 어떤 건지 찾아봅시다 두 파일을 비교할 때 사용하는 명령어는 diff입니다 di..

Bandit Practice [ Level 16 ~ 17 ] [내부링크]

오늘도 문제를 풀어봅시다 Bandit Level 16 문제 풀이 ssh [email protected] -p 2220 password : jN2kgmIXJ6fShzhT2avhotn4Zcka6tnt Level 16 문제는 SSL 암호화를 사용하여 localhost의 포트 30001에 현재 패스워드를 제출하여 level 16의 패스워드를 찾아내는 문제입니다 이 문제는 openssl 명령어를 사용했습니다 openssl은 보통 HTTPS 설정, 데이터 암복화 등에 많이 사용되는 명령어입니다 추가로 SSL과 TLS의 보안 통신을 위해 사용하는 프로토콜입니다 (TLS : Transport Layer Security) - SSL의 뒤를 잇는 표준입니다 그래서 전달 인자로 s_clie..

Bandit Practice [ Level 14 ~ 15 ] [내부링크]

오늘로 벌써 문제에 절반 정도 풀었습니다 따라오시는 여러분들 모두 파이팅 하세요! Bandit Level 14 문제 풀이 ssh [email protected] -p 2220 password : wbWdlBxEir4CaE8LaPhauuOo6pwRmrDw Level 14 문제의 비밀번호는 /etc/bandit_pass/bandit14 경로에 저장되며 bandit14 사용자만 읽을 수 있습니다 하지만 우리가 접속했던 bandit13 계정에서 Level 14로 가기 위한 비밀번호를 구하지 못한다고 합니다 그래서 ssh 키를 이용하여 다음 bandit14에 로그인할 수 있는 호스트 이름을 이용하여 패스워드를 구해보라고 합니다 홈 디렉터리에 있는 sshkey.private 파일을..

Bandit Practice [ Level 13 ] [내부링크]

점점 레벨이 올라갈수록 문제 난이도가 올라가네요.. 그래도 포기하지 않고 하나씩 해결해 봅시다 Bandit Level 13 문제 풀이 ssh [email protected] -p 2220 password : JVNBBFSmZwKKOP0XbFXOoW8chDz5yVRv Level 13 문제의 비밀번호는 반복적으로 압축된 파일의 hexdump인 data.txt 파일에 있다고 합니다 먼저 mkdir 디렉터리 생성 명령어를 이용하여 /tmp 경로의 데이터 파일을 복사하고(cp) 이름을 바꾸는(mv) 명령어를 사용하라고 합니다 우선 홈 디렉터리에 있는 data.txt 파일을 /tmp/musa라는 경로를 설정하여 데이터 파일을 복사했습니다 이 data.txt 파일을 읽어보면 hexd..

Bandit Practice [ Level 11 ~ 12 ] [내부링크]

오늘도 Bandit 문제를 풀어봅시다 Bandit Level 11 문제 풀이 ssh [email protected] -p 2220 password : G7w8LIi6J3kTb8A7j9LgrywtEUlyyp6s Level 11 문제는 data.txt 파일 안에 비밀번호가 base64로 인코딩 되어있다고 합니다 data 파일을 확인해 보니 base64로 인코딩 되어있습니다 이 인코딩 문자를 디코딩 해야 우리가 원하는 Level 11의 패스워드를 찾을 수 있습니다 base64 : 바이너리 데이터를 문자 코드에 영향을 받지 않는 공통 ASCII 문자로 표현하기 위해 만들어진 인코딩입니다 이 base64 명령어를 사용하여 해당 문자열을 디코딩 할 수 있습니다 base64의 --d..

Bandit Practice [ Level 8 ~ 10 ] [내부링크]

이번 단계부터 Bandit이 어려워지기 시작합니다.. 하나하나 천천히 문제를 해결해 나아갑시다 Bandit Level 8 문제 풀이 ssh [email protected] -p 2220 password : z7WtoNQU2XfjmMtWA8u5rN4vzqu4v99S Level 8 문제는 data.txt 파일 내부에서 'millionth' 단어 옆에 비밀번호가 있다고 합니다 data 파일을 cat 명령어로 읽어보니 엄청나게 많은 데이터들이 출력되고 있습니다 여기서 millionth라는 단어를 찾아야 하는데.. 지난 시간에 Level 5 문제에서 사용했던 파이프 명령어를 이용하면 이렇게 한 번에 찾을 수 있습니다 Bandit Level 9 문제 풀이 ssh bandit8@ban..

Bandit Practice [ Level 5 ~ 7 ] [내부링크]

오늘도 달려봅시다 Bandit Level 5 문제 풀이 ssh [email protected] -p 2220 password : 2EW7BBsr6aMMoJ2HjW067dm8EgX26xNe Level 5 문제 내용은 inhere 경로의 인간이 읽을 수 있는 파일에서 비밀번호를 찾는 문제입니다 inhere 경로에 들어가서 cat 명령어의 현재 경로의 있는 파일을 읽어보니 파일이 깨져서 보입니다 이건 data 파일이어서 인간이 읽을 수 있는 파일이 아닌 걸 알 수 있습니다 이렇게 일일이 하나씩 읽어보니 -file07 파일에 비밀번호가 있는 걸 확인할 수 있었습니다 하지만 하나씩 대입해서 찾는 것보단 file 명령어를 이용하여 비밀번호의 text 값을 한 번에 찾을 수 있습니다 ..

Bandit Practice [ Level 2 ~ 4 ] [내부링크]

지난 시간에 이어서 Bandit 문제를 풀어봅시다 Bandit Level 2 문제 풀이 ssh [email protected] -p 2220 password : NH2SXQwcBdpmTEzi3bvBHMM9H66vVXjL Level 2 문제는 홈 디렉터리에 저장된 - 파일을 읽어 비밀번호를 알아내는 문제입니다 이 문제는 ls 와 cat 명령어를 이용하여 비밀번호를 알아낼 수 있습니다 현재 파일명이 -로 되어있어 현재 경로를 지정하지 않고 그냥 파일명만 입력하면 - 파일을 읽어올 수 없습니다 저처럼 cat - 명령어를 입력했다면 Ctrl + c로 글자가 입력되는 부분을 탈출할 수 있습니다 -는 리눅스에서 예약된 특수문자로 인식하여 전달 인자로 넘겨받지 못한 거 같습니다 결국엔..

Bandit Practice [ Level 0 ~ 1 ] [내부링크]

여태까지 공부한 리눅스는 이 Bandit이라는 워게임을 풀기 위한 준비였습니다 워게임은 해킹을 게임처럼 공부할 수 있게 만든 시스템이라 생각하면 됩니다 이 워게임은 여러 장르가 있는데 Bandit은 인기 있는 장르인 CTF(Capture The Flag) 방식입니다 CTF는 Flag를 구하는 장르로 각각의 시스템이나 문제마다 개발자가 Flag라는 비밀 코드를 숨겨놨는데 우리가 이 숨겨진 코드를 찾아내는 겁니다 지금까지 리눅스를 공부한 바탕으로 Bandit 워게임을 풀어나가 봅시다 Bandit 사이트를 리눅스로 접속해 보자 [Bandit 사이트 주소] OverTheWire: Level Goal We're hackers, and we are good-looking. We are the 1%. Level Go..

Kali Linux Redirection & PIPE (PIPE) [ 3 ] [내부링크]

지난 시간에 프로그램의 출력 방향을 리다이렉션으로 바꿨는데, 이번 시간에는 입력의 흐름을 다른 곳에 넣을 때 사용하는 파이프에 대해 알아봅시다 PIPE 란? 파이프는 프로그램 사이에 연결되어 있는 빨대라 생각하면 이해하기 쉽습니다 이렇게 프로세스 간에 연결된 파이프를 통해서 데이터가 흐르게 됩니다 또한 프로세스의 출력이 다른 프로세스의 입력으로 들어갈 수 있습니다 그래서 파이프는 프로세스의 출력을 다른 프로세스의 입력으로 넣어주고 싶을 때 사용합니다 예를 들어 A라는 명령어(프로세스)의 결과를 파일로 저장하지 않거나 화면에 출력하는 것도 아니라면 오로지 이 결과를 다른 명령어(프로세스)에 넘겨주고 싶을 때 파이프를 사용합니다 이제 PIPE를 칼리 리눅스에서 사용해 봅시다 PIPE 실습하기 PIPE를 가장..

Kali Linux Redirection & PIPE (방향 전환) [ 2 ] [내부링크]

지난 시간에 데이터 스트림을 알아보면서 데이터의 흐름이 있다고 했는데 이번 시간에는 이 데이터의 방향을 바꾸는 리다이렉션을 공부해 봅시다 리다이렉션 : Re / direction (다시 방향) 즉 방향을 바꾼다는 게 리다이렉션입니다 Redirection 리다이렉션 실습 실습 전 Text Editor 강좌 때 만든 mv_test 파일을 이용하겠습니다 (없으면 생성해 주세요) 현재 cat 명령어의 결과 데이터가 standard output(표준 출력)으로 화면에 표시된 겁니다 이제 출력의 방향이 터미널 화면이 아닌 다른 파일로 향하게 방향을 바꿨습니다 방향을 바꿀 때, 사용하는 문자는 > 입니다 리다이렉션을 사용하니 터미널 화면에 mv_test 파일 내용이 출력되지 않고 musa_file라는 파일로 방향을 ..

Kali Linux Redirection & PIPE (Data Stream) [ 1 ] [내부링크]

우리는 운영 체제와 쉘을 통해 컴퓨터와 대화합니다 이 대화 과정에서 명령을 전달받은 운영 체제는 컴퓨터로 명령을 내려 데이터를 보내고 다시 사용자에게 출력 데이터를 보내게 됩니다 이번 시간에는 Data Stream에 대해 알아봅시다 Data Stream 이란 사용자가 컴퓨터에게 명령을 내릴 때 명령을 전달받은 운영체제가 컴퓨터 기계 장치로 향하는데 이를 입력 데이터라고 합니다 반대로, 컴퓨터 기계 장치에서 운영 체제를 통해 우리에게 전달되는 데이터를 출력 데이터라고 합니다 이때 입력되는 방향과 출력되는 방향의 데이터가 흘러가는데 이를 Data Stream이라 표현합니다 데이터 스트림은 크게 2가지가 있습니다 Input Stream, Output Stream 우리는 쉘을 통해 데이터를 주고받기 때문에 입력..

Kali Linux 권한 (권한 변경) [ 5 ] [내부링크]

리눅스는 파일 권한 설정으로 사용자의 행동을 제한할 수 있습니다 그렇기에 각각의 파일과 디렉터리에 권한을 설정하는 방법이 중요합니다! chmod 명령어를 이용하여 권한을 설정하자 rwx 권한 강좌 때 만든 test_permission 파일에서 소유자 권한을 추가해 보겠습니다 기본적으로 권한을 변경할 때 사용하는 명령어는 chmod입니다 chmod [변경할 권한] [변경할 파일 또는 디렉터리] 권한 추가 + 권한 제거 - 소유자 u 소유 그룹 g 기타 사용자 o 이런 식으로 표현합니다 만약 소유자 권한에 실행 권한을 추가한다고 하면 (소유자 권한(u)에 실행 권한(x)을 추가(+)한다) : u+x 이렇게 소유자 권한에 x 기호가 생긴 걸 알 수 있습니다 여기서 다시 소유자 권한에서 실행 권한을 빼려면 (소..

Kali Linux 권한 (특수 권한) [ 4 ] [내부링크]

지난 시간에 r, w, x 권한을 알아봤는데 이 외에 3가지 특별한 권한에 대해 공부해 봅시다 특별한 권한 3가지 (1) setuid : setuid가 설정되어 있다면, 파일을 실행했을 때 이 파일의 소유자 권한으로 실행됩니다. 대표적으로 passwd 명령어에 setuid가 설정되어 있는데 확인해 봅시다 ls -l /usr/bin/passwd passwd 경로에 권한 정보를 보면 소유자 권한이 rws라고 설정되어 있습니다 마지막 x(실행) 권한이 있는 자리에 특수 권한을 설정해두는데 소유자 권한에 s라고 표시되어 있는 게 setuid가 설정되었다는 의미입니다 만약에 x(실행) 권한이 있는지 없는지 확인이 안될 때가 있는데 s를 표현할 때, 대소문자를 구분합니다 소문자 s로 쓰면 실행 권한이 있으면서 se..

Kali Linux 권한 rwx [ 3 ] [내부링크]

리눅스는 파일들로 운영되는 운영체제이기 때문에 파일의 접근과 이용만 통제해도 사용자의 행동을 제한할 수 있습니다 이번 시간에는 계정 별로 리눅스가 어떻게 권한을 부여하는지 알아봅시다 rwx 란? 파일과 디렉터리에는 3가지 권한이 있습니다 (1) r : read 권한으로 파일을 읽을 수 있는 권한입니다 파일의 내용과 디렉터리의 내용을 보는 것에 해당합니다 (2) w : write 권한으로 파일을 쓸 수 있는 권합니다 파일이라면 데이터를 수정할 수 있는지에 대한 권한이고, 디렉터리라면 디렉터리에 파일 또는 디렉터리를 생성할 수 있는지에 대한 권한입니다 (3) x : execute 권한으로 파일을 실행할 수 있는지에 대한 권한입니다 파일이라면 파일을 실행하는지에 대한 권한이고, 디렉터리면 디렉터리의 접근과 디..

Kali Linux 권한 passwd [ 2 ] [내부링크]

지난 시간에 uid/gid를 공부하면서 모양이 다른 쉘을 접하게 되었는데, 오늘은 이 쉘에 대해 알아봅시다 passwd 파일을 알아보자 모양이 다른 쉘을 알기 전에 /etc/passwd 파일을 확인해 봅시다 /etc/passwd 파일은 리눅스 시스템에 등록된 계정 정보가 담긴 파일입니다 명령어를 실행해 보니 계정이 엄청 많습니다 /etc/passwd 파일에는 리눅스 계정 하나당 한 줄씩 정보가 저장됩니다. 그래서 사진과 같이 한 줄씩 계정이 존재하는 겁니다 맨 위에 있는 root 계정에서 각각 어떤 의미를 가지는지 알아봅시다 각 줄은 : (콜론)을 기준으로 데이터를 구분합니다 (1) 계정 이름 : 우리가 만든 계정 아이디입니다 (2) 비밀번호 : 현재 비밀번호 자리에 x라고 표시되어 있는데, 예전 리눅스..

Kali Linux 권한 UID/GID [ 1 ] [내부링크]

컴퓨터는 어떤 특정한 사람만 쓰는 게 아니라, 여러 사람이 공유해서 사용할 수 있습니다 그러면 기본적으로 그 컴퓨터에 각 사람의 계정이 필요하게 됩니다 그래서 컴퓨터를 켜면 각자의 계정으로 로그인해서 컴퓨터를 쓸 수 있습니다 만약 이런 계정이 없다면 나의 민감한 정보나 파일들을 다른 사람들이 컴퓨터를 사용하면서 몰래 볼 수 있습니다 그래서 여러 사람이 하나의 컴퓨터를 같이 쓰기 위해 계정이 존재하는 겁니다 추가로 계정마다 특정 파일을 열지 못하게 하거나, 특정 명령어를 실행하지 못하게 할 수 있습니다 이렇게 각각의 계정 별로 권한을 부여할 수 있습니다 만약 계정이 root라는 글자라면 컴퓨터는 이 계정을 어떻게 인식할까요? 컴퓨터는 우리 눈에 보이는 글자를 실제로 컴퓨터 내부에서 처리될 때 전부 숫자로 ..

Kali Linux File Move [ 5 ] [내부링크]

이번 시간에는 파일을 이동시키는 명령어 mv를 알아봅시다 우리가 복사와 삭제 명령어를 배웠는데 mv 명령어는 사실 cp 명령어로 파일을 복사한 뒤에, rm 명령어로 현재 경로에 있는 파일을 삭제하는 방식과 똑같습니다 직접 실습을 통해 mv 명령어를 다뤄봅시다 move 명령어로 파일 이동 방법 우선 이동시킬 파일을 vi를 실행해서 생성 후 이동시킬 디렉터리도 만들어 주세요 파일 이동 명령어 : mv [src] [dst] mv 첫 번째 인자는 전달한 대상을 적고, 두 번째 인자는 도착지를 적어주시면 됩니다 지난 시간에 배운 cp 명령어와 동일합니다 추가로 mv 명령어도 cp 명령어처럼 파일명을 바꿔서 사용할 수 있습니다 직접 파일을 이동시키면서 이름도 바꿔봅시다! 우리가 만든 디렉터리 안에 파일을 옮겼는데 ..

Kali Linux File Remove [ 4 ] [내부링크]

이번 시간에는 실습 때 만든 디렉터리와 파일들을 제거할 수 있는 remove 명령어에 대해 알아봅시다 remove 명령어로 파일 삭제 방법 지난 시간에 만든 vi_test 파일을 삭제해 보겠습니다 삭제 명령어는 rm입니다 remove(제거하다)의 약자입니다 명령어의 전달 인자는 삭제할 파일명을 지정해 주면 됩니다 rm 명령어도 cp 명령어와 동일하게 상대 경로와 절대 경로 2가지로 표현할 수 있습니다 명령어가 정상적으로 작동됐다면 파일이 삭제된 걸 확인할 수 있습니다 이번에는 musa_dir이라는 디렉터리를 삭제해 봅시다 remove 명령어로 디렉터리 삭제 방법 위에 명령어와 동일하게 전달 인자를 삭제할 디렉터리 명을 지정했는데 해당 디렉터리를 제거할 수 없다고 나옵니다 지난 시간에 cp 명령어에서 디렉..

Kali Linux File Copy [ 3 ] [내부링크]

컴퓨터를 쓰면서 복사와 붙여넣기 기능을 접해봤을 겁니다 이 copy 기능을 리눅스에서 사용해 봅시다 리눅스에서 copy 명령어 사용법 복사 기능을 사용하기 앞서 홈 디렉터리에서 musa_dir 디렉터리를 생성해 주세요 (파일명은 자유롭게 지정해도 됩니다) 디렉터리 생성 명령어 : mkdir [파일명] 디렉터리 생성이 끝난 후 지난 시간에 만든 vi_test 파일을 musa_dir 디렉터리에 복사할 겁니다 복사 명령어 : cp [src] [dst] cp는 전달 인자를 2개 받습니다 첫 번째 인자는 복사할 대상, 두 번째는 인자는 복사로 저장되는 경로입니다 전달 인자는 파일 경로로 적어주기 때문에 절대 경로와 상대 경로 2가지로 표현할 수 있습니다 복사 명령어 cp ./vi_test ./musa_dir를 상..

Kali Linux File cat Command [ 2 ] [내부링크]

지난 시간에 vi 명령어로 파일을 확인했는데 이번 시간에는 cat 명령어를 이용하여 파일 정보를 확인해 봅시다 cat : concatenate의 약자입니다 연결하다는 뜻인데, 뒤에 전달 인자로 오는 파일 데이터를 연결하는 데 사용합니다 이 파일 데이터가 화면에 출력되는 겁니다 cat 명령어로 파일 정보 확인하기 홈 디렉터리에 vi 명령어로 작성했던 파일을 cat 명령어로 확인해 봅시다 cat vi_test 명령어를 입력하니 vi_test 파일 데이터가 화면에 출력됩니다 /etc/passwd라는 파일도 cat으로 확인할 수 있습니다 추가로 /bin/ls라는 파일을 읽어보니 일반 글자가 아닌 HEX 값(16진수)의 데이터들이 출력됩니다 /bin/ls는 ls 명령어의 실행 파일입니다 실행 파일이기 때문에 글자..

Kali Linux File Text Editor [ 1 ] [내부링크]

기본적으로 컴퓨터에는 어떤 데이터를 저장할 수 있습니다 메모장 켜서 텍스트 내용을 저장하는 것처럼 말이죠 이 텍스트 데이터를 처리하기 위한 프로그램을 Text Editor라고 합니다 이번 시간에는 리눅스에서 사용하는 Text Editor 중 유명한 vi 에디터를 다뤄봅시다 vi Text Editor 실행 Windows 운영체제에서는 GUI 방식으로 메모장에 텍스트 데이터를 저장하지만 리눅스에서는 CLI 기반의 텍스트 에디터를 사용하여 데이터를 읽고, 쓰고 할 수 있습니다 vi 명렁어를 입력하시면 이런 화면이 나올 겁니다 VIM은 vi 업그레이드 버전이라 생각하시면 됩니다 여기까지 Windows에서 메모장을 실행한 것처럼 리눅스에서 메모장을 키신 겁니다 리눅스 메모장에 텍스트 데이터를 작성해 보자 글을 작..

Kali Linux 자동 완성 기능 TAB [ 6 ] [내부링크]

이제 어느 정도 CLI 기반의 쉘에서 명령어 입력이 익숙해졌을 겁니다 오늘은 명령어를 빠르게 입력할 수 있는 자동 완성 기능(Tab)을 사용해 봅시다 자동 완성 기능 (Tab) 사용하기 지난 시간에 홈 디렉터리에 musa 디렉터리를 생성했습니다 여기에서 musa 디렉터리로 자동 완성 기능을 사용해 이동해 봅시다 cd mu 까지 입력 후 Tab 버튼을 눌러보세요 그러면 mu와 관련된 디렉터리가 자동으로 보이는데 여기서 Tab을 한 번 더 누른후 엔터키를 누르면 musa 디렉터리가 완성이 됩니다 만약 여기서 Music 디렉터리로 이동하고 싶으면 또 한 번 Tab을 누른 후 엔터키를 눌러주면 됩니다 이렇게 원하는 경로를 앞 부분만 입력 후 Tab을 이용하여 자동으로 경로 앞 부분으로 시작한 선택지를 고를 수 ..

Kali Linux 상대 경로와 절대 경로 [ 5 ] [내부링크]

이번 시간에는 디렉터리 이동을 좀 더 편리하게 해주는 개념을 소개하겠습니다 리눅스에서 경로를 표현하는 방법은 크게 2가지로 나뉩니다 상대 경로와 절대 경로입니다 오늘은 이 2가지에 대해 공부해 봅시다 상대 경로와 절대 경로의 개념 우선 이해하기 쉽게 예시를 들어 설명하겠습니다 절대 경로는 지도에서 정확한 좌표를 찍어주는 것과 비슷합니다 반면에 상대 경로는 자신이 있는 위치를 기준으로 경로를 표현하는 것을 말합니다 절대 경로 : 지도에 있는 정확한 좌표! 상대 경로 : 내가 있는 곳 기준으로 경로를 설명한다 개념을 이해하셨으면 칼리 리눅스에서 터미널을 실행시켜 봅시다 root의 홈 디렉터리 경로는 /root인데요 /root 디렉터리에 상대 경로와 절대 경로로 표현해 봅시다 리눅스에서 절대 경로를 표현하는 ..

Kali Linux 파일 정보 [ 4 ] [내부링크]

이번 시간에는 리눅스 파일 정보에 대해 공부해 봅시다 Linux 파일 정보 Windows에서는 1번 폴더 안에 어떤 파일이 있는지 확인하고 싶으면 1번 폴더를 클릭하여 안에 어떤 파일이 있는지 파악할 수 있습니다. 폴더를 클릭하면 사진과 같이 안녕.txt 파일이 그래픽 화면에 나오게 됩니다 리눅스에서는 지금 내가 있는 디렉터리에 어떤 파일, 디렉터리가 들어 있는지 확인할 수 있습니다 Home 디렉터리에서 ls 명령어를 입력해 보세요 ls : list segments의 약자입니다 현재 위치에서 파일 정보들을 확인하는 명령어입니다 ls 명령어는 많이 사용하기 때문에 기억해 두는 게 좋습니다 cd / 명령어를 이용하여 최상위 경로로 이동한 후 ls 명령어로 어떤 디렉터리가 있는지 확인할 수 있습니다 현재 / ..

Kali Linux Home Directory [ 3 ] [내부링크]

리눅스에는 각 계정마다 홈 디렉터리가 존재합니다. 계정을 생성하거나 직접 홈 디렉터리를 지정할 수 있습니다 이번 시간에는 홈 디렉터리에 대해 알아봅시다 Home Directory 터미널을 새롭게 키면 위 사진처럼 현재 경로를 알 수 있습니다 ~표시로 되어있습니다 pwd 명령어를 입력하여 확인해 보니 /root 경로가 나오게 됩니다 즉 ~ = /root라는 뜻입니다 ~ 표시는 Home 디렉터리의 표현 방법입니다 이 말은 /root도 홈 디렉터리라는 것입니다 1. 계정 마다는 Home 디렉터리가 있습니다. 2. Home 디렉터리는 ~로 표시할 수 있습니다 사진과 같이 cd ~ 와 cd /root는 똑같이 홈 디렉터리로 나타나게 됩니다 이렇게 홈 디렉터리를 표현하는 2가지 방법에 대해 알아봤습니다 다음 시간에..

Kali Linux Directory 현재 경로 [ 2 ] [내부링크]

이번 시간에는 디렉토리의 현재 경로에 대해 알아봅시다 CLI 기반의 쉘에서는 명령어를 내리는 현재 경로 위치가 굉장히 중요합니다 현재 경로의 이해 우선 Windows에서 이해하기 쉽게 설명하겠습니다 각각의 다른 폴더에 똑같은 텍스트 파일을 생성해서 넣어줬습니다 여기서 우리가 1번 폴더에서 안녕.txt 파일을 지우는 명령어를 내리면 어떻게 될까요? 2번 폴더 위치에 있는 안녕.txt가 지워지지 않고 1번 폴더 안에 있는 안녕.txt가 지워지게 됩니다 이처럼 어디에서 명령을 내리는지에 따라 결과가 달라집니다 리눅스도 마찬가지로 CLI 기반의 쉘에서 명령어를 입력할 때는 내가 어떤 디렉토리에 있는지 알아야 하고 어떤 디렉토리에서 명령을 내리고 있는지 알 수 있어야 합니다 pwd 명령어는 내가 입력하고 있는 디..

Kali Linux Directory System [ 1 ] [내부링크]

리눅스 운영체제에서 파일들을 어떻게 관리하는지 알아봅시다 파일 저장 방식 Windows에서는 직접 폴더를 만들고 그 폴더 안에 파일을 저장하는 방식입니다 하지만 바탕화면에서는 폴더 생성 없이 바로 파일을 저장할 수 있는데, 이 바탕화면도 하나의 폴더입니다 내 PC > C 드라이브 > 사용자 순서대로 들어가면 "바탕 화면"이라는 폴더를 확인할 수 있습니다 이렇게 계속 파일이 폴더에 저장이 되는데 이 폴더 속에 또 다른 폴더가 저장되는 걸 거슬러 올라가 보면 어딘가 끝이 있을 겁니다 이걸 우리는 최상위 경로 라고 부릅니다 Windows 파일은 이런 식으로 저장이 되는데 리눅스도 동일합니다 리눅스는 폴더 대신 디렉토리(Directory) 라고 부릅니다 폴더 = 디렉토리 라고 이해하시면 됩니다 Windows 와..

Kali Linux Command Structure [ 2 ] [내부링크]

이번 시간에는 리눅스에서 명령어를 사용할 때 알아야 할 규칙을 공부해 봅시다 명령어, 전달 인자, 옵션 이렇게 3가지만 기억해 봅시다 명령어 (Command)란? 지난 게시글에서 소개한 id, ifconfig, clear 등이 명령어로 볼 수 있습니다 컴퓨터에게 특정 동작을 하고 싶을 때 특정 동작에 대한 명령어를 입력해 주면 됩니다 이런 명령어들은 하나의 프로그램으로 볼 수 있습니다 which id라는 명령어를 입력해 보세요 which라는 명령어는 현재 id 명령어의 실제 프로그램 위치를 확인할 수 있습니다 id 프로그램은 사진과 같이 /user 디렉토리 안에 bin 디렉토리가 있는데 거기에 id라는 프로그램이 있다는 겁니다 그래서 id라는 명령어를 입력해도 되지만, 이 경로를 입력해도 동일한 결과를 ..

Kali Linux Command 사용법 [ 1 ] [내부링크]

오늘은 칼리 리눅스에 CLI를 다뤄보겠습니다 CLI : Command Line Interface 검은 화면에 글자를 입력해서 명령을 내리는 방식을 CLI라고 합니다 CLI, GUI 개념 우리가 사용하는 Windows 운영체제는 GUI 방식으로 구현되어 있습니다 GUI : Graphical User Interface 그래픽 화면으로 컴퓨터에게 명령을 내리는 방식입니다 Linux 운영체제는 CLI 기반으로 구현되어 있습니다 최근에는 GUI가 기본적으로 탑재되어 있지만, CLI로 더 많은 일을 할 수 있습니다 왜 CLI를 사용할까요? 첫 번째로 효율성이 뛰어납니다 GUI 방식으로 화면을 만들어서 표시하고, 처리하는 과정은 생각보다 많은 자원이 필요하지만 CLI 방식은 검은 화면에 글자를 입력만 하면 결과만 출..

가상머신에서 Kali Linux 세팅하기 [내부링크]

이번 시간에는 가상머신 위에 칼리 리눅스를 세팅해 보겠습니다 리눅스는 여러 버전이 있습니다 Ubuntu, CentOS, Debian, Fedora 등등 우리는 해킹 공부를 위해 해킹에 필요 도구가 많은 Kali Linux를 사용할 겁니다 Kali Linux 세팅 방법 보통 ISO 파일을 받아 직접 설치를 하는데 이 과정이 번거롭기 때문에 Offensive Security에서 이 설치 과정을 가상 머신 파일로 만들어서 배포하는데 이걸 사용할 겁니다 ISO에 설치하는 과정을 통째로 파일로 만들어버리는 겁니다 이 파일을 가져다 실행시키면 설치 과정 없이 바로 Kali Linux를 실행할 수 있습니다 구글에 "kali linux download" 검색한 후 Get Kali를 클릭해 주세요 그러면 이런 화면이 나..

Linux 개발 환경 구축하기 ( VirtualBox ) [내부링크]

이제 직접 리눅스를 설치하여 다뤄봅시다 하지만 컴퓨터에서는 한 번에 하나의 운영 체제만 부팅이 됩니다 즉! Windows가 설치되어 있다면 리눅스를 실행할 수 없습니다 여기서 우리는 가상 머신 (VirtualBox)를 이용하여 리눅스를 설치해 보겠습니다 VirtualBox? VMware? 가상 머신 사용법 가상머신은 우리가 사용하는 기존 운영 체제 위에서 컴퓨터 속에 하나의 컴퓨터를 만드는 역할을 합니다 이 컴퓨터에 리눅스를 설치해서 사용할 수 있습니다 Windows에서 가상머신을 이용하면 Linux를 동시에 사용할 수 있는데, 그만큼 Linux를 사용하기 쉬어져 많은 분들이 운영 체제라기보다는 하나의 가벼운 프로그램으로 인식하고 있습니다 가상머신에는 대표적으로 VMware와 VirtualBox가 있습니..

티스토리 오디세이 스킨 글 목록 썸네일 이동하기 [내부링크]

오늘은 오디세이 스킨에서 글 목록에 표시되는 썸네일 위치를 바꿔보겠습니다 이런 식으로 썸네일 위치가 오른쪽에서 왼쪽으로 변경하였습니다 티스토리 스킨 편집 - CSS 수정 [블로그 관리 홈] > 꾸미기-스킨 편집 > html 편집 - CSS 항목을 클릭하여 ctrl+f를 눌러 .article-type-thumbnail를 검색해 주세요 flex-direction: row-reverse;로 되어있을 텐데 row로 고쳐주시면 됩니다 그러면 썸네일 위치가 왼쪽으로 변경이 되는데, 썸네일과 글 사이의 간격이 좁게 나오게 됩니다 이를 해결하기 위해서 margin-left 값은 주석 처리를 하고 밑에 margin-right: 30px이라는 간격을 추가해 줍니다 border-radius는 사진 테두리를 둥글게 만드는 역..

티스토리 오디세이 스킨 제목 배경 제거하기 [내부링크]

오디세이 스킨에서 글을 작성하면 제목 영역에 배경 이미지가 생기면서 많은 영역을 차지하게 됩니다 디자인 부분에서 마음에 들지 않아 이 부분을 제거하는 시간을 가져봅시다 해당 사진을 이번 시간에 적용해 봅시다 티스토리 스킨 편집 - CSS 수정 .article-header:before { display: none; } .article-header { background-image: none !important; } .article-header .inner-header { color: #333; } #tt-body-page .main { padding-top: 88px; } @media screen and (max-width: 1060px) { #tt-body-page .main { padding-top: ..

티스토리 오디세이 스킨 메뉴 위치 변경하는 방법 [내부링크]

안녕하세요 오늘은 티스토리에서 지원하는 오디세이 스킨 왼쪽 사이드 메뉴를 오른쪽으로 옮겨보도록 하겠습니다 아무래도 우리나라 사람들은 대부분 왼쪽부터 글을 쓰고 읽기 때문에 이런 점을 고려해서 메뉴 위치를 변경했습니다 우리가 오늘 적용할 왼쪽 사이드 메뉴입니다 티스토리 스킨 편집 - CSS 수정한다 [블로그 관리 홈] > 꾸미기-스킨 편집 > html 편집 - CSS 항목을 클릭해서 ctrl+f 키를 눌러 .wrap-right .main이나 .wrap-right .area-aside 태그를 검색합니다 검색 후 사진과 같이 flex-direction 값과 margin 값을 설정해 주세요 여기까지 적용했으면 메뉴바 위치가 왼쪽으로 이동될 겁니다 메뉴바가 옮겨졌으면 본문 내용 크기와 메뉴 폭이 알맞지 않을 텐데..

티스토리 광고 정책 변경에 따른 대응 전략 [내부링크]

이번에 티스토리에서 6월부터 티스토리 자체 광고를 신설한다는 내용에 공지가 있었는데, 해당 내용은 구글 애드센스를 통해 수익을 얻고 있는 블로그를 대상으로 본문 상단 혹은 하단 중에 티스토리 자체 광고를 등록한다는 내용입니다 이 광고 정책으로 인해 티스토리를 떠나는 분들도 계시고 상단 광고가 티스토리를 자체 광고로 변하면서 수익률도 절반 이상 떨어질 거라 보는데 이런 현상을 방지하기 위해 광고 노출 전략을 수정해 봅시다 티스토리 광고 정책 변경 공지 아마 대부분에 수익형 블로그는 본문 상단 광고를 통해 수익을 많이 내고 있을 텐데 티스토리도 당연히 알고 있을 거라 생각이 듭니다 그래서 아마 하단보다는 상단부분에 자체 광고를 많이 등록할 거라 생각이 듭니다 불행 중 다행히 2023년 하반기 때는 광고 외에..

티스토리 인용구 색상과 폰트 설정하기 [내부링크]

오늘은 티스토리에서 지원하는 인용구 blockquote를 수정하여 인용구에 폰트와 디자인을 입맛대로 설정해 봅시다 해당 인용구를 사용했을 때 폰트와 디자인을 변경할 겁니다 1. 인용구에 적용할 색상을 선택하자 구글에 '색상 선택 도구'를 검색하여 인용구에 적용할 색깔을 선택해 주세요 HEX 값을 복사하여 티스토리 css 편집에서 사용할 겁니다 2. 인용구에 적용할 폰트를 선택하자 눈누 상업용 무료한글폰트 사이트 noonnu.cc 적용할 폰트를 눈누 사이트를 통해서 선택하시면 됩니다 상업적 무료로 사용할 수 있습니다 전 '넥슨 배찌체' 를 선택했습니다 여기서 오른쪽 부분에 [웹폰트로 사용] 항목을 복사해 주세요 3. 티스토리 인용구(blockquote) 수정하기 [블로그 관리 홈] > 꾸미기-스킨 편집 >..

티스토리 마우스 커서 설정 및 효과 추가하기 [내부링크]

블로그를 꾸미는 도중 마우스 커서와 애니메이션 적용 방법을 알게 되었습니다 티스토리에서 html과 css을 능숙하게 다룬다면 웹 페이지를 좀 더 예쁘게 꾸밀 수 있습니다 오늘은 티스토리에 마우스 커서와 애니메이션을 설정해 보겠습니다 1️ 마우스 커서 디자인 선택하기 Free Cursor Downloads - Cursors-4U.com Date: 4 Feb 2021, 21:35 By Tor With 7 Comments This month's favorite cursors is the "Sexy Red Lips". It's unknown who made the image. If you know who did it, send me an email so I can give proper credit. Also ..

티스토리 다국어 번역 기능 적용하기 [내부링크]

보통 크롬 브라우저를 이용하여 웹 페이지 번역하고 있지만, 모든 사람들이 크롬 브라우저를 사용하지는 않습니다 그렇기에 직접 티스토리에 번역기를 달아 봤습니다 오늘은 글로벌 시대에 맞게 티스토리에 번역기를 등록해 봅시다 1️ Gtranslate 사이트에서 코드 가져오기 Website Translator Widget Widget Look Float Nice dropdown with flags Flags and dropdown Dropdown Flags Flags with language name Flags with language code Language names Language codes Globe Popup ? Translate From EnglishArabicBulgarianChinese (Simp..

티스토리 코드 블럭 꾸미는 방법 [내부링크]

지난 시간에 코드 블럭 복사 버튼을 추가했습니다 복사 버튼을 추가하면서 좀 욕심이 생겼는데, 티스토리에서 지원하는 코드블럭은 디자인적 요소가 너무 아쉬웠습니다 좀 더 다양한 코드 블럭 테마를 적용하고 싶어 html과 css를 설정하여 외부 사이트에서 예쁜 코드블럭을 적용했습니다 오늘은 highlight.js 사이트를 이용하여 코드블럭을 꾸며봅시다 1️ highlight.js 사이트에서 CDN 코드를 가져온다 highlight.js Version 10.7.2 This is a patch release. The only change is that deprecation messages are throttled and shown only once. highlightjs.org 해당 사이트에 접속합니다 접속 후..

티스토리 코드 블럭 복사 버튼 만들기 [내부링크]

지난 시간에 티스토리의 무단 복제를 방지하기 위해 복사 금지를 추가하였는데, 코드로 작성된 부분도 똑같이 복사가 금지됩니다 제 강좌 글은 공부를 목적으로 코드 파일을 배포하지 않고, 코드 블럭으로만 작성하였는데 아무래도 급하신 분들을 위해 코드 블럭 복사 기능을 추가하였습니다 오늘은 이 코드 블럭 복사 기능을 티스토리에 적용해 봅시다 오늘 적용할 코드 블럭 복사 버튼입니다 1️ clipboard.min.js 라이브러리를 다운로드합니다 GitHub - zenorocha/clipboard.js: Modern copy to clipboard. No Flash. Just 3kb gzipped :scissors: Modern copy to clipboard. No Flash. Just 3kb gzipped :c..

티스토리 게시글 복사 방지 및 드래그 금지 방법 [내부링크]

오늘은 자신의 티스토리 게시물 내용들을 무분별하게 복사하여 마치 자신이 쓴 글인 것처럼 포스팅하는 사람들이 있을 수 있기에, 이를 사전에 방지해 봅시다 1️ 마우스 오른쪽 클릭 방지 플러그인을 티스토리에 설치해 줍니다 [블로그 관리 홈] > 플러그인 > 마우스 오른쪽 클릭 방지 플러그인을 설치하시면 됩니다 현재 전 설치되어 있는데 설치하는 방법은 오른쪽 상단에 플러그인 검색 부분을 이용하여 '마우스 오른쪽 클릭 방지'를 입력해 주세요 검색이 끝났으면 해당 플러그인을 선택하여 [적용] 버튼을 눌러주면 됩니다 2️ 티스토리 html 편집을 이용하여 드래그 금지 코드를 추가합니다 해당 코드를 복사해 주세요! [블로그 관리 홈] > 꾸미기-스킨 편집을 눌러 > html 편집을 클릭해 주세요 복사한 코드를 태..

윈도우 10 파일 이름 일괄 변경하는 방법 [내부링크]

저번 시간에 대량의 파일 확장자를 바꿔봤는데 오늘은 파일 이름을 한 번에 일괄 변경하는 방법에 대해 알아봅시다 기본적으로 원하시는 파일을 드래그하여 F2를 이용하여 여러 파일의 이름을 한 번에 바꾸는 방식이 있습니다 전 '안녕'으로 바꿔봤습니다 사진과 같이 뒤에 (1)....(23)까지 순서대로 붙었습니다 첫 번째 사진을 클릭 후 마지막 사진을 쉬프트(shift)를 누른 상태에서 클릭하면 전체적으로 드래그 됩니다 shift + 마우스 키 : 바꾸고 싶은 사진 첫 번째와 마지막 사진을 선택할 때 사용하시면 됩니다 Ctrl + 마우스 키 : 변경하고 싶은 사진을 개별적으로 선택하시면 됩니다 이렇게 윈도우 탐색기로 일과적으로 파일의 이름을 변경할 수 있지만 똑같은 이름에 괄호 안에 숫자가 표시되는 부분을 다른..

티스토리 블로그 구글 애드센스 승인 후기 [내부링크]

작년에 블로그를 개설해 올해 5월 7일 구글 애드센스를 등록했습니다 2주라는 기다림 끝에 드디어 승인이 떨어졌습니다 오늘은 직접 티스토리를 운영하면서 광고를 등록하기까지에 느낀 점을 설명하겠습니다 5월 7일 구글 애드센스를 등록 > 5월 23일 구글 애드센스 승인 ( 대략 2주 ) 티스토리의 광고 코드를 등록하자 1~2시간 이후 애드센스 승인이 떨어졌습니다 이때 처음 접해봐서 광고 코드 등록 법을 모르고 있었는데 구글링을 통해 알게 되었습니다 여러분도 구글 애드센스를 신청할 때 꼭 본인의 티스토리에 광고 코드를 추가해 주세요 게시글의 세부적인 정보가 많으면 저보다 더 빨리 승인이 떨어질 수 있습니다 1. 티스토리 게시글 설명 전 작년에 마인크래프트 강좌 글을 작성했는데 조회 수가 나오지 않아 티스토리를 ..

티스토리 블로그 구글 애드센스 가입과 신청하는 방법 [내부링크]

티스토리 블로그를 하는 목적은 대부분 수익을 창출하기 위해서 운영하실 겁니다 물론 취업을 위해 포트폴리오로 작성하시는 분들도 계시지만 대다수 블로그들은 광고를 게시하여 수익을 창출하는 목적을 가질 겁니다 아무래도 구글 애드센스가 카카오 애드핏, 네이버 애드포스트보다 단가가 높기 때문에 사람들이 가장 많이 사용합니다 오늘은 본인의 티스토리에 구글 애드센스를 신청해 봅시다 1. 구글 애드센스 가입 구글 검색창에 '구글 애드센스'를 검색하고 사이트에 접속합니다 [시작하기] 버튼을 클릭해 주세요 여기서 본인의 구글 계정이 로그인되어 있어야 합니다 애드센스를 최대한 활용하기 항목에서 이메일 수신을 체크했습니다 국가/지역을 선택한 후 애드센스 이용 약관까지 동의해 주세요 그다음 [애드센스 사용 시작] 버튼을 클릭해..

윈도우 10 대량의 파일 확장자 변경하는 방법 [내부링크]

문서 작업 도중 대량의 파일 확장자를 변경할 때가 있을 겁니다 하지만 하나씩 F2로 확장자를 변경하기에는 너무 비효율적입니다 이런 비효율적인 문제를 고려하여 메모장을 이용한 대량의 파일 확장자를 한 번에 바꾸는 방법에 대해 알아봅시다 파일 확장자를 바꾸기 전에 해당 파일에 확장자를 표시해줍니다 윈도우 탐색기 왼쪽 상단에 [보기] 탭에 [파일 확장명]을 체크해 주세요 체크를 하면 위 사진처럼 뒤에 .png .jpg 확장자가 보일 겁니다 파일 한 두개 정도는 F2 버튼을 누르거나 [마우스 우클릭] > 이름 바꾸기를 이용하여 확장자를 바꿀 수 있는데 우리의 목적은 대량의 파일 확장자를 한 번에 바꾸는 작업입니다 첫 번째로 대량의 파일 경로에 메모장을 하나 생성해 주세요 파일명은 자유롭게 지어주시면 됩니다 메모..

[ItemsAdder] 아이템에더 그라데이션 글자 적용 방법 [내부링크]

오늘은 아이템에더에서 지원하는 Text Effects를 소개하겠습니다 r = rainbow 이런 식으로 출력됩니다 로 입력한 결과입니다 글자가 파도치기 형식으로 올라갔다 내려갑니다 w = Wobble 로 입력한 결과입니다 rainbow + wobble으로 합쳐진 형태입니다 그 밖에도 j = Jump : 글자가 위아래로 커졌다 작아졌다 합니다 rj = rainbow+Jump 이렇게 아이템에더에서 총 5개 글자 효과를 지원합니다 [ 참고 사이트 ] https://itemsadder.devs.beer/plugin-usage/text-effects-1.17+ Text Effects (1.17+) - ItemsAdder Wiki This triggers the rainbow effect: /tellraw @a {..

[ItemsAdder] 아이템에더 날개 치장 보완하기 [내부링크]

지난 강좌에서 날개 치장을 머리에 장착했는데 이 머리 부분을 사용하지 않고, 플레이어 머리에 아머스탠드를 태우는 방식으로 개선해 보겠습니다 마인크래프트에서 치장을 장착할 수 있는 방법이 머리, 왼손 이렇게 2가지입니다 그래서 스크립트를 이용하여 등 쪽 날개 부위를 장착할 수 있게 구현해 봅시다 지난 시간에 추가한 날개에서 behaviours 부분을 제거 해주고 material : diamond_horse_armor ( 다이아몬드 말 갑옷 )으로 설정해 줍니다 다이아몬드 말 갑옷으로 설정한 이유는 해당 아이템은 잘 사용하지 않아서 이걸로 선택했습니다 전 날개 치장 부분은 다 말 갑옷으로 설정하였고, 가구나 다른 모자 치장 아이템은 종이로 분류했습니다 [ 스크립트 연동 ] ver skript : 2.6.4 ..

[ItemsAdder] 아이템에더 가구를 추가해보자 [내부링크]

지난 시간에 커스텀 아이템을 추가해 봤는데 오늘은 아이템에더에서 가구를 추가하여 직접 플레이어가 앉을 수 있게 구현해 봅시다 https://www.spigotmc.org/resources/ultimate-furniture-1-17-1-19-%E2%9C%85-itemsadder-addon.107435/ Ultimate furniture | 1.17~1.19 | [ItemsAdder Addon] www.spigotmc.org 가구를 추가할려면 가구 모델이 필요할 텐데 해당 링크에서 가구 모델을 다운로드해 줍니다 압축을 풀어보면 configs 파일과 resourecpack 파일이 들어있을 텐데 configs 파일은 ItemsAdder > contents> _iainternal 경로에 붙여 넣고, resou..

[ItemsAdder] 아이템에더 커스텀 아이템 추가 방법 [내부링크]

오늘은 아이템에더에서 커스텀 아이템을 추가해 보려고 합니다 지난 시간에 /ia 명령어를 이용하여 카테고리를 열어봤는데 간단하게 카테고리가 어떤 형식으로 구성되어 있는지 파악해 봅시다 [ 아이템에더 자료 ] configs.zip : ItemsAdder > contents > _iainternal > configs 경로 안에 추가하면 됩니다 resourcepack.zip : ItemsAdder > contents > _iainternal 경로 안에 추가하면 됩니다 ItemsAdder > contents > _iainternal > configs 경로로 들어가주세요 (리소스팩은 카테고리에 적용된 리소스팩이 들어있습니다) 해당 경로로 들어가서 icons 파일을 노트패드나 다른 편집 프로그램으로 열어주세요 전 V..

[ItemsAdder] 아이템에더 적용 방법 (유료 플러그인) [내부링크]

오늘은 유료 플러그인 ItemsAdder에 대해 소개하겠습니다 현재 1.15 이상에 서버를 운영하고 있는 개발자분들은 대부분 사용 중이 실 겁니다 해당 플러그인 커스텀 아이템을 서버에 추가하여 가구, 모자, 치장 등 다양한 아이템들을 만들 수 있습니다 (플러그인 사용 가능 버전 : 1.15~ 1.19) 구글에 itemsadder를 검색 후 해당 링크를 클릭해서 구매하시면 됩니다 전 이미 구매해서 오른쪽 상단에 Download Now 상태인데 구매를 안 하셨다면 Buy Now for 19.95 EUR으로 보일 겁니다 결제는 페이팔로 진행되기 때문에 수수료 포함 3만원 가량 합니다 유료 플러그인만큼 다양한 기능들을 제공합니다! 지원되는 버전은 1.15~1.19까지 지원합니다 전 1.19.2 버전을 이용하여 ..

키자드를 통한 티스토리 백링크 등록 방법 ( 검색 유입 ) [내부링크]

제가 티스토리를 운영하면서 검색 유입 사이트를 찾아봤는데 키자드 사이트를 알게 되었습니다 앞에서 다룬 검색 유입 사이트보다 간단해서 소개 드립니다 저는 3가지 구글 서치콘솔, 네이버 서치어드바이저, 키자드를 이용하여 티스토리 게시글들을 네이버, 다음, 구글 등 다양한 사이트에 노출시켰습니다 오늘은 키자드 백링크 등록을 사용하여 본인의 티스토리 게시글을 노출시켜봅시다 키자드를 검색하여 해당 사이트에 접속해 주세요 [티스토리 백링크 등록] 버튼을 클릭해 주세요 티스토리 주소 : 본인의 티스토리 URL 시작 번호 : 본인의 티스토리 작성한 첫 게시글 URL 끝 번호 끝 번호 : 본인의 티스토리의 마지막으로 작성한 게시글의 URL 끝 번호 설정이 끝났으면 [등록] 버튼을 눌러주시면 됩니다 만약 게시글 하나만 추..

티스토리 네이버 서치어드바이저 등록하기 (네이버 검색 노출) [내부링크]

지난 글에서 구글 서치콘솔을 이용하여 구글에 게시글을 노출시켰는데 국내 사이트 네이버 또한 무시할 수 없습니다 오늘은 네이버 서치어드바이저를 이용하여 네이버에 티스토리 게시글을 노출시켜봅시다! 네이버 혹은 구글에 네이버 서치어드바이저를 검색해주세요 네이버 계정으로 로그인 후 [웹마스터 도구] 버튼을 클릭해 주세요 그러면 이런 화면이 나오는데 여기에 해당 티스토리 URL를 입력해 주시면 됩니다 전 이미 등록했습니다 해당 티스토리 링크를 입력 후 엔터를 눌러주시면 사이트 소유 확인 화면이 나타날 겁니다 구글 서치콘솔에서 했던 대로 HTML 태그에 메타태그를 복사하여 티스토리에 등록하면 됩니다 티스토리 관리 홈 > 꾸미기 홈-스킨 편집을 클릭하여 오른쪽 상단에 [html 편집] 버튼을 클릭해 줍니다 복사한 메..

티스토리 구글 서치 콘솔을 등록하여 검색 유입을 늘려나가자 [내부링크]

제가 작년에 작성했던 강좌 글이 구글이나 네이버에 유입이 안되고, 다음에만 유입이 되는 현상이 있었습니다 그때 티스토리 블로그를 처음 운영하면서 검색 유입도 등록해 줘야 하는데 제가 무지한 상태라 올해 블로그를 운영하면서 구글 서치콘솔을 알게 되었습니다 결과적으로 조회 수가 안 나왔습니다 여러분들도 티스토리 블로그를 운영하면서 이런 문제점이 발생하지 않았으면 해서 글로 작성해 봅니다 우선 구글 서치콘솔 Google Search Console 을 구글이나 다른 사이트에서 검색해 줍니다 구글 계정을 로그인하면 이런 화면이 나타날 겁니다 우리는 URL 접두어 부분을 사용하여 티스토리 블로그를 등록할 겁니다 URL 입력 칸에 자신의 티스토리 블로그 주소를 입력하고 [계속] 버튼을 클릭해 주세요 자신의 블로그를 ..

마인크래프트 움직이는 날개 치장 리소스팩 [ 2 ] [내부링크]

지난 강좌에 추가했던 날개 치장에서 더 업그레이드하여 움직이는 모션을 넣어봅시다 오늘은 지난번 날개 치장을 업그레이드하여 움직이는 모션을 추가해 봅시다! [ wing 모델과 이미지가 들어있습니다 ] 날개 모델을 열어 큐브를 추가하고 모양을 만들어주세요 전 날개를 펄럭 거리는 움직임을 주고 싶어서 이런 모양으로 했습니다 총 6개의 이미지를 큐브 하나씩 넣을 겁니다 작업이 끝났으면 이제 날개 이미지를 편집하겠습니다 날개가 펄럭거리기 위해서는 이미지에 애니메이션을 넣어주셔야 합니다 만드는 방법은 현재 이미지 700 x 700 사이즈에서 밑에 700을 더 추가하여 700 x 1400으로 만들어줍니다 ( 움직이는 이미지가 4개면 700 x 4 = 세로 2800 크기로 설정하면 됩니다 ) 애니메이션 작동원리가 현재..

마인크래프트 예쁜 날개 치장 리소스팩을 빠르게 만들어보자 [내부링크]

리소스팩하면 치장이 제일 먼저 떠오를 텐데 오늘도 쉽고 빠르게 퀄리티 높은 날개 치장 리소스팩을 적용해 봅시다 [ 날개 모델 파일 ] https://lovepik.com/download/detail/450136460?byso=&type=3 Colorful Flying Angel Wings PNG Transparent Background And Clipart Image For Free Download - Lovepik | 450136460 Download this Colorful Flying Angel Wings PNG Transparent Background with high quality and best resolution with transparent background on Lovepik for f..

마인크래프트 무기 모델을 쉽고 빠르게 리소스팩에 적용해보자! [내부링크]

이번 시간에는 블록벤치를 이용하여 무기 모델을 만들고 서버에 적용하는 시간을 가져봅시다 sword 모델과 이미지가 들어있습니다 따로 경로를 수정하여 리소스팩에 적용해 보세요 현재 rpg서버를 구상 중인 개발자분들은 아마 퀄리티 좋은 무기들을 서버에 추가하고 싶을 겁니다 하지만 따로 무기 리소스팩을 구매할 돈이 부담되거나 내가 직접 만들어 퀄리티 좋은 무기가 나오지 않는다면 이 강좌를 참고해 보세요! 직접 원하는 무기.png 이미지를 이용하여 블록벤치에서 쉽게 작업하여 서버에 적용하실 수 있습니다 추가로 해당 무기 리소스팩은 1.12.2 말고 더 높은 버전에서도 적용이 가능합니다! https://www.pngwing.com/ko/free-png-nrzbx Claymore Shivering Isles Wea..

마인크래프트 폰트에 이미지를 적용해보자! [내부링크]

오늘은 특정 유니코드에 이미지를 출력하는 방법을 알아봅시다 특정 기호나 알파벳 등 같은 크기의 활자를 폰트라고 합니다 https://www.dropbox.com/s/s1riz7uq1vs7ps5/%ED%8F%B0%ED%8A%B8%20%EB%A6%AC%EC%86%8C%EC%8A%A4%ED%8C%A9.zip?dl=0 폰트 리소스팩.zip Dropbox를 통해 공유함 www.dropbox.com 체력바 + 폰트 리소스팩 입니다 해당 폰트 이미지는 리소스팩은 1.12.2 이상 버전부터 다 적용됩니다 플레이어 접두사 앞에 이병 약장 이미지가 보이는데 이런 식으로 폰트에 이미지를 입혀 출력해 보는 시간을 가져봅시다 리소스팩에 textures > font > unicode_page_92.png 이미지가 생겼을 텐데 이..

마인크래프트 1.12.2 체력바 리소스팩 응용편 [내부링크]

우리가 만든 체력바를 좀 더 응용해 봅시다 https://www.dropbox.com/s/kwsbpf03vpe9157/%EC%B2%B4%EB%A0%A5%EB%B0%94%20%EC%9D%91%EC%9A%A9.zip?dl=0 체력바 응용.zip Dropbox를 통해 공유함 www.dropbox.com 리소스팩을 다운로드해 주세요 모드 섭이나 퀄리티 있는 HUD를 보게 되면 체력바 가운데에 플레이어 머리가 나오는 모습을 알 수 있습니다 오늘은 이 플레이어 머리를 체력바에 등록하는 법을 알아봅시다 요 녀석을 이용하여 플레이어 머리를 보이게 할 겁니다 models > item > skull이라는 파일이 생겼을 텐데 이 파일을 이용해서 gui 부분에 위치값을 조절해 주시면 됩니다 translation z값을 수정할..

마인크래프트 1.12.2 체력바 리소스팩을 좀 더 보안하자! [내부링크]

지난 시간에 체력바 구현을 해봤는데 이번 시간에는 좀 더 디테일한 체력바를 구현해 봅시다 https://www.dropbox.com/s/dqlq9l0l3rhgfcy/%EC%B2%B4%EB%A0%A5%EB%B0%94%2B%EC%9D%B8%EB%B2%A4%ED%86%A0%EB%A6%AC.zip?dl=0 체력바+인벤토리.zip Dropbox를 통해 공유함 www.dropbox.com 오늘 적용할 리소스팩 입니다 체력바 위치를 조정하고 싶어서 Translation에 x 값을 -80로 변경하여 9번 칸에 있는 이미지 위치를 정중앙으로 변경해 줬습니다 지난 시간에 블록벤치에서 설명한 부분입니다 빨간 동그라미 : x 초록 동그라미 : y 파란 동그라미 : z 근데 인벤토리를 열어보니 체력바 이미지가 인벤토리를 가리고..

[ResourcePack] 1.12.2 체력바 리소스팩 구현하기 [내부링크]

안녕하세요 무사 입니다 작년에 작성한 랜덤무기 서버팩에서 리소스팩을 추가하여 더 퀄리티 있는 서버를 개발해 봅시다 ( 공부 목적으로 작성된 글이라 잘못된 점이 있더라도 양해 부탁드립니다 ) 서버에 적용할 리소스팩입니다 [ 작동 원리 ] 1. 해당 체력바는 아이템의 내구도별로 0~100까지에 모델 이미지를 적용시키는 방법입니다 2. 구현된 체력바는 인벤토리 9번칸 슬롯을 이용하여 체력바를 화면에 나타나게 하였습니다 ( 그래서 체력바를 등록시키면 슬롯 한 칸을 소비해야 한다는 단점이 있습니다 ) [ 체력바 아이템도 사용하지 못합니다 / 따로 내구도가 무한이면 괜찮습니다 ] 3. 스크립트랑 연동하여 피가 달 때마다 해당 리소스팩을 업데이트해준다 체력바 리소스팩 입니다 https://www.dropbox.com..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 16 ] [ 최종본 ] [내부링크]

랜덤무기 전쟁 서버 마지막 강좌입니다 이 강좌를 계기로 자신만에 원하는 서버를 하나 만들었으면 좋겠습니다 마지막으로 상점에 아이템을 더 추가하는 작업을 가져보겠습니다 ( B등급 랜덤뽑기 / 닉네임 변경기 아이템 추가 ) 첫번째로 B등급 랜덤뽑기 시스템 입니다 지난 13강좌때 만든 랜덤뽑기 시스템에서 변수만 수정해줬습니다 그 다음 닉네임 변경기 입니다 command /닉네임변경 []: trigger: if arg 1 is set: if name of player's tool is "&8&l[ &f&l닉네임 &6&l변경권 &8&l]": set {_message} to colored arg 1 #임시변수를 색깔이 있는 arg 1로 설정합니다 if length of uncolored {_message} > 8:..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 15 ] [내부링크]

오늘은 서버내 칭호를 개발해보겠습니다 칭호를 개발하기 앞서 하나의 플러그인을 적용해줍니다 https://dev.bukkit.org/projects/combatlog/files Files - CombatLog - Bukkit Plugins - Projects - Bukkit 88.90 KB Aug 6, 2017 1.12 +6 71,576 58.58 KB Feb 16, 2017 1.11 16,515 57.15 KB Aug 29, 2016 1.10 39,476 48.28 KB Aug 1, 2013 1.7.4 239,074 dev.bukkit.org CombatLog 플러그인입니다 이 플러그인은 전투 도중 서버에 나갈시 자동으로 킬처리 되는 기능이 있습니다 서버내 싸움 도중 공격자를 피하여 일부러 나갔다 들어오..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 14 ] [내부링크]

오늘은 서버내 우편함과 돈 시스템, 랜무서버에 필요한 간단한 기능들을 추가하겠습니다 대부분 서버마다 우편함 시스템이 있어 강좌글에 적용해봤습니다 options: r : &d&l[ &f&l우편함 &d&l] &f on join: # 플레이어가 서버에 접속했을때 이벤트 set {_pos} to size of {postbox.%uuid of player%::*} #임시변수는 해당 플레이어에 고유식별자 배열의 크기로 설정합니다 if {_pos} >= 1: # 설정한 변수에 크기가 1이상이라면 send "{@r} 우편함에 확인하지 않은 아이템이 있습니다" to player stop # 서버에 접속했을때 플레이어에 우편함에 아이템이 있을경우 해당 문구를 보여줍니다 command /우편함: trigger: open c..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 13 ] [내부링크]

오늘은 전장에 입장시 랜덤무기 뽑기권 지급과 자동으로 갑옷을 입는 기능을 만들어보겠습니다 우선 랜덤무기 뽑기권을 만들기 전에 우리가 만든 랜덤무기를 명령어를 통해 변수에 담고 그 변수에서 랜덤으로 뽑히는 기능을 만들어보겠습니다 새로운 스크립트 파일을 만들어주세요 ( 파일명 : 랜덤뽑기 ) options: r : &7&l[ &f&l랜덤무기 &7&l]&f&l command /랜덤무기 [] []: #해당 명령어를 입력했을때 trigger: if player is op: # 플레이어가 오피일때 if arg 1 is not set: # [] 부분이 설정이 안되어있다면 send "{@r} /랜덤무기 등록 = 손에 들고 있는 아이템을 추가합니다" send "{@r} /랜덤무기 삭제 [번호] = 등록된 번호에 랜덤무기..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 12 ] [내부링크]

이제 서버내 시스템과 유틸리티 기능을 개발해보겠습니다 우선 메뉴 시스템을 만들겠습니다 메뉴 시스템을 만들기 전에 npc를 먼저 만들어줍니다 ( 시티즌 강좌 참고 : https://mu-sa.tistory.com/6 ) [Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 5 ] 오늘은 4개의 플러그인을 적용해보겠습니다 1. SkinsRestorer과 Vault 플러그인 2. 시티즌 플러그인 3. MobHealth 플러그인 1. SkinsRestorer과 Vault 플러그인 첫번째 플러그인은 SkinsRestorer와 Vault호환 플.. mu-sa.tistory.com 스크립트 파일을 새롭게 만들어 파일명을 메뉴로 설정했습니다 options: r : &7&l[ &f&l서버 &7&l]&f&l comma..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 11 ] [내부링크]

오늘은 마지막 남은 9개 무기를 완성시키겠습니다! 오늘도 소스 코드입니다 #킬백 on right click: if "%lore of player's tool%" contains "&e&l[&f&l설명&e&l] &f&l우클릭시 바라보는 적 뒤로 갑니다": set {_cooldown} to difference between {킬백.%player%} and now if {_cooldown} is less than 60 seconds: set {_text} to "%difference between 60 seconds and {_cooldown}%" replace all " seconds" and " second" with "초" in {_text} replace all " and " with " " in {_..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 10 ] [내부링크]

어느덧 10번째 강좌입니다 여태까지 따라오느라 고생 많으셨습니다 이제 절반만 더 구현하고 시스템 부분을 개발하겠습니다 소스 코드입니다 #랜덤카드 on damage of player: if "%lore of attacker's tool%" contains "&e&l[&f&l설명&e&l] &f&l상대방 타격시 1~5데미지를 랜덤으로 줍니다": set {_랜카} to random integer between 1 and 5 #임시변수에 1~5사이에 숫자를 랜덤으로 설정합니다 set damage to {_랜카}/2 #현재 데미지를 임시변수에서 랜덤으로 뽑힌 숫자에/2 만큼 데미지를 설정합니다 if {_랜카} is 5: #만약 임시변수에서 뽑힌 숫자가 5라면 send "{@r} 5 데미지가 들어갔습니다!" to a..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 8 ] [내부링크]

오늘도 랜덤무기를 만들어보겠습니다 대략 30개 정도 구현하고 다음 단계로 넘어가겠습니다 기존 랜덤무기 파일에 적용해주세요 #바람의재생 on right click: if "%lore of player's tool%" contains "&e&l[&f&l설명&e&l] &f&l우클릭시 1~5칸 랜덤으로 회복한다": #플레이어 도구에 로어가 해당 문자열이 포함될때 set {_cooldown} to difference between {바람재.%player%} and now # {_cooldown} 임시변수를 바람재 변수와 현재시간 사이에 차이로 설정합니다 (마지막에 스킬을 사용한 시간과 현재시간에 사이에 차이로 설정합니다) if {_cooldown} is less than 50 second: #만약 임시변수가 50..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 7 ] [내부링크]

이번 강좌에서는 스크립트를 이용하여 랜덤무기를 만들어보겠습니다 스크립트를 처음 배우는 분들도 제 강좌를 계속 보면서 따라오시면 됩니다 랜덤무기 파일을 만들어줍니다 options: #옵션 r : &7&l[ &f&l랜덤무기 &7&l]&f&l #r은 &7&l[ &f&l랜덤무기 &7&l]&f&l텍스트로 지정합니다 #시공간검객 on damage of player: #플레이어에게 데미지를 줄때 if "%lore of attacker's tool%" contains "&e&l[&f&l설명&e&l] &f&l상대방 타격시 0.5초동안 멈출 수 있습니다": #만약 공격자 도구에 "&e&l[&f&l설명&e&l] &f&l상대방 타격시 0.5초동안 멈출 수 있습니다" 로어가 포함된다면 set {stop_player.%victi..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 6 ] [내부링크]

드디어 메인 시스템인 스크립트 플러그인에 대해 알아보겠습니다 랜덤무기 전쟁 시스템 절반이상을 이 스크립트 플러그인으로 구현한다해도 과언이 아닙니다 이제 대부분 시스템들을 스크립트를 이용하여 개발하겠습니다 https://www.dropbox.com/s/slck9pb9csob54r/%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8.zip?dl=0 스크립트.zip Dropbox를 통해 공유함 www.dropbox.com 우리가 개발할 스크립트 버전은 2.5입니다 따로 애드온까지 넣었습니다 (애드온이란 스크립트내 구문을 간략한 구문으로 작성할 수 있게 도와주는 도구입니다) 이제 스크립트를 작성할 텍스트 편집기도 다운로드해줍니다 (따로 노트패드나 sublime Text가 있으면 넘어가시면 됩니다)..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 5 ] [내부링크]

오늘은 4개의 플러그인을 적용해보겠습니다 1. SkinsRestorer과 Vault 플러그인 2. 시티즌 플러그인 3. MobHealth 플러그인 1. SkinsRestorer과 Vault 플러그인 첫번째 플러그인은 SkinsRestorer와 Vault호환 플러그인입니다 명령어는 따로 없습니다 https://www.spigotmc.org/resources/skinsrestorer.2124/ (SkinsRestorer 플러그인을 다운로드 해주세요) https://applemangoblog.tistory.com/8 마인크래프트 1.12.2 호환 플러그인 Vault [다운/리뷰] 마인크래프트 호환 플러그인 안녕하세요 애플망고 입니다 간단한 소개와 함께 이 플러그인을 소개해볼까 합니다 소개 및 다운로드 요즘 상..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 9 ] [내부링크]

22개의 남은 무기를 만들기 위해 달려봅시다 소스 코드입니다 #프레데터 on right click: if "%lore of player's tool%" contains "&e&l[&f&l설명&e&l] &f&l우클릭시 모습을 감춥니다": set {_cooldown} to difference between {프레데터.%player%} and now if {_cooldown} is less than 1 minute: set {_text} to "%difference between 1 minute and {_cooldown}%" replace all " seconds" and " second" with "초" in {_text} replace all " minute" with "분" in {_text} send..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 4 ] [내부링크]

이번에도 플러그인을 추가해봅시다 1. 에센셜 플러그인 2. NBTEditor 플러그인 1. 에센셜 플러그인 이번에 소개할 플러그인은 에센셜 플러그인입니다 말그대로 서버에 필수적인 플러그인이죠 https://www.dropbox.com/s/6597sv2y31sf2y5/%EC%97%90%EC%84%BC%EC%85%9C.zip?dl=0 에센셜.zip Dropbox를 통해 공유함 www.dropbox.com 파일이 많아서 드롭박스에서 다운로드 하시면 됩니다 에센셜 플러그인은 대부분 아실거라 생각하셔서 자주 쓰는 명령어만 남겨두겠습니다 명령어 기능 설명 /spawn 스폰으로 이동합니다 /setspawn 해당 위치에 스폰지점을 설정합니다 /ban 를 벤합니다 /unban 를 언벤합니다 /banip 의 아이피 벤을 ..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 3 ] [내부링크]

오늘도 서버에 필요한 다른 플러그인들을 적용해봅시다 1. 월드가드 플러그인 2. 멀티월드 플러그인 1. 월드가드 플러그인 우선 첫번재로 월드가드 플러그인을 다운로드 해줍니다 월드가드 플러그인은 유저들이 서버내 건축물들을 부수거나 pvp를 방지할때 많이 사용하는 플러그인입니다 https://dev.bukkit.org/projects/worldguard/files Files - WorldGuard - Bukkit Plugins - Projects - Bukkit 1.12 MB Jul 27, 2022 1.19.1 +1 10,990 1.11 MB Mar 6, 2022 1.18.2 +2 185,810 1.11 MB Sep 16, 2021 1.18.1 +1 212,164 1.09 MB Jun 7, 2021 1.16..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [ 2 ] [내부링크]

지난 강좌에서 서버를 열어봤습니다 오늘은 플러그인 파일을 넣고 그 기능들을 사용해보는 시간을 가지겠습니다. 1. 랜덤무기 서버 메모장 및 기본 게임룰 셋팅 2. 서버내 world 폴더 맵 적용법 3. 월드에딧 플러그인에 스키메틱 기능 이용법 우선 서버 파일을 열어보시면 plugins 폴더가 있습니다 여기에 월드에딧이라는 플러그인을 넣겠습니다 이렇게 플러그인 폴더에 플러그인을 넣으시면 됩니다 주로 플러그인은 bukkit 사이트에서 다운로드 받습니다 https://dev.bukkit.org/projects/fawe/files Files - FastAsyncWorldEdit - Bukkit Plugins - Projects - Bukkit 14.22 MB Aug 6, 2022 1.19.1 +4 676 14.2..

[Minecraft] 1.12.2 랜덤무기 전쟁 구축 [내부링크]

안녕하세요 오늘은 마인크래프트 랜덤무기 서버 주제를 가지고 강좌글을 작성할려고 합니다 흔히 1.5.2 또는 1.12.2 에서 많이 랜덤무기 서버를 즐겨보셨을텐데 이번 강좌를 통해 1.12.2 기반으로 랜덤무기 서버를 구축하여 자신만에 랜덤무기와 서버팩을 만들어가는 시간을 가져봅시다 먼저 개발 환경을 만들고 서버를 직접 열어봅시다 ( ver : 1.12.2 ) https://www.koreaminecraft.net/bukkit/2996615 마인크래프트 페이퍼 서버구동기 (Paper) (1.8.8~1.19.2) - 현재 가장 많이 사용되는 서버 소프트웨어 - 개요게임플레이와 메커니즘 간에 불일치한 점을 고치는 것이 목표인 고성능 코어로 스피곳에서 포크된 프로젝트 입니다.리튬 모드의 코드들이 사용되었기에 최..