목록전체 글 (201)
후니의 IT인프라 사전
확인된 운영체제Amazon Linux 2023 Docker 설치yum updateyum install -y docker Docker-compose 설치LATEST=$(curl -Ls -w %{url_effective} -o /dev/null https://github.com/docker/compose/releases/latest) && LATEST=${LATEST##*/} && curl -L https://github.com/docker/compose/releases/download/$LATEST/docker-compose-$(uname -s)-$(uname -m) > /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose
메일서버 관련해서 학습하다 보면 정말 많은 서비스를 설치해 운영해야합니다.sendmail 등 이것 저것...그런것을 한꺼번에 docker로 관리하면 편하겠죠?요즘은 docker로 제공하는 메일 서버들도 많아서 소개해드립니다. 설치당연히 docker로 사용하기 때문에 docker와 docker-compose는 설치되어있다고 가정합니다.설치를 모르겠다면 여기에서 확인하세요.mailcow 저장소를 복사하여 설치파일을 실행합니다.git clone https://github.com/mailcow/mailcow-dockerizedcd mailcow-dockerized/ 설치시 물어보는 설정 값./generate_config.sh먼저 ./generate_config.sh를 실행하면 호스트의 환경변수에 설정값들을 ..
네임서버 구축하기 위해서는 bind라는 서비스를 사용합니다.dnf -y install bind bind-chroot 설정named.conf에서는 네임서버의 다양한 내용을 정의합니다.# vi /etc/named.conf===11 listen-on port 53 {any;};12 listen-on-v6 port 53 {none;};19 allow-query {any;};34 dnssec-validation no;(맨아래 추가)zone "a.com" IN { type master; file "a.com.db"; allow-update {none;};}; 리스너 설정을 하는데 DNS 쿼리는 53포트를 사용하기 때문에 53번 포트를 기본으로 오픈합니다. zone이 일종의 호스트 존이 될건데요..
이번에는 dovecot에 대해서 알아봅니다.https://www.dovecot.org/ 라는 사이트도 존재하는데요, secure IMAP 서버로 소개하고 있습니다.보면 다양한 기능의 pro버전도 존재하는 것 같네요. dovecot리눅스 계열에서 사용하는 IMAP/POP3서버로 메일 저장을 담당합니다. IMAP 프로토콜 (143포트) POP3 프로토콜 (110포트) 설치yum install -y dovecot* 설정dovecot에서는 정말 다양한 설정을 하므로 하나씩 나눠서 보겠습니다./etc/dovecot/conf.d에서 모든 설정이 다 이뤄집니다.종류만 해도 이렇게 많으니 필요한 설정은 들어가서 설정하시면 됩니다.10-auth.conf 20-imap.conf ..
가장 대중적인 Let's Encrypt를 이용해서 인증서를 갱신하고 정기적인 작업으로 하는 것을 알아보겠습니다. 고객 요구사항고객은 https를 사용하고 싶어하고 SSL인증서를 설정해야합니다.인증서를 호스팅업체 측에서 구매하는 방법도 있는데 비용이 비싸다 보니 무료인 Let's Encrypt를 사용하는 곳도 많습니다.Let's Encrypt는 90일 마다 도메인이 갱신되어야 하기 때문에 다음과 같이 갱신 설정을 해줘야합니다. letsencrypt-auto certonly 명령어를 사용하면 인증서를 자동으로 갱신할 수 있습니다.아무래도 인증서 업데이트간에 웹서버가 중단됩니다. 그렇기 때문에 사용자가 적은 시간에 하고업데이트에 관한 내용을 공지하면 좋을 것 같습니다. 90일 마다 측정하기는 어렵기 때문에 일..
sendmail 로그 확인로그는 /var/log/maillog에서 관리합니다. (오류) 메일서버에 대한 로그가 없어요sendmail에서 메일이 발송되지 않는 것 같아서 로그를 확인해보려고 했는데 로그가 안쌓이더군요.찾아보니 rsyslog라는 시스템 로그를 관리하는 데몬이 없었습니다. 해당 서비스가 동작하는지 확인해보는 습관이 필요하겠네요.dnf isntall rsyslog 설치하니 바로 /var/log/maillog가 보이네요.
오늘은 메일서버의 가장 기본이 되는 sendmail부터 알아보겠습니다. 메일 전송을 위한 프로그램으로 MTA(Mail Transfer Agent)라고도 합니다. 쉽게 말해 메일을 보내는 역할을 담당하는 소프트웨어 입니다. 설치대부분 리눅스에서는 sendmail이 설치되어 있기 때문에 먼저 설치 유무를 확인해줍니다.rpm -qa | grep sendmail 이제 실제로 설치를 해봅시다.yum -y install sendmail sendmail-cf /etc/hosts 설정/etc/hosts는 리눅스에서 로컬 DNS역할을 하는 호스트 설정 파일입니다.hosts 정보를 확인하고 매칭되는 주소가 없으면 설정된 DNS에서 주소를 확인하게 설계되어 있습니다. 아래는 기본 호스트 정보인데, 우리가 흔히 서버 내부 ..
기능맥북의 배터리 최대 충전량을 설정해 배터리 효율을 높여주는 소프트웨어 입니다.배터리 수명 높여준다는데 이게 사람마다 말이 다르긴 합니다. 무료버전에서도 사용이 가능한데, 만약에 조금 더 고급설정을 하고싶다 하면 돈을 내야합니다.2024년 기준 평생 플랜이 35000원인데, 블프 세일 한번 조심히 노려봅니다 ㅎㅎ 설치모든 것이 다있는 brew로 설치하시면 됩니다.brew install --cask aldente 근데 난 홈페이지가 좋다 하면 • AlDente 공식 웹사이트에 접속하여 ‘Download Free’ 버튼을 클릭합니다. 설정최적화된 배터리 충전 기능 비활성화: • ‘시스템 설정’에서 ‘배터리’를 선택합니다. • ‘배터리 성능 상태’ 옆의 ‘i’ 아이콘을 클릭하고, ‘최적화된 배터리 충전’ ..
1. package.json을 수정한다.homepage와 browserslist 키 아래 추가한다. "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ], # 콤마 추가 "homepage": "https://[계정명].github.io/[리포지터리 명]" # 여기 추가 } scripts 변경 "scripts": { "start": "react-scripts start"..
state동적데이터를 다루는데 사용된다. 변경될 가능성이 있는 데이터를 말한다.클래스형 컴포넌트에서 사용되는 개념이다. 클래스형 컴포넌트App 클래스가 React Component 클래스를 상속받도록 extends React.Component를 붙인다. 클래스형 컴포넌트의 뼈대이다. class App extends React.Component{}App 클래스는 React.Component 클래스를 상속받았다. (상속을 통해 React.Component의 기능을 App에서도 동작할 수 있다) 클래스형 컴포넌트가 되려면 App 클래스가 리액트가 제공하는 Component 클래스를 반드시 상속받아야 한다는 것이다. App은 현재 함수가 아니고 컴포넌트 이기 때문에 return을 사용해 반환을 할 수 없다.컴..
React가 동작하는 방식프로젝트 코드 -> 해석 -> 해석한 결과물 -> React에서 html 템플릿에 기워넣기 tag. To begin the development, run `npm start` or `yarn start`. To create a production bundle, use `npm run build` or `yarn build`.--> 결국 HTML은 껍데기 템플릿만 만드는 것이다.ReactDOM.render(, document.getElementBtId('root')); - ReactDOM : DOM에 그리자- : App 컴포넌트를- getElementById('root') : id가 루트인 엘리먼트에 React는 모든 엘리먼트를 바로 그리지 않고 필요한 만큼만 그린다. 컴포넌..
nvm노드 버전을 관리하는 대표적인 툴로 nvm이 있다.직관적으로 node version manager nvm을 설치하고 install과 use를 사용해서 사용할 node 버전을 작성하면된다.nvm install 20.0.0nvm use 20.0.0 nvm을 설치하고 나서는 zshrc 혹은 bashrc 등에 해당 내용을 입력해 nvm 호출경로를 지정해둔다.export NVM_DIR="$HOME/.nvm" [ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh" # This loads nvm [ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebr..