본문 바로가기

전체 글

테이블 설정 / configuring tables source: https://wiki.nftables.org/wiki-nftables/index.php/Configuring_tables 이전 글: Ubuntu nftables 설치 다음 글: 체인 설정 / Configuring chains 테이블은 ruleset을 저장하는 top-level container입니다. table은 그 안에 chain, set, map, flowtable, stateful object를 포함합니다. 각 테이블은 1개의 family에 속하며(대응되며, 매칭되며), family는 ip, ip6, inet, arp, bridge, netdev가 있습니다. nftables을 설치하고 man nft를 입력하면 상세 안내를 볼 수 있습니다. 무려 2000 줄이 넘는 긴 내용입니다. n.. 더보기
nftables 이란 / netfilter.org nftables project source: https://www.nftables.org/projects/nftables/index.html 미리 읽으면 좋은 글: Ubuntu ufw & iptables & nftables 다음 글: Ubuntu nftables 설치 글을 한글로 옮기는 배경 필자는 Ubuntu 시스템에서 아주 간단하게 iptables을 이용하고 있으나 ufw를 이용하지 않고 있습니다. 그러나 좀 자세하게 알아봐야 겠다고 생각하고 Ubuntu ufw & iptables & nftables를 만들었습니다. 과거부터 시스템 운영자들이 DDoS가 시스템으로 들어올 때 iptables을 이용하여 방어하는 것을 들어왔습니다. 그러나 항상 들었던 문제는 rule을 많이 추가하면 성능이 확 떨어진다, 추가할 수 있는 rule 개수.. 더보기
Visual Studio Community 2019 설치하고 Hello World 출력하기 참고 https://yjcode.tistory.com/24 참고 https://wontory.tistory.com/5참고 참고 https://hyeunjae.tistory.com/3 연관 글: Windows에서 Visual Studio Code C/C++ 프로그래밍 Windows 10 PC에서 다운로드 설치하고 실행하는 환경입니다. 1. https://visualstudio.microsoft.com/ko/downloads/ 접속하여 Visual Studio 2019 Community 버전을 다운로드 합니다. 2. 이용자의 다운로드 디렉토리에서 "vs_community_" 로 시작하는 파일을 클릭하여 설치합니다. 필자의 파일은 vs_community__1542743971.1628481857.exe 입니다... 더보기
Windows에서 Visual Studio Code C/C++ 프로그래밍 source: Visual Studio Code에서 C/C++ 프로그래밍 연관 글: Visual Studio Community 2019 설치하고 Hello World 출력하기 글을 쓰는 배경 C/C++ 프로그래밍을 할 수 있는 Visual Studio Code (이하 vscode) 를 설치하여 이용해 보려다가 잘 정리된 자료 Visual Studio Code에서 C/C++ 프로그래밍 를 참고하여 필자도 직접 확인하는 과정을 글로 남깁니다. 이 글을에서는 컴파일러 설정, Visual Studio 설치, 한글 지원, 그리고 디버거 이용까지만 다룹니다. 더 넓은 주제는 자료 Visual Studio Code에서 C/C++ 프로그래밍 를 참고하는 것을 추천합니다. source 글을 읽어보니 mingw 설치를 해.. 더보기
Windows에서 gcc/g++ 컴파일러 패키지 MinGW-w64 설치 "Windows에서 gcc/g++ 컴파일러 패키지 MinGW32 설치" 를 먼저 읽어보면 이 글을 쉽게 이해할 수 있습니다. mingw64에 대해서 구글링을 하여 보니 http://mingw-w64.org/ 에서 필요한 것을 얻을 수 있다는 것을 알 수 있습니다. 그러나 http://mingw-w64.org/doku.php/download 에서 "MingW-W64-builds"를 선택하고 https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe/download 에서 installer를 설치하고 실행했으나 실.. 더보기
Windows에서 gcc/g++ 컴파일러 패키지 MinGW32 설치 source: 윈도우용 gcc, g++ 컴파일러를 사용하기 위해 MinGW 설치하는 방법 주의 이 글은 MinGW32를 설치하는 것으로 컴파일러도 32bit을 지원하며, 64bit을 지원하지 않습니다. 64bit 기반의 실행파일을 만들려면 MinGW-w64를 이용해야 합니다. MinGW-w64 설치는 "Windows에서 gcc/g++ 컴파일러 패키지 MinGW-w64 설치" 참고하며, Mingw32보다는 Mingw64를 설치하여 이용하는 것을 권장합니다. 글을 쓰는 배경 Windows에서 Visual Studio Code를 이용할 때 c나 c++ compiler가 있어야 합니다. 구글링을 해 보니 패키지 MinGW (Minimalist GNU For Windows) 를 많이 이용하는 것을 알았습니다. M.. 더보기
Ubuntu iptables 저장, 리부팅 뒤 자동 복구 목적 Ubuntu 18.04 iptablels을 설정하여 이용하다가 시스템을 리부팅하면 설정한 rule이 모두 사라지고 INPUT, FORWARD, OUTPUT default policy만 복구되어 시스템을 외부에서 접근할 수 없는 상태를 맞이할 수도 있습니다. 따라서 운영중 설정한 iptables rule을 실시간으로 저장(save)해 놓았다가 리부팅할 때 자동으로 읽어올 (load) 수 있어야 합니다. 운영중인 시스템 iptables 상태 salsal@r3:~$ sudo iptables -S -P INPUT DROP -P FORWARD DROP -P OUTPUT ACCEPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -A INPUT -i lo .. 더보기
Ubuntu ufw & iptables & nftables 다음 글: nftables 이란 / The netfilter.org project 글을 쓰는 배경 본인은 네트웍 레벨의 방화벽 설정에 대해서는 적절한 수준에서 이해하고 설정하여 운영할 수 있는 수준입니다. 그러나 Ubuntu와 같은 시스템을 서비스 목적으로 운영한 경험은 없어, 이해 수준은 초중급정도일뿐 입니다. 그런데 가끔 Ubuntu 시스템을 설치하여 시험해 볼 상황이 있는데 그때마다 방화벽 설정에 대해 헷갈립니다. Google Search를 하여 필요한 것을 하나하나 해결은 해 가는데, 너무 오랫만에 하는 경우가 많아, 그때마다 시간을 많이 소비합니다. 따라서 이번 기회에 본인이 언제든 참조할 수 있는 수준으로 정리해 놓으려 합니다. 헷갈리지 않게 핵심 정리 ufw는 iptables을 이용하며, c.. 더보기