본문 바로가기
728x90
반응형

ОКБ (실험 설계국)27

7. [Python] Socket 프로그래밍 기본 테스트 및 윈도우 방화벽 장기 프로젝트가 종료되고 나니, 뭘 해야할 지 감이 안잡힌다. 한 일주일정도 '먹이를 찾아 어슬렁거리는 늑대'의 심정으로 인터넷 여기저기를 들쑤시면서 새로 배울만한 것이 있나 찾아본다. 그러다가 컴퓨터 통신을 위한 소캣 프로그래밍을 접하게 되었고, 이 부분을 천천히 독학하기 시작했다. 동일한 노트북 내에서 서버와 클라이언트에 대한 Python 코딩을 끝내고, 두 프로그램 간, 통신을 진행해보았다. 코드는 아래와 같이 작성했다. 서버는 127.0.0.1의 8080 포트로 통신을 시도하는 클라이언트 프로그램이 있는지 확인하고, 만약 통신을 시도하는 클라이언트가 존재한다면 이 통신에 대해 허용(accept)한 뒤 클라이언트가 보내는 메세지를 표시하고 "Hello, I am Server" 메세지를 클라이언트에게.. 2020. 5. 26.
5. [IDPW Project] - 5차 진행[2020.04.11 ~ 2020.05.17] 마침내!! 지난 12월부터 이어왔던 장기 프로젝트를 마무리지었다. 물론 사용 가능한 사이트 추가와 같은 소소한 것들이 조금 남아있긴 하지만, 이 부분은 필자가 프로그램을 장기간 사용하면서 추가해야하는 내용이기 때문에 이전의 진행 과정처럼 머리를 싸매고 고민해야할 것들은 아니다. 이번 5차 프로젝트에서 많은 부분이 변화되었다. 따라서 최종 버전 역시 기존의 1.0.0에서 1.2로 변경되었다(원래 계획대로라면 1.1.x로 마무리될 예정이었다). 어차피 베타 버전이 Major 1버전이라 크게 상관은 없다만... 이번 차수에서 진행하려 했던 목표는 아래와 같다. 1. 암호화 방식 변경 2. 함수 인터럽트 예외 처리 3. 가이드 제작 4. 라이선스 제작 및 적용 5. 버그 확인 및 디버깅 이와 더불어 이번 차수에.. 2020. 5. 18.
4. [IDPW Project] - 4차 진행[2020.04.03 ~ 2020.04.11] 필자가 이 프로젝트의 3차 작업을 마무리한 것이 3월 27일쯤이었다. 해당 차수의 작업을 마무리할때 즈음, 코로나의 여파 때문인지... 일감이 폭발적으로 몰려오는 바람에, 4차 진행 프로젝트는 5월 말이나 되어야 마무리가 될 것이라 생각했다. 하지만, 정말 다행스럽게도, 지난 포스팅을 작성한 바로 직후에, 이번 차수에 끝내야할 목표 대부분을 마무리한 덕에, 예상보다 매우 빠른 시점에, 4차 프로젝트를 종료할 수 있게 되었다. 이번 차수의 작업에서 이루려 했던 목표는 아래와 같다. 1. 언어 설정 추가 2. 자동 로그인 및 인증키와의 연동 3. 각 함수별 인터럽트 신호에 대한 예외처리 4. 파일 암호화 방식 변경 이 중, 가장 단순한 노가다 작업인 3번을 제외한 나머지 목표는 모두 달성했다. 1. 언어 설.. 2020. 4. 11.
3. [IDPW Project] - 3차 진행[2020.02.28 ~ 2020.03.28] 코로나19 사태가 심각해짐에 따라, 필자도 2월 중순부터 상반기의 정보보호기사 시험을 응시하지 않기로 결심했다. 그럼에도 불구하고, 다시 이 프로젝트를 시작하게 된 시점이 늦어진 이유는... 뭐 직장인 신분이다보니... 말해 무엇할까. 빨리 사업 아이템 들고 나와서 자동으로 수익 구조 만들 수 있는 무언가를 개발해야겠다는 생각 뿐이다. 아직까지도 까마득하게 먼 미래의 이야기지만. 주중에는 집에 돌아와 거의 프로젝트에 손을 대지 못했고, 그나마 주말 이틀 중 하루를 통으로 잡아 영화 보거나 음악을 들으면서 동시에 코딩을 진행했다. 지난 포스팅에서 이번 3차 진행 시 구현해야 할 사항을 정리해놓았는데, 추가된 것도 많고, 중간에 변형되거나 삭제된 내용도 있다. 더해서 메인 페이지의 구성도 조금씩 변경된 부분.. 2020. 3. 29.
2. [IDPW Project] - 2차 진행[2019.01.17. ~ 2020.02.02] 간만의 포스팅이다. 새해 첫 달의 절반이 순삭된 듯한 느낌을 받을 정도로 일이 바빠, 포스팅을 올릴 만한 행위가 거의 없었다. 다행히 바쁜 일이 하나 둘씩 순차적으로 처리되면서 새해 시작 보름만에 저녁 시간을 활용해 무언가를 할 수 있게 되었다. 타고난 성격이 끊임없이 머릿 속에서 무언가를 생각하는 타입이라 그런지, 출퇴근때나 외근 이동길에 종종 이 프로젝트를 어떻게 이어나갈지에 대해 지속적으로 고찰해왔다. 그 고찰 덕분에 보름 정도의 짧은 시간동안, 기본적인 기능이 (완전하지는 않더라도) 무리없이 동작하는 수준의 프로그램이 만들어졌다. 지금까지 만든 프로그램의 대략적인 특징은 다음과 같다. 1. 다중 사용자를 위한 프로그램이다. 말 그대로다. 이 프로그램은 사실 필자 혼자 사용하기 위해 만들었다가, 가.. 2020. 2. 2.
1. [IDPW Project] - 1차 진행[2019.12.15 ~ 2020.01.01] 연말이 되면서 인터넷에 존재하는 개인 계정을 한 눈에 볼 수 있는 프로그램을 만들어보기로 헀다. 일 년에 몇 번 들어가지 않는 계정인 경우, 아이디나 비밀번호가 기억나지 않아, 개인 업무에 차질이 있었던 경험이 종종 있었기에, 오래 전부터 벼르고 벼르던 일이었는데, 12월 중순이 되어서야 시작할 수 있게 되었다. 사실, 컴퓨터 메모장에 작성하고 저장하면 되는 아주 간단한 일임에도 필자가 이렇게 프로그램을 만드는 이유는 몇 가지가 있다. 우선, 메모장은 평문으로 저장되기 때문에 타인에게 노출될 확률이 무지하게 높다. 따라서 필자는 모든 계정 정보를 나름대로 암호화하여 보관하려 한다. 물론 그 암호화 프로그램 또한 필자가 마음대로 만든 것이라 강력하진 않겠지만, 적어도 일반 사람들에게 쉽게 노출되지는 않을테.. 2020. 1. 1.
[2019.09.27] 공구 툴박스 - 3. 마무리 작업 최근에 바쁜 일이 이것저것 일어나, 프로젝트에서 며칠 간 손을 떼어야만했다. 그러다가, 지난 금요일 저녁에야 잠시 시간이 나서, 큰 박스 하나를 들어다가 툴박스 외부 뚜껑을 만드는 작업에 돌입할 수 있었다. 뚜껑을 어떻게 만들것인지 고민이 참 많았다. 내부의 작은 모듈들처럼, 블록형식으로 뚜껑을 만들지, 아니면, 접이식 뚜껑을 만들것인지의 문제부터 장단점을 하나씩 따져보았다. 전자의 형태는 만들기는 쉽지만 뚜껑의 분실 가능성이 높다는 것이 문제였고, 후자의 형태는 분실의 염려는 없지만, 큰 박스 하나를 새로 얻어 작업을 진행해야했고 작업이 녹록치가 않다는 점이 문제였다. 그래서 처음에는 블록형식으로 뚜껑을 만드려고 했지만, 예상되는 결과물 자체가 너무 멋이 안나서, 후자를 선택했다. 후자를 선택하고 나서.. 2019. 10. 1.
[2019.09.22 - 2019.09.23] 공구 툴박스 - 2. 본체 보관함 제작 토요일은 자격증 시험으로 인해, 툴박스 만들기 프로젝트를 진행하지 못했다. 사실 시험보고 돌아와서 프로젝트를 계속 진행하려 했지만, 비오고 어둑어둑한 날씨때문인지 아무것도 하기 싫어 하루 쉬었다. 일요일 저녁 시간, 그리고 오늘 저녁 시간을 활용해 미친듯이 프로젝트에 몰두했더니, 툴박스가 95% 정도 완성되었다. 이번에 만든 보관함은, 전동 드라이버와 충전 USB, 그리고 지난 20일에 만든 비트 보관함을 한번에 깔끔하게 관리하려는 목적으로 만들었다. 1. 설계 본체 보관함은 여러 층으로 구분되어 있다. 전동 드라이버 자체의 두께가 얇지는 않은 편이라, 본체 보관함 옆으로 비트 보관함을 쌓아올리면, 다른 도구 하나 정도는 충분히 더 보관할 수 있을 것이라 판단해서 층을 나누었다. 필자가 공예를 하면서 자.. 2019. 9. 24.
[2019.09.20] 공구 툴박스 - 1. 설계 및 비트 보관함 제작 이번 추석에 전동 드라이버 하나를 득템하게 되었다. 가벼운데다가 사용법도 간단해서 금방 사용법을 숙달하게 되었다. 문제는, 전동 드라이버를 보관할 마땅한 보관함이 없다는 것이었다. 일반 드라이버라면 그냥 공구통에 던져넣고 보관하면 되겠지만, 필자가 받은 것은 '작은 전동' 드라이버다. 게다가 충전도 USB를 이용해서 진행하다보니, 드라이버 USB 포트에 이물질이 들어가 수명이 짧아지지 않을까하는 걱정도 되었다. 드라이버 뿐만 아니라, 동봉된 부속품과 따로 구매한 부속품의 보관도 문제였다. 특히 드라이버에 장착해서 사용하는 육각 철제 비트는, 자성이 있는 제품이라 먼지를 미친듯이 끌어당기는 탓에, 맞춤 보관함이 없으면 보관하기가 상당히 까다로울듯 했다. 마침, 최근들어 다시 시간이 남는 덕에, 전동 드라이.. 2019. 9. 21.
6. [CentOS7] vsftpd 소스파일 설치 에러 해결 방법 =================================================== /usr/bin/ld: cannot find -lcap collect2: error: ld returned 1 exit status make: *** [vsftpd] 오류 1 =================================================== =================================================== /lib/libcap.so.2: error adding symbols: File in wrong format collect2: error: ld returned 1 exit status make: *** [vsftpd] 오류 1 =====.. 2019. 8. 23.
5. Android Linux에 httpd 설치하기 Android Linux에 서버를 구축하기 위해 관련 패키지를 다운로드/설치하는 도중, 다시 문제가 생겼다. 필자가 구축할 서버 중 하나는 http 웹 서버인데, 웹 서버 구축을 위해 관련 패키지인 httpd 를 yum 명령어로 설치하는 과정에서 오류가 발생했다. yum install 명령어를 통해, 설치 가능한 httpd를 확인하고 y를 눌러 다운로드와 설치 과정을 진행했는데, 마무리 단계에서 컴퓨터가 다음과 같은 에러 문구를 뿜어내면서 설치를 거부한다... 해당 오류 문구를 긁어 구글링을 진행했다. 필자와 비슷한 버전의 httpd를 rpm으로 설치하면서 해당 오류를 맞이한 사람들 댓글이 장날 시장바닥 사람 머릿수만큼이나 북적댄다. 대부분이 RHEL계열, CentOS 7 사용자다 문제 제기 글에 달린 .. 2019. 8. 13.
4. Android에 설치한 Linux에서 ping 사용하기 필자는 여전히, Android 스마트폰에 리눅스를 설치하고, 향후 개인용 서버를 구축할 수 있는 환경을 확인하는 작업을 계속 진행중이다. 아무래도, 컴퓨터에서 사용하는 일반 리눅스와는 차이가 많이 있는지, 지난 포스팅에서 언급했던 systemctl과 service 명령어 외에도 몇몇 명령어가 들지 않는 현상이 간간히 나타나고 있다. systemctl과 service 명령어 이후, 필자를 괴롭힌 명령어는 ping이다. 클라이언트와 서버 사이 통신 연결이 확립되었는지 확인하는 명령어인 만큼, 서버 구축 과정에서 필수로 사용하게 되는 명령어다. 보통 리눅스 설치 시, 기본적으로 제공되는 명령어임에도, 필자의 스마트폰에 설치된 리눅스는 이 명령어에 대한 스크립트를 가지고 있지 않았다. ping 사용이 불가능하다.. 2019. 8. 12.
728x90
반응형