Latest Post
-
온라인에서 익명성을 유지하는 방법과 개인정보 보호 팁
서문국내 인터넷 검열 실태는 심각하다.대부분의 국가들은 선택적 감시 (노란색), 감시가 거의 없음 (초록색) 상태인 반면 대한민국은 상당한 감시 (연분홍) 상태이다. (출처) 셧다운제, SNI 차단, 인터넷 검열감시법만 봐도 그 실태를 알 수 있다. 만 16세 미만 아동청소년의 수면권 보장을 위해 시작된 셧다운제는 국내 게임회사에서 서비스하는 PC 온라인 게임에만 한정되어 있어 모바일 게임, 해외 플랫폼 게임에는 적용되지 않아 아무런 의미가 없었던 법안이다. 2019년 SNI 차단은 https 패킷에서 SNI 필드에 접속하고자 하는 웹사이트 주소는 암호화되지 않는 원리를 이용했는데 패킷을 감청한다는 부분에서 국민들의 반발이 일어났고 이러한 방식은 위헌적이다. 인터넷 검열감시법은 카카오톡 오픈채팅과 인터넷..
-
M1 맥북에서 도지코인 채굴하기
거래소 가입 국내 거래소(빗썸, 업비트, 코인원 등)는 미성년자의 가입을 제한하고 있다. 코인 투자는 미숙한 경제 관념을 갖고 있는 미성년자에게 권장되지 않기 때문이다. 해외 거래소도 마찬가지지만 국내 거래소 보다는 상대적으로 덜 엄격한 듯 하다. 일단 본인은 binance 2단계 KYC 인증을 통과하여 정상적으로 바이낸스 해외 거래소를 이용할 수 있다. 만 18세 이상 (생일 지난 19살)은 대부분의 해외 거래소에서 가입 허가를 해준다. 지갑 주소 확인 Wallet > Fiat and Spot 에 들어가서 도지코인 검색 후 Deposit 버튼을 누른다. 이후 원하는 네트워크 선택 후 지갑 주소를 복사한다. 채굴 프로그램 설치 XMRig 이곳에서 자신의 PC 운영체제에 맞는 XMrig 프로그램을 설치한다..
-
Ubuntu 22.04 서버 세팅하기
서문 Windows 7을 약 2주 간 서버로 사용한 후 다시 Ubuntu 22.04로 돌아왔다. OBS 송출 테스트를 위해 Ubuntu Server 대신 Ubuntu를 설치했고, 완전한 순정 상태다. 이번 글에서는 Ubuntu 22.04를 서버로 사용하기 편리하게 세팅하는 방법을 소개하겠다. 이 글과 겹치는 내용이 있으나 추가적으로 업데이트 된 내용도 있다. 반드시 순정 상태에서, 홈 디렉토리에서 해야 문제가 생기지 않는다. ✅ 패키지 업데이트 sudo apt-get update -y sudo apt-get upgrade -y 🪡 각종 인프라 유틸리티 sudo apt-get install htop net-tools neofetch cpufetch 👸 터미널을 예쁘게 만들기 sudo apt-get inst..
-
지하철 실시간 혼잡도 API 활용하기
2024년 현재는 3호선도 실시간 혼잡도를 제공한다. 서론 SK open API SK에서 운영하는 Open API 중에 지하철 혼잡도 데이터를 제공하는 API가 있다는 것을 @D0hwq1 친구를 통해 알게 되었다. 오랜만에 API 활용 개발을 해볼 겸 지하철 혼잡도를 알려주는 사이트를 개발했다. API 소개 데이터 제공 가능한 역의 역 번호, 열차 혼잡도, 칸별 혼잡도, 칸별 하차비율, 실시간 혼잡도 이렇게 5개의 API가 제공되고 있다. 혼잡도 데이터는 수도권 지하철 1호선~9호선과 신분당선을 지원하고, 실시간 혼잡도는 2호선만 지원하며, 2호선을 타면 스크린에서 볼 수 있는 혼잡도 데이터를 불러오는 것이다. 100% 혼잡도는 열차 한 량에 160명이 있는 상태를 의미한다. 혼잡도에 대한 내용은 아래 ..
-
Python Flask에서 url_for 안에 변수 넣기
잘못된 예시 ` 올바른 예시 ` 2022년 7월 1일 작성한 글입니다.
-
디자인 목업 이미지 제작하기
첫 디자인 관련 글이다. 디자인 툴 UI/UX를 디자인하는 툴 중에 유명한 툴로는 Sketch, Adobe XD, Figma 등이 있다. 필자는 꾸준히 사용자가 증가하고 있고 무료로 사용 가능한 Figma를 선호하는 편이다. 이 글에서는 Figma를 사용하여 IoT 앱을 디자인 해보고, 목업 이미지를 만들어 보겠다. 앱 컨셉과 디자인적 요소 IoT 앱에서 각 방마다 설치된 에어컨, 조명, 세탁기, 스피커 등 스마트 기기들을 조작할 수 있게 해야 한다. 홈 화면에는 현재 선택된 방을 표시하고, 그 방에 있는 기기들의 목록과 작동 상태를 간단하게 표시한다. 기기 버튼을 클릭하면 해당 기기를 세부적으로 조작할 수 있는 UI를 만들어야 한다. 전체적인 디자인은 뉴모피즘 (Neumorphism) 기반으로 제작하겠..
-
맥북 화면 꺼지지 않게 설정하기
맥북을 사용하다가 잠시 자리를 비우고 싶을 때 cmd + control + q 를 눌러 화면을 잠그는 경우가 있다. 그러나 이때 잠금 화면은 몇 초 동안만 켜져 있다가 화면이 꺼지는데, 화면이 꺼지지 않고 잠금 화면이 계속 켜져있도록 하고 싶을 수 있다. 또한 음악을 감상할 때는 화면을 덮어도 잠자기 모드로 들어가지 않게 하고 싶은 상황이 있을 수 있다. 이 두 상황을 해결할 수 있는 방법을 소개하겠다. Amphetamine Amphetamine이란 맥북 화면이 꺼지지 않게 유지하는 프로그램으로 잘 알려져 있다. 몇 시간 몇 분 동안 화면이 꺼지지 않는 상태를 유지할 것인지, 특정 프로그램이 실행하고 있을 때 세션을 시작할 것인지 등 트리거 기능을 포함하여 매우 상세하게 설정이 가능하다. 만약 화면을 잠..
-
23학년도 6월 모의평가 수학 21번 Python
2022.06.09. 시행된 2023학년도 대학수학능력시험 6월 모의평가 수학 21번 문제를 프로그래밍으로 해결하는 글이다. 문제 자연수 n에 대하여 $4\log_{64}\left(\frac{3}{4n+16}\right)$ 의 값이 정수가 되도록 하는 1000 이하의 모든 $n$의 값의 합을 구하시오. 풀이 로그 밑인 64는 $2^6$ 이므로, 식을 다음과 같이 정리할 수 있다: $$ \frac{2}{3}\log_{2}\left(\frac{3}{4n+16}\right) $$ 이 값이 정수가 되려면 $\log_{2}\left(\frac{3}{4n+16}\right)$ 의 값이 3 또는 -3의 배수가 되어야 한다. 먼저 $n$이 자연수일때 $\frac{3}{4n+16}$ 은 $2^3$, $2^6$, $2^9..
Server
-
Ubuntu 22.04 서버 세팅하기
서문 Windows 7을 약 2주 간 서버로 사용한 후 다시 Ubuntu 22.04로 돌아왔다. OBS 송출 테스트를 위해 Ubuntu Server 대신 Ubuntu를 설치했고, 완전한 순정 상태다. 이번 글에서는 Ubuntu 22.04를 서버로 사용하기 편리하게 세팅하는 방법을 소개하겠다. 이 글과 겹치는 내용이 있으나 추가적으로 업데이트 된 내용도 있다. 반드시 순정 상태에서, 홈 디렉토리에서 해야 문제가 생기지 않는다. ✅ 패키지 업데이트 sudo apt-get update -y sudo apt-get upgrade -y 🪡 각종 인프라 유틸리티 sudo apt-get install htop net-tools neofetch cpufetch 👸 터미널을 예쁘게 만들기 sudo apt-get inst..
-
Tor 서버에서 나만의 .onion 도메인 생성하기 (커스텀 도메인)
서문 Tor 브라우저로 딥웹을 서핑하다 보면 어떤 사이트는 정말 랜덤한 56자리의 도메인 (onion v3 기준) 을 가진 곳이 있고, 어떤 사이트는 랜덤한 문자열 앞에 의미가 있는 단어를 포함한 경우도 있는 것을 보았다. 예를 들어 한 Q&A 사이트는 도메인이 answer로 시작하고, 호스팅 사이트는 dhosting 으로 시작하는 사이트가 있다. 심지어 페이스북 딥웹 사이트는 onion v2 때 랜덤한 문자열이 전혀 없었고 Facebook's Core WWW Infrastructure 를 뜻하는 facebookcorewwwi.onion 을 가지고 있었다. 도대체 이러한 도메인은 어떻게 만드는 것일까 연구를 해보다 한글 자료가 거의 없어서 직접 정리를 해본다. .onion 도메인 원리 이 글에서 언급했듯..
-
Tor 출구 노드 (Exit node) 운영하기
Tor란? 기술적인 이야기는 최대한 빼고 쉽게 설명해보겠다. Tor는 The Onion Router의 약자로, 네트워크를 우회하여 사용할 수 있게 해주는 툴이다. Tor는 본래 미국 정부에서 인터넷 프라이버시를 지키기 위해, 국가에서 인터넷 감시를 당하는 사람을 위해 개발되었는데, 익명성을 유지할 수 있다는 Tor의 장점 때문에 비트코인 자금세탁, 마약, 총기, 위조 여권, 청부 살인 서비스가 운영되는 딥 웹 범죄 현장이 되기도 한다. 여기서 딥 웹은 일반적인 검색 엔진으로 검색되지 않고 Tor 브라우저를 통해서만 들어갈 수 있는 .onion 도메인을 가진 웹을 뜻한다. 앞서 작성한 이 글의 '보안 4단계' 부분은 .onion 도메인을 가진 딥 웹에 블로그를 만드는 것이다. 그렇다면 Tor는 어떻게 익명..
-
fail2ban으로 SSH 보안 향상하기 / 접속 차단
로그인 시도 기록 확인 sudo lastb lastb 파일은 /var/log/lastb 파일을 뜻하는데, 그냥 sudo cat /var/log/lastb를 하면 이상한 문자들까지 같이 나와서 보기가 상당히 어렵다. 따라서 위의 명령어를 사용해야 한다. 그런데 로그인 시도 기록이 너무 많아서 터미널에서 한번에 보기 어렵다면 less 명령을 활용하자. 방향키로 탐색하며 로그를 볼 수 있다. sudo lastb | less 로그인 시도 기록이 몇 건인지 확인하고 싶으면 줄 수를 알려주는 명령인 wc를 활용하자. sudo lastb | wc -l SSH 접속 화이트리스트/블랙리스트 설정 sudo nano /etc/hosts.allow # /etc/hosts.allow sshd: 123.123.123.123 ss..
-
Ubuntu 홈서버 구축 가이드
서문 이 글은 홈서버를 구축하기 위한 완전한 가이드다. 홈서버의 개념, 장점, VPS와의 차이, 운영체제 설치와 각종 툴 설치에 대한 내용을 설명하고 있다. 아래에서 설명하는 내용은 반드시 중요 자료를 백업한 후에 진행해야 한다. 홈서버란? 홈서버란 집에 나만의 서버를 구축하는 것이다. 집에 서버를 구축하는 이유는 재미, 학습의 이유, 동영상 다운로드나 토렌트와 같은 반복적인 업무를 수행하기 위한 목적이 있다. 데이터 센터에서 VPS 서버를 대여하는 것이 네트워크 안정성, 화재에 대한 위험에 대한 측면으로는 훨씬 낫지만, 하드웨어 업그레이드가 용이, 무엇보다 재미가 있기 때문에 홈서버를 구축하는 사람들도 적지 않다. 장비 미니 PC 오래된 노트북 Raspberry Pi 스마트폰 위에서 언급한 장비 모두 ..
-
Ubuntu Server에 GUI 설치 후 RDP로 접속하기
사용 환경 Ubuntu Server 20.04.3 LTS macOS Monterey 12.1 GUI의 필요성 홈서버에 windows vm을 설치할 일이 생겨 qemu로 설치를 하고, ssh -X 옵션과 xquartz를 통해 맥에서 해당 vm을 띄우는 세팅을 했는데, 안정성이 매우 떨어져 결국 ubuntu server에 gnome gui를 올리고 rdp로 접속하여 vmware를 통해 windows vm을 세팅하는 방향을 선택했다. 서버에 gui가 돌아간다는게 참 불편하긴 하지만 때로는 cli보다는 gui 환경에서 세팅해야 편한 작업들이 꽤 있기 때문에 이번 기회에 설치를 해보고, 이 글에서는 아래의 순서대로 글을 작성하겠다. ubuntu-desktopminimal 설치 runlevel설정 mac에서 rdp..
-
Ubuntu에서 Docker를 이용한 IRC 서버 구축
IRC란? Internet Relay Chatting의 약자로, 특정 topic을 가지고 사용자끼리 대화를 할 수 있습니다. Installation 먼저 방화벽에서 6667, 6697, 7000, 7001 포트를 열어줍니다. iptables -I INPUT 1 -p tcp --dport 6667 -j ACCEPT iptables -I INPUT 1 -p tcp --dport 6697 -j ACCEPT iptables -I INPUT 1 -p tcp --dport 7000 -j ACCEPT iptables -I INPUT 1 -p tcp --dport 7001 -j ACCEPT 또는 서버 방화벽 (보안 그룹) 페이지에서 해당 포트를 열어줄 수 있습니다. sudo apt install docker sudo ..
-
Arch Linux 홈서버 셋업
AWS 나의 첫 서버는 AWS의 프리 티어 서버였다. 싱글 가상 코어, 1기가 램, 매우 적은 용량의 HDD는 서버를 단순히 파일 저장을 위한 클라우드로 사용할 수 밖에 없었다. code-server 를 올리고 nginx로 이것저것 세팅을 하다보면 금새 램은 꽉 차있었고, 패키지 몇 개를 설치하다 보면 빠르게 줄어드는 디스크 가용 용량은 매우 불편했다. 심지어 서버 region이 멀리 떨어져 있는 지역이라 터미널에 글자를 입력하면 1초 뒤에 반응하는 심각한 불편함이 있었다. 이때 돈을 주고서라도 좋은 사양의 서버가 필요하다는 것을 깨닫고 vultr로 넘어갔다. Vultr $5/mo, 싱글 가상 코어, 1기가 램, 50기가의 SSD, 무엇보다 IDC가 서울에 있어 네트워크 속도가 매우 빨랐다. (단, 서울..
Cybersecurity
-
온라인에서 익명성을 유지하는 방법과 개인정보 보호 팁
서문국내 인터넷 검열 실태는 심각하다.대부분의 국가들은 선택적 감시 (노란색), 감시가 거의 없음 (초록색) 상태인 반면 대한민국은 상당한 감시 (연분홍) 상태이다. (출처) 셧다운제, SNI 차단, 인터넷 검열감시법만 봐도 그 실태를 알 수 있다. 만 16세 미만 아동청소년의 수면권 보장을 위해 시작된 셧다운제는 국내 게임회사에서 서비스하는 PC 온라인 게임에만 한정되어 있어 모바일 게임, 해외 플랫폼 게임에는 적용되지 않아 아무런 의미가 없었던 법안이다. 2019년 SNI 차단은 https 패킷에서 SNI 필드에 접속하고자 하는 웹사이트 주소는 암호화되지 않는 원리를 이용했는데 패킷을 감청한다는 부분에서 국민들의 반발이 일어났고 이러한 방식은 위헌적이다. 인터넷 검열감시법은 카카오톡 오픈채팅과 인터넷..
-
SuNiNaTaS 32 Writeup
문제 풀이 요약 USB 파일 시스템 복구 파일 데이터 확인 문제 풀이 제시 문제 경찰청으로 부터 연쇄 테러 용의자로 부터 압수한 USB 이미지 분석을 의뢰 받았다. 최초 분석을 신입 직원에게 맡겼으나 Hex Editor로 여기 저기 둘러 보다 실수로 특정 부분이 손상되고 이미지가 인식되지 않는다. 당신은 포렌식 전문가의 자존심을 걸고 이미지를 살려 내고 다음 테러를 예방하는데 기여를 해야 한다. 다음 테러 계획이 들어있는 문서의 수정 일시는? (UTC+9) 다음 테러 장소는? 인증키 형식 : lowercase(MD5(YYYY-MM-DD_HH:MM:SS_장소) 예) lowercase(MD5(2016-03-28_13:00:00_Pink Lake) USB 파일 시스템 복구 문제 설명을 보면 USB 이미지 특정..
-
SuNiNaTaS 29 Writeup
문제 풀이 요약 header 체크 후 FTK Imager로 분석 dns host 파일 체크 키로거 프로그램 찾기 webcache를 통해 다운로드 기록 찾기 문제 풀이 유준혁은 PC가 고장나서 형 유성준에게 PC를 고쳐 달라고 했다. 그런데, 유성준은 동생의 PC를 고치면서 몇 가지 장난을 했다. 당신은 이 PC를 정상으로 돌려 놓아야 한다. 웹 서핑은 잘 되는데, 네이버에만 들어가면 사이버 경찰청 차단 화면으로 넘어간다. 원인을 찾으면 Key가 보인다. 유성준이 설치 해 놓은 키로거의 절대경로 및 파일명은?(모두 소문자) ex) c:\windows\notepad.exe 키로거가 다운로드 된 시간은? ex) 2016-05-27_22:00:00 (yyyy-mm-dd_hh:mm:ss) 키로거를 통해서 알아내고..
-
SuNiNaTaS 28 Writeup
문제 풀이 요약 zip 파일 구조 분석 flag bit 변조 후 압축 해제 base64 decode 문제 풀이 문제에서 zip 파일이 하나 주어진다. 그러나 어떤 문자열을 입력해봐도 풀리지 않고, fcrackzip 과 같은 zip 크래킹 툴로도 해결되지 않는다. 이 파일은 비밀번호가 걸려 있지 않은데 걸린 척 위장되어 있는 파일이다. flag bit이 암호화를 담당하는 부분인데, 해당 값을 00 00으로 변조하면 된다. 압축을 풀면 아래의 파일들이 나오고, Am_I_Key.zip 안의 There_is_key.txt 에 dGE1dHlfSDR6M2xudXRfY29mZmVl 가 나온다. 이 값을 base64 decode 하면 된다. FLAG: ta5ty_H4z3lnut_coffee 2022년 1월 25일 작성..
-
SuNiNaTaS 26 Writeup
문제 풀이 요약 빈도 분석 문제 풀이 szqkagczvcvyabpsyincgozdainvscbnivpnzvbpnyfkqhzmmpcqhzygzgfcxznvvzgdfnvbpnjyifxmpcqhzygbpnoyaimygbzgngbvmpcqhzygcbpinnbzqndicgxhiztozgcfmpcqhzygbpnjyifxeagzyimpcqhzygbpneagzyidicgxhiztozgcfmpcqhzygcgxcoyaibzqnvyabpsyincggcbzygcfmpcqhzygszqzvbpnozivbvyabpsyincgozdainvscbnibyjzgcqnxcfcbcgzvaeagzyiyivngzyidicgxhiztnungbzvampcqhzygvpzhcgxbpnyfkqhzmdcqnvvpnzvbpnozivbonqcfnvscbnib..
-
SuNiNaTaS 21 Writeup
문제 풀이 요약 헥스값 분석, 숨겨진 사진 파일 추출 추출된 여러 파일을 이용해 답 유추 문제 풀이 위의 이미지가 주어진다. JPG header인 FF D8이 여러 번 검색되는 것을 보아, 문제에서 주어진 이미지의 footer 밑에 또 다른 JPG 파일들이 숨어있다는 것을 추측할 수 있다. binwalk로 추출해보자. binwalk --dd='.*' monitor.jpeg 여러 개의 파일이 추출되었다. 플래그의 일부가 공개되어 있는 사진 여러 장을 확인하며 조합하면 플래그가 된다. FLAG: H4CC3R_IN_TH3_MIDD33_4TT4CK 2022년 1월 25일 작성한 글입니다.
-
SuNiNaTaS 19 Writeup
문제 풀이 요약 주어진 문자열을 bin to string caesar cipher 문제 풀이 0100111001010110010000110101010001000110010001000101 0110001000000100101101000110001000000100101001001100 0100010101011010010001010101001001001011010100100100 1010001000000101001001000101010101010010000001001011 0100011001010101010100100101000000100000010110100100 1010001000000101001000100000010110000100011001000110 0101010100100000010101010101..
-
SuNiNaTaS 18 Writeup
문제 풀이 요약 주어진 문자열을 ascii code에서 문자열로 변경 base64 decode 문제 풀이 86 71 57 107 89 88 107 103 97 88 77 103 89 83 66 110 98 50 57 107 73 71 82 104 101 83 52 103 86 71 104 108 73 69 70 49 100 71 104 76 90 88 107 103 97 88 77 103 86 109 86 121 101 86 90 108 99 110 108 85 98 50 53 110 86 71 57 117 90 48 100 49 99 109 107 104 문제에는 위의 숫자들이 주어지는데, 모든 숫자들이 0부터 255 범위에 있는 것으로 보아 ascii code 임을 알 수 있다. 문자열로 변경하면 V..
-
SuNiNaTaS 15 Writeup
문제 풀이 요약 파일 다운로드 후 메타데이터 조회 문제 풀이 음악 파일이 주어지는데, 이곳에서 metadata를 조회한다. FLAG: GoodJobMetaTagSearch 2022년 1월 25일에 작성한 글입니다.
-
SuNiNaTaS 14 Writeup
문제 풀이 요약 패스워드를 크랙할 계정 발견 john the ripper로 리눅스 비밀번호값 크랙킹 문제 풀이 압축을 풀면 passwd, shadow 파일이 나온다. 이 파일은 실제 리눅스 시스템에서 각각 /etc/passwd, /etc/shadow 에 해당하고, passwd 에는 사용자 계정 정보가, shadow 에는 해당 사용자의 비밀번호를 암호화한 값이 저장되어 있다. root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/game..
-
CTFd 기본 배너 삭제하는 방법
문제 발생 교내 자율동아리를 위한 CTFd 서버를 구축하다가 생긴 일이다. A cool CTF platform from ctfd.io Follow us on social media: Click here to login and setup your CTF 예전에는 기본 배너를 admin panel > config > theme 에서 없애줄 수 있었는데 업그레이드가 되며 안되는듯 하다. 결국 소스코드를 분석하여 없애는 방법을 찾아냈다. grep 으로 문자열 검색 grep -r 'to login and setup your CTF' . "to login and setup your CTF" 라는 문자열이 포함된 파일을 검색한다. ./CTFd/views.py 의 index 변수를 수정해도 없어지지 않았다. 바로 아래..
Blockchain
-
M1 맥북에서 도지코인 채굴하기
거래소 가입 국내 거래소(빗썸, 업비트, 코인원 등)는 미성년자의 가입을 제한하고 있다. 코인 투자는 미숙한 경제 관념을 갖고 있는 미성년자에게 권장되지 않기 때문이다. 해외 거래소도 마찬가지지만 국내 거래소 보다는 상대적으로 덜 엄격한 듯 하다. 일단 본인은 binance 2단계 KYC 인증을 통과하여 정상적으로 바이낸스 해외 거래소를 이용할 수 있다. 만 18세 이상 (생일 지난 19살)은 대부분의 해외 거래소에서 가입 허가를 해준다. 지갑 주소 확인 Wallet > Fiat and Spot 에 들어가서 도지코인 검색 후 Deposit 버튼을 누른다. 이후 원하는 네트워크 선택 후 지갑 주소를 복사한다. 채굴 프로그램 설치 XMRig 이곳에서 자신의 PC 운영체제에 맞는 XMrig 프로그램을 설치한다..
-
이더리움과 클레이튼을 활용해 나만의 NFT 민팅하기
NFT란? 대체 불가능 토큰(Non-fungible token, NFT)이란 블록체인 기술을 이용해서 디지털 자산의 소유주를 증명하는 가상의 토큰(token)이다. 그림, 영상 등의 디지털 파일을 가리키는 주소를 토큰 안에 담음으로서 그 고유한 원본성 및 소유권을 나타내는 용도로 사용된다. 즉, 일종의 가상 진품 증명서. OpenSea에 Metamask 연결 이 글에서는 이더리움과 클레이튼 가상화폐를 사용하여 판매하기 위한 방법을 소개하겠다. 먼저 이더리움을 하기 위해서는 metamask 지갑이 필요한데, 지갑 생성 방법은 건너뛰겠다. OpenSea 프로필 페이지에 들어가면 어떤 지갑을 연결하고 싶은지 나오는데, MetaMask를 클릭한다. Next를 눌러서 지갑을 연결한다. 이더리움 NFT 발행 사이트..
-
Handshake 도메인, 블록체인 도메인이란? (+내 도메인 역사)
서론 나는 언제나 짧은 도메인에 대한 갈망이 있었다. 지금까지 수많은 도메인을 사용해오면서 각각의 주소마다 장단점이 존재했다. 그 전에, 내가 2018년 중2 시절 본격적으로 웹 개발 공부를 하기 시작한 때부터 사용한 도메인의 역사를 나열해보겠다. devleo.kro.kr (이 이전에는 wix 자체 제공 도메인 또는 github 자체 제공 도메인을 사용했음) 2018~19 년도에 사용한 도메인이고, 내도메인.한국 이라는 한국형 서비스라서 처음 개발을 접한 나에게는 쉬웠고, 간단하고 직관적인 기능들 덕분에 만족하며 사용했다. devleo.ga 2019년도에 사용한 도메인이고, freenom 이라는 무료 도메인 사이트를 통해 발급했다. devleo.us 2020년에 사용한 도메인이고, 처음으로 nameche..
macOS
-
맥북 화면 꺼지지 않게 설정하기
맥북을 사용하다가 잠시 자리를 비우고 싶을 때 cmd + control + q 를 눌러 화면을 잠그는 경우가 있다. 그러나 이때 잠금 화면은 몇 초 동안만 켜져 있다가 화면이 꺼지는데, 화면이 꺼지지 않고 잠금 화면이 계속 켜져있도록 하고 싶을 수 있다. 또한 음악을 감상할 때는 화면을 덮어도 잠자기 모드로 들어가지 않게 하고 싶은 상황이 있을 수 있다. 이 두 상황을 해결할 수 있는 방법을 소개하겠다. Amphetamine Amphetamine이란 맥북 화면이 꺼지지 않게 유지하는 프로그램으로 잘 알려져 있다. 몇 시간 몇 분 동안 화면이 꺼지지 않는 상태를 유지할 것인지, 특정 프로그램이 실행하고 있을 때 세션을 시작할 것인지 등 트리거 기능을 포함하여 매우 상세하게 설정이 가능하다. 만약 화면을 잠..
-
맥에서 Tiling Window Manager 사용하기 (Yabai) / 고급스럽게 macOS 커스텀하기
서문 macOS를 커스텀 해봤자 얼마나 할 수 있겠냐는 의문을 가진 사람에게 이 글을 추천한다. macOS 커스텀이 바탕화면 바꾸고, 바탕화면 아이콘 크기 조절하고, 독/메뉴바 숨기는 정도의 수준이라고 생각한다면 큰 오산이다. 이 글에서는 macOS에서 Linux의 느낌을 물씬 낼 수 있는 커스텀 방법을 소개하겠다. Window Manager Window Manager란 그래픽 사용자 인터페이스 환경에서 데스크톱 상의 각 윈도를 관리할 목적으로 만들어진 소프트웨어를 가리킨다. 마이크로소프트 윈도우나 맥OS 등은 운영 체제의 일부로서 만들어져 있는 반면, X 윈도 시스템에서는 얼마든지 제3자가 만든 창 관리자를 사용할 수 있다. X 윈도용으로 잘 알려진 창 관리자로는 TWM, 플럭스박스 등이 있다. (출처..
-
M1 맥에서 XAMPP 설치 에러 해결하기
XAMPP XAMPP는 크로스 플랫폼 웹 서버 자유 소프트웨어 꾸러미이다. 아파치 웹 서버, MariaDB, PHP, 펄을 포함하고 있다. GNU 일반 공중 사용 허가서로 배포되며 자유롭고 쓰기 쉬운 웹 서버이다. 마이크로소프트 윈도우, 리눅스, 솔라리스, 맥 오에스 텐 등에서 동작하며 주로 웹 개발에 사용된다. (출처) XAMPP의 의미는 X (크로스 플랫폼), A (Apache), M (MariaDB), P (PHP), P (Perl) 이다. macOS에서 발생한 오류 이곳에서 XAMPP for OS X 8.1.6을 다운받고 실행했는데 서버를 시작할 수 없다는 에러가 발생했다. show details를 눌러보니 이런 에러 메세지가 떴다. 원인은 macOS 11.3으로 업데이트 되면서 개발자가 로컬 환..
-
CLI 프로그램을 맥 네이티브 프로그램으로 번들링하기 (+Custom URI Scheme)
서문 웹브라우저에서 file:/// 을 입력하면 로컬 파일을 볼 수 있고, ftp:// 를 입력하면 ftp 서버에 연결할 수 있고, safari에서 http:// 를 입력하면 localhost로 연결된다. 이 외에도 컴퓨터에 steam이 설치되어 있다면 steam:// 프로토콜을 통해 steam 프로그램을 열 수 있고, firefox 브라우저는 moz:// 프로토콜을 가지고 있다. 이렇게 특정 프로그램을 간편하게 조작하고 접근하기 위해 커스텀 프로토콜을 만드는 경우가 있다. 이 글에서는 macOS에서 커스텀 프로토콜을 만드는 방법에 대해 서술하겠다. Platypus Platypus 라는 프로그램이 있다. Platypus는 터미널 상에서만 작동하는 cli 프로그램을 맥 네이티브 프로그램으로 변환해주는 툴이..
-
생산성을 향상시켜줄 맥북 필수 앱 TOP 5 추천
서문 macOS, 큰 마음 먹고 맥북을 구매했으나 적응하지 못해 되파는 경우도 있을 정도로 Windows에 비해 사용하기 어렵고 unix 기반 운영체제 작동 방식을 이해해야 하는 운영체제다. 조금 더 쉽고 똑똑하게 macOS를 사용하기 위하여 필자가 2021년 2월부터 m1 맥북을 사용해 오면서 경험한 다양한 생산성 프로그램을 소개해보려고 한다. WineSkin (무료) WineSkin이란 윈도우 exe 파일을 맥에서 구동할 수 있게 해주는 프로그램이다. 사용 방법은 이곳을 참고하면 되겠다. 필자는 디스크 이미지 분석 포렌식 툴인 FTK Imager를 WineSkin에서 구동하고 있다. 물론 맥에서 FTK Imager가 존재하긴 하지만 cli 기반이라 사용하기 매우 불편하다. FTP Imager가 잘 구..
Blog
-
딥 웹에 비밀 블로그 만드는 방법 (Hugo)
서문 온라인 상에 존재하지만, 자신만 볼 수 있는 개인적인 메모장을 만드는 방법에는 여러 방법이 있다. 네이버 블로그나 티스토리의 글 보호 기능을 활용하여 글을 열람할 때 비밀번호를 입력하도록 할 수 있는데, 이 글에서는 그런 포털 사이트에서 제공하는 블로그 서비스를 활용하지 않는 방법을 기반으로 설명하겠다. 그 이유는 포털 사이트에서 제공하는 블로그 서비스인 만큼 가입 시 실명으로 가입해야 하기 때문에 본인의 신원이 드러나기 때문이다. 자신만의 블로그에 다른 사람이 접근하기 쉬운 순서대로 보안 단계를 지정하여 설명하겠다. 보안 0단계 보안 0단계 블로그는 다음과 같은 보안적인 특성을 가진다. (체크 표시가 많을수록 보안이 뛰어남) 보안 체크리스트 상태 표면 웹에 공개되어 있지 않은가? ❌ 검색엔진에서 ..
-
Hugo 정적 사이트 생성기를 활용한 기술 블로그 제작
정적 사이트란? 정적 사이트 (Static Site) 란 로그인, 회원 가입, DB 등 사용자 정보에 따라 동적으로 작동하는 웹이 아닌 그 누가 접속하더라도 똑같은 결과를 보여주는 순수 HTML (+CSS, JS) 로만 이루어진, 말 그대로 정적인 상태를 유지하는 사이트를 뜻한다. 블로그에 글을 작성할 때 마다 일일히 HTML 파일을 작성할 수는 힘들기 때문에 정적 사이트 생성기 (Static Site Generator) 라는 프로그램들이 존재한다. 대표적으로 Jekyll, Gatsby, Hugo, Hexo 등이 있다. Jekyll Ruby 기반 Github Pages에 내장되어 있어 github과 연동해서 사용하기 편함 테마, 플러그인, 관련 자료 풍부 페이지 수가 많아지면 기하급수적으로 빌드 속도가 ..
Coding
-
지하철 실시간 혼잡도 API 활용하기
2024년 현재는 3호선도 실시간 혼잡도를 제공한다. 서론 SK open API SK에서 운영하는 Open API 중에 지하철 혼잡도 데이터를 제공하는 API가 있다는 것을 @D0hwq1 친구를 통해 알게 되었다. 오랜만에 API 활용 개발을 해볼 겸 지하철 혼잡도를 알려주는 사이트를 개발했다. API 소개 데이터 제공 가능한 역의 역 번호, 열차 혼잡도, 칸별 혼잡도, 칸별 하차비율, 실시간 혼잡도 이렇게 5개의 API가 제공되고 있다. 혼잡도 데이터는 수도권 지하철 1호선~9호선과 신분당선을 지원하고, 실시간 혼잡도는 2호선만 지원하며, 2호선을 타면 스크린에서 볼 수 있는 혼잡도 데이터를 불러오는 것이다. 100% 혼잡도는 열차 한 량에 160명이 있는 상태를 의미한다. 혼잡도에 대한 내용은 아래 ..
-
Python Flask에서 url_for 안에 변수 넣기
잘못된 예시 ` 올바른 예시 ` 2022년 7월 1일 작성한 글입니다.
-
Heroku를 활용한 서버리스 인프라 구축
Serverless란? 서버리스. 서버가 없는 것을 뜻한다. 개발자가 서버를 관리할 필요 없이 백엔드가 존재하는 node.js, python 등의 코드를 돌릴 수 있게 하는 것을 의미한다. 그래서 엄밀히 말하자면 서버리스라고 해서 서버가 정말 존재하지 않는 것은 아니고 클라우드 제공 업체에 있는 것이다. 이런 서버리스 구조를 PaaS (Platform as a Service) 라고 하는데, 만약 nodejs 웹어플리케이션을 배포한다고 가정했을 때 aws의 ec2, google의 gcp, oracle의 oracle cloud와 같은 IaaS (Infrastructure as a Service) 같은 경우에는 리눅스 VPS에서 직접 npm을 설치하고, git 세팅도 하는 등의 기본적인 세팅까지 해야 한다. ..