일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 3D모델링
- kubernetes
- nas
- 3D
- octoprint
- C언어
- docker container
- 3D 프린터 용어
- git
- IoTNetwork
- docker
- 데이터 직렬화 포맷
- 3D프린터
- Notification
- OnlineIDE
- 코틀린개발환경
- linux job
- 리눅스 파일동기화
- 3d프린터 초보
- Jenkins
- Token인증방식
- data serialization formats
- github
- 네이버클라우드
- ci/cd
- 3D프린터 입문
- 3D프린터입문
- NAS HDD교체
- Kotlin
- gitlab
- Today
- Total
목록전체 글 (108)
0과 1을 공부하다.
본 게시물에서는 시놀로지(Synology) NAS를 이용한 메일서버를 구축하는 방법에 대해 알아본다. 시놀로지 NAS(가정용)는 일반적인 기업용 서버 혹은 포털사이트 메일 서버와 다르게 성능 및 용량 측면에서 부족하다. 또한 다른 웹 메일 서비스(google, naver)과 다르게 스팸 차단에 대한 대응이 충분하게 이뤄지지 않는다. 따라서 다른 메일서버는 많은 메일을 다뤄야 하는 환경에서 사용하는 것을 권장하지 않는다. 필자는 메일 프로그래밍 학습 및 테스트 용도로 구축하였고, NAS는 synology DS218을 이용하였다. DNS Setup 메일 발신자가 수신자의 이메일 도메인의 올바른 주소로 찾아가기 위해 DNS 서버의 질의값을 통해 찾아간다. 필자는 가비아 호스팅 업체를 통해 도메인을 구매했다. ..
본 게시물에서는 Rocky 8 에서 네트워크를 고정ip로 설정하는 방법에 대해 알아본다. 네트워크 설정을 변경하기 위해서는 해당 경로(/etc/sysconfig/network-scripts/)로 이동하여 자신의 네트워크 장치 파일(ifcfg-enp0s3[장치명])을 텍스트에디터(vim)를 이용하여 수정한다. 네트워크 장치 파일을 열면 아래와 같은 설정값이 나타난다. 각 설정값이 의미하는 바는 아래와 같다. TYPE=Ethernet # 장치타입 DEVICE=enp0s3 # 장치 이름 NAME=ens192 # GUI상 표시되는 이름 BOOTPROTO=none # ip 할당 방식 (dhcp(자동), static(수동), none(없음)) ONBOOT=yes # 부팅시 디바이스 실행여부 UUID=—————- #..
방화벽 개요 방화벽(Firewall)의 원래 의미는 건물에서 발생한 화재가 더 이상 번지는 것을 막기 위한 시설이다. 이러한 의미는 네트워크상에서 동일한 의미로 사용되고 있으며, 주체가 화재에서 불법적인 트래픽으로 바꼈다는 것이다. 네트워크상에서 불법적인 보안사고를 방지하기 위해 트래픽을 관제하고 정해진 룰에 따라 차단 및 거부를 수행한다. 이로써 사전에 불법적인 행위를 차단하여 공격자로부터 불법행위를 방지할 수 있는 기능을 한다. ※ 본 글은 Linux Rocky 8(Red Hat 계열) 기준에서 작성하였다. 방화벽 설치 및 실행 # 설치 $ yum install firewalld # 상태확인 $ systemctl status firewalld # 서비스 시작 $ systemctl start firew..
SSH(Secure Shell)는 원격지 호스트 컴퓨터에 접속하기 위해 사용되는 인터넷 프로토콜이다. 기본 포트는 22번 포트이지만 보안성과 동일 네트워크에서 다른 서버와의 충돌을 막기 위해 SSH의 포트를 변경하여 사용할 수 있다. 본 게시글에서는 ssh의 설치부터 설정에 대해 알아본다. (본 게시물은 Debian 계열의 Raspbian운영체제를 기준으로 작성하였음.) SSH 설치 $ sudo apt install openssh-server SSH 상태 확인 $ systemctl status ssh SSH 시작 $ systemctl start ssh SSH 종료 $ systemctl stop ssh SSH 재시작 $ systemctl restart ssh (systemctl 명령어는 service명령어..
본 글에서는 PHP로 작성된 코드의 Unit Test 환경구성 및 테스트에 대해 다룬다. 테스트 환경은 Linux Rocky 8 버전에서 php 7.3버전에서 수행한다. 환경구성 (1) php install php 7.3 version을 설치한다. 설치 방법은 아래 참고사이트 [1]번 링크를 참조한다. (2) composer install php 패키지 관리자 'composer'를 설치한다. $ curl -sS https://getcomposer.org/installer | php (3) phpunit install php 7.3 버전에 호환되는 phpunit phpunit 9.3 버전을 설치한다. $ php composer.phar require --dev phpunit/phpunit ^9.3 (3) ..
스팸 및 악성 메일 위협 유형 인터넷 메일 시스템은 개인, 기업, 학교, 기관 등 다양한 곳에서 상호간 커뮤니케이션을 위한 중요한 서비스이다. 인터넷 이메일 서비스가 중요한 커뮤니케이션 수단으로 이용되는 만큼 이를 악용한 사이버 공격 사례와 정상적인 서비스 이용을 방해하는 광고성(Spam Mail)성 메일도 늘어나고 있다. 이러한 사이버 공격과 광고성 메일은 기존보다 고도화, 지능화되고 있어 이를 막기 위한 기술과 서비스가 필요한 실정이다. 아래는 스팸 및 악성 메일과 관련된 용어와 위협 유형이다. (1) 용어 가. 스팸메일 : 불특정을 대상으로 보내는 광고성 메일. 최근 빅데이터 및 인공지능을 이용하여 특정 대상에 대해 발송하기고 하기만 기본적으로 불특정을 대상으로 함. 악의적인 목적은 갖고 있지 않지..
개요 본 프로젝트의 기획단계에서 기기간의 연결성과 사용자와 상호작용을 위해 서버와 센서간 Bluetooth 통신을 계획했다. 이번 게시물은 스마트홈에 빌드하여 바로 적용하는 코드가 아닌 서버-센서간 통신을 위한 기초 예제이다. 본 예제는 향후 Sensor에서 다루는 내용에 기본적으로 포함되는 예제이므로 반드시 확인하고 넘어가야하는 항목 중 하나이다. Arduino 가. 환경구성 앞서 2-1에서 Arduino IDE를 설치했다면 별도의 환경구성은 필요없다. 본 예제에서 사용된 MCU와 센서는 Arduino UNO, HC-06)을 사용하였다. 나. 회로연결 블루투스 모듈(HC-06)에 Arduino에서 5V를 인가한다. (5v, GUD 결선) 소스코드에서 지정한 RX(수신) 아날로그 포트와 블루투스 모듈의 ..
개요 본 게시물에서는 Python의 멀티 쓰레드 예제를 알아본다. 파이썬은 기본적으로 인터프리터 언어로 싱글 스레드로 실행한다. 프로그램을 작성하다보면 여러 가지 일을 동시에 실행하는 동시성이 필요한데 동시에 여러 가지 일을 수행하기 위해서는 프로그램의 병렬처리가 필요하다. 프로그램의 병렬처리를 위해서는 멀티 쓰레드에 대한 개념과 멀티 프로세스에 대한 개념을 이용한다. 쓰레드와 프로세스의 간략한 개념은 아래와 같다. Process 단순히 실행 중인 프로그램이라고 할 수 있다. 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것을 말한다. 프로세스는 프로그램에서 사용되는 데이터와 메모리 등의 자원 그리고 쓰레드로 구성된다. 프로세스간의 자원공유는 이뤄지지 않는다. Thread ..
본 게시물에서는 Window 또는 Linux OS에서 명령어로 Python을 실행할 때 매개변수를 전달하여 실행하는 방법에 대해 알아본다. (본 게시물은 Linux 터미널을 기준으로 함) 내용 예제를 실행하기 이전에 Liux에 파이썬이 설치되어 있는지, path 경로가 지정되어 있는지 확인한다. $ python - -version 코드가 길지 않고 많은 설명이 필요 없기 때문에 두서없이 예제코드를 먼저 작성한다. import sys # 입력받은 매개변수 만큼 출력 for i in range(0, len(sys.argv)): print(‘sys.argv[%d]: %s’%(i, sys.argv[i])) 앞서 터미널에서 매개변수를 전달하여 코드를 실행하기 위해 먼저 sys 모듈을 import 한다. 입력받은 ..
필자는 대학에서 컴퓨터공학을 전공했고 학군사관후보생(ROTC)를 거쳐 육군 장교로 복무했다. 현재는 육군 중위로 전역하여 보안 업계에서 개발자로 근무하고 있다. 이번 컬럼에서는 학군사관후보생(ROTC)이 컴퓨터공학도에게 좋은 선택인지 이야기 해보고자 한다. 우선 필자가 학군 장교로 복무하게 된 이유에 대해 설명하면 필자는 중/고교 시절부터 조직의 대표가 되어 리더십을 발휘하는 것을 좋아했고 한국전쟁, 북한의 무력도발과 관련된 영상 및 영화를 보며 국가에 기여하고 싶다는 생각이 들었다. 그래서 장교로 임관하여 병력들 앞에서 리더십을 발휘하고 국가에 기여하고자 장교가 되기로 결심했다. 장교가 되기 위해 대학교 선정에 앞서 학군단 설치 유무를 확인하고 지원했다. 대학교에 입학 후 장교의 관문을 통과하기 위해 ..