'dns'에 해당하는 글 5건

Received-SPF: none

Daily/Prog 2021. 12. 28. 21:24

장애


메일 이상 작동 접수,

 

  • Google Workspace Email 에서 @example.com 끼리는 메일이 주고 받아짐.
  • 다른 도메인에서 @example.com 으로의 메일도 잘 받아짐.
  • @example.com 에서 다른 도메인으로 메일을 발송하면 누구는 받아지고, 누구는 안받아지고, 누구는 스팸함에... 복불복임.ㅋ

 

테스트로 받아진 메일 원문을 보니, 첫줄부터 힌트를...

 

Received-SPF: none (kakao.com: domain of gabriel@example.com does not designate permitted sender hosts)

 

SPF: none - 발신 도메인이 SPF(Sender Policy Framework) 레코드를 설치하지 않았거나 제공된 발신자 정보에서 해당 도메인 정보를 구할 수 없음. SPF 확인 장치가 메일의 위조여부를 판정할 수 없음.

 

결국 DNS 서버에 SPF 세팅이 잘못됐을 것이라 추측하고 설정 확인.

 

SPF "v=spf1 include:_spf.google.com ~all"

 

구글에서 하라는 대로 잘되어 있는 것 같아서, 도메인이나 ip 를 추가해 줘야하나... 했는데,

 

https://aws.amazon.com/ko/premiumsupport/knowledge-center/route53-spf-record/

 

Route 53의 SPF 레코드 문제 해결

Internet Explorer에 대한 AWS 지원이 07/31/2022에 종료됩니다. 지원되는 브라우저는 Chrome, Firefox, Edge 및 Safari입니다. 자세히 알아보기

aws.amazon.com

 

* 요점
대부분의 메일 공급자에서는 SPF 레코드가 2014년 4월에 더 이상 사용되지 않으므로 SPF 구성이 적용되지 않습니다. 자세한 내용은 Internet Engineering Task Force(IETF) 웹 사이트에서 RFC 7208을 참조하십시오. SPF 레코드 대신 적용 가능한 값이 포함된 TXT 레코드를 만드는 것이 좋습니다.

 

 

해결


 

TXT "v=spf1 include:_spf.google.com ~all"

 

레코드 유형을 TXT 로 추가하여 해결...

 

Received-SPF: pass (kakao.com: domain of gabriel@example.com designates 123.123.123.123 as permitted sender)

 

하는 김에 DMARC 설정 추가하고, DKIM 은 관리자 권한 있으면 추가, 그리고 테스트 ㄱㄱ

 

 

Check MX: MX 및 SPF 레코드 확인

 

toolbox.googleapps.com

 

checkmx

 

 

또 하나,,, 테스트 한답시고 test1, test2, test3 이 따위로 메일 반복해서 보내면,

 

Delivery failed: gabriel@kakao.com
10.61.236.127 failed after I sent the message.
Remote host said[Response Message]: 554 5.7.1 DAS41 209.85.210.193: Your mail is blocked automatically by anti-spam system. (E04)
STEP: DATA SEND

 

이렇게 반송 메일 수신 가능...ㅋㅋ

 

 


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

AWS https 세팅

Server/AWS 2021. 11. 22. 21:43

ssl-check

 

매번 인프라가 다 해주다보니 ACM 인증서 발급도 한번 못해봤는데, 공짜인줄은 몰랐네;

 

https 통신은 ssl 보안 서버 인증서가 필요하다. ssl 인증서는 한국정보인증을 비롯한 많은 곳에서 구매가 가능한데 AWS Certificate Manager(ACM) 에서는 이 비싼(?) ssl 인증서를 무료로 제공한다. ALB, Cloud Front, API Gateway, ... 등에서 이 인증서를 사용할 수 있으며 따로 설치가 필요없다.

 

예를 들면, Cloud Front 에 S3 와 ssl 인증서를 연결하고 특정 도메인을 Cloud Front 에 연결하는 단계는 다음과 같다.

 

S3 - 특정 버킷의 특정 디렉토리에 리소스 업로드
ACM - 특정 도메인의 인증서 생성
Cloud Front - 배포 생성하여 S3 와 ACM 연결
Route 53 - 레코드 생성하여 Cloud Front 연결

 

 

1. Route 53 DNS 설정

 

AWS 에서 도메인을 관리하기 위해서는 Rourte 53 에 호스팅 영역을 추가하고, 레코드를 생성한다. 외부 도메인일 경우 도메인 구매한 곳(가비아나 카페24 같은?) 에서 네임서버를 해당 NS 값으로 변경해 준다. 아래와 유사한...

 

  • ns-94.awsdns-12.com.
  • ns-1975.awsdns-56.co.uk.
  • ns-1181.awsdns-18.org.
  • ns-743.awsdns-28.net.

 

 

2. ACM 인증서 요청

 

인증서는 반드시 미국 동부(버지니아 북부) 리전(us-east-1)에서 요청해야 하며, 그렇지 않으면 Cloud Front 에서 해당 인증서를 선택할 수 없다. 인증서 요청시, 사용하려는 여러 도메인을 등록해도 되고 아래처럼 모든 2차 도메인 처리(*)와 2차 도메인이 없는 두가지 경우를 등록해도 된다.

 

  • example.com
  • *.example.com

 

해당 도메인에 대해 DNS 검증을 하며, Route 53 에 해당 레코드가 작성되어 있지 않다면 인증서 요청시 생성된 CNAME 으로 레코드 생성이 가능하다.

 

약 1분 내로 인증서 상태가 [검증 대기 중] 에서 [발급됨] 으로 변경되며, 이제 *.example.com 도메인에 대해 https 통신을 할 수 있다. 검증이 30분에서 이틀까지 걸렸다는 글들도 있던데 난 모르겠고...

 

 

3. Cloud Front 배포 생성

 

  • 원본 도메인(S3) 및 경로 설정
  • 대체 도메인 이름(CNAME) 추가: example.com, www.example.com, ...
  • SSL 인증서 선택
  • 프로토콜 정책: Redirect HTTP to HTTPS (HTTP 시도시 HTTPS 로 연결)
  • 기본값 루트 객체: index.html (default 파일)

 

 

4. Route 53 도메인 연결 (별칭-alias)

 

  • example.com (A) www.example.com.
  • www.example.com (A) d1asdfqwerasdf.cloudfront.net.

 

여기까지 설정했다면 example.com 도메인으로 접속했을 때 https://example.com 으로 연결되며 cloudfront 를 통해 s3 리소스를 확인할 수 있어야 한다. (Response Header 에서 cloudfront 확인) 

 

403 forbidden error 등이 발생한다면, S3 버킷 정책을 public access 가 가능하도록 설정한다.

 

 


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

올해 초부터인가... AppStore 다운로드 속도가 말도 안되게 느려진 것을 알게 됐다. 이러다 말겠지 하다가, 급하게 대용량 앱 다운로드를 해야 하는 상황이 닥쳐서 원인 찾기에 나서 봤다. (여기서 속도가 느리다는 정도는 1시간이 지나도록 다운로드가 아주 미세하게 진행되는 정도를 말함.)



1. WiFi 속도


연결된 wifi 속도는 짱짱하다. 단지 AppStore 다운로드만 느린걸로 봐서 인터넷 속도는 문제가 없다.



2. AppStore 문제? 


지금 다시 찾아보려니 해당 글을 찾지는 못했지만 그 글은 앱스토어 다운로드 속도가 개느려졌다는 문의였고, 애플의 답변은 같은 문의가 엄청 많지만 스토어 측의 문제는 아니라고 했다. 나 뿐만이 아닌 많은 사람들이 겪는 문제라...



3. 인터넷의 다양한 해결법?


인터넷에는 앱스토어 다운로드 속도 저하 등의 검색어로 검색을 해보면 수많은 해결법이 많이 나와 있다. 하지만 글만 봐도 따라해 보고 싶은 내용은 거의 없다. 용량 확보, 메모리 확보, 캐시 삭제, 기타 등등 흔한 잡소리...



4. WiFi 에서만 다운로드가 느림?


WiFi 에서 다운로드가 느리다면 LTE 로 테스트 해보자. 대용량은 LTE 다운로드가 안될 수 있으니 저용량 앱을 하나 선택해서 테스트. LTE 에서도 다운로드가 느리다면 AppStore 저장소 쪽의 문제라고 볼 수 있다. 하지만 LTE 에서는 다운로드가 빠르다면 당연히 WiFi 의 문제겠지. 다른 서비스는 인터넷 속도가 빠른데 AppStore 가 느리다면 DNS 를 바꿔볼 수 있겠지.



 DNS 변경으로 해결 


인터넷 속도는 좋고 AppStore 문제는 아니라 하니, 연결된 wifi 의  DNS 설정 을 바꿔보는 것을 한번 시도해 봤다. 다행히 수동 설정이 가능했고, 기존 DNS 를 삭제하고 구글 DNS  8.8.8.8  로 입력하고 저장하는 순간, 멈춰있던 App 다운로드 속도가 폭발했다. ㅋㅋㅋ


찾아보니 자동 설정되는 DNS 인 210.220.163.82 / 219.250.36.130 은 SK DNS 라고 한다.  SK DNS  가 잘못했네.ㅋㅋ






그럴일 있을까마는 구글 DNS 문제시 다시 DNS 자동 설정으로 되돌리거나 타 ISP DNS 로 수정.


  • KT1 - 168.126.63.1
  • KT2 - 168.126.63.2

  • SKB1 - 210.220.163.82
  • SKB2 - 219.250.36.130

  • LGU1 - 164.124.101.2
  • LGU2 - 203.248.252.2

  • Google1 - 8.8.8.8
  • Google2 - 8.8.4.4




WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

apr_sockaddr_info_get()

Daily/Prog 2013. 11. 20. 12:40

httpd: apr_sockaddr_info_get() failed for web.oops4u.com
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

 

요청 접수. apache 데몬 실행할 때 이런 오류가 나온다고...

 

건드린 것도 없어 보이고, httpd.conf 파일에 ServerName 127.0.0.1 을 추가해주니 오류는 나타나지 않지만,
2차 도메인에는 접근하지 못하는 이 이상한 현상...
IP 로는 접근이 잘되고 도메인으로는 접근이 안되는 현상 발견.
DNS 문제라 확신하고 DNS 업체에 진상부렸는데 그님 왈,

 

"DNS는 이상이 없구요. 님 도메인이 만료됐셨네요..."

 

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
남 일에 내 쪽이 팔려버린... 아, 웃프다...


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

DNS setting

Server/CentOS 2009. 12. 9. 22:12

DNS(Domain Name Server)은 IP주소와 컴퓨터 이름을 상호 변환시킵니다. (oops4u.com <-> 123.123.123.123)
resolver에서 hosts 파일과 DNS 데이터베이스에서 매핑(컴퓨터 이름과 IP의 조합)을 기술한 맵을 찾도록 설정할 수 있습니다.


Resolver

/etc/host.conf (해석기 설정 파일)
/etc/hosts (로컬 호스트 데이터베이스)
/etc/resolv.conf (해석기 설정 파일)


1. /etc/sysconfig/network 네트워크 설정

# /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=ns1.test.com (네임서버로 사용할 도메인이름)



2. /etc/host.conf 파일 편집
order 라는 옵션으로 네임 resolve 메커니즘이 시도되는 순서를 콤마(,)로 나열합니다. (메소드: hosts, bind, nis)

# vi /etc/host.conf
order hosts, bind

hosts에서 맵을 찾아보고 그 다음 bind에서 찾아본다는 의미입니다.


3. /etc/hosts 파일 편집

이 파일에는 컴퓨터 이름과 IP주소가 포함되어 있어야 합니다.
IP_address hostname [aliases...]

# vi /etc/hosts
127.0.0.1          localhost
146.82.138.7       master.debian.org      master
209.237.226.90     www.opensource.org

127.0.0.1 은 로컬 컴퓨터에 대한 IP 주소로 변경하지 말아야 합니다.
그 다음줄 부터 보유하고 있는 고정 아이피를 적습니다.


4. /etc/resolv.conf 파일 편집

이 파일에 네임서버를 지정해 주어야 합니다.

# vi /etc/resolv.conf
nameserver 123.123.123.123




Bind(Berkeley Internet Name Daemon)

네임서버 기능은 Bind 패키지의 named 라는 프로그램으로 이루어집니다.
예전에는 bind버전에서는 chroot 폴더를 사용하지 않고, /var/named/ 에 모든 zone파일과 named.conf 파일이 있었지만,
보안상의 문제로 인하여 named.conf파일을 대체한 파일은 /var/named/chroot/etc 디렉토리에, zone파일은
 /var/named/chroot/var/named에 보관됩니다.

1. Bind를 설치

# yum install bind* caching-nameserver

bind 9.3 부터는 named.conf 대신 name.caching-nameserver.conf 를 사용합니다.


2. Bind 설정 파일 편집
외부 접속을 허용한다면 다음처럼 변경한다.

# vi /etc/named.caching-nameserver.conf
options {
        //listen-on port 53 { 127.0.0.1; };
        listen-on port 53 { any; };

        query-source    port 53;

        //allow-query     { localhost; };
        //allow-query-cache { localhost; };
        allow-query     { any; };
        allow-query-cache { any; };
};
view localhost_resolver {
        //match-clients      { localhost; };
        //match-destinations { localhost; };
        match-clients      { any; };
        match-destinations { any; };

 // zone 파일 경로
        include "/etc/named.rfc1912.zones";
};


3. zone 파일 설정 (추가할 도메인에 대해 zone 추가)

# vi /etc/named.rfc1912.zones
zone "aaa.com" IN {
        type master;
        file "aaa.com.zone";
        allow-update { none; };
};

zone "33.22.11.in-addr.arpa" IN {
        type master;
        file "aaa.com.rev";
        allow-update { none; };
}

zone "bbb.com" IN {
        type master;
        file "bbb.com.zone";
        allow-update { none; };
};


4. zone 파일 생성

# cd /var/named/chroot/var/named
# cp -p localhost.zone aaa.com.zone
# vi aaa.com.zone
$TTL    86400
@               IN SOA  ns1.aaa.com. webmaster.aaa.com. (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
                IN NS           ns1.aaa.com.

                IN MX   10      mail
                IN A            123.123.123.123
aaa.com         IN TXT          "v=spf1 ip4:55.55.55.0/24 -all"
ns1             IN A            123.123.123.123
oops            IN A            123.123.123.123
mail            IN A            55.55.55.55
www             IN CNAME        oops
wiki            IN CNAME        oops

5. reverse 파일 생성

# cd /var/named/chroot/var/named
# cp -p localhost.zone aaa.com.rev
# vi aaa.com.rev
$TTL    86400
@               IN SOA  ns1.aaa.com. webmaster.aaa.com. (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
                IN NS           ns1.aaa.com.

44              IN PTR          ns1.aaa.com.

$TTL 86400 - 캐싱 서버가 도메인의 값을 가지는 시간
SOA(Start Of Authority) - 네임서버(FQDN), 관리자 메일 주소, 갱신인식형식(serial: 일반적으로 YYYYMMDDnn)...
NS(Name Server) - 도메인을 관리할 네임서버 지정
MX(Mail Exchanger) - 도메인에 대한 메일서버 지정
A(Address Record) - 호스트 이름과 IP 주소 매칭
TXT(Text) - 관련된 정보나 SPF레코드 작성
CNAME(Canonical NAME) - 컴퓨터 하나에 여러개의 이름을 부여


6. conf 파일 / zone 파일 문법 체크
named-checkconf [location conf file]
named-checkzone [check domain] [location zone file]

# named-checkconf /etc/named.caching-nameserver.conf
# named-checkconf /etc/named.rfc1912.zones
# named-checkzone aaa.com /var/named/chroot/var/named/aaa.com.zone
zone aaa.com/IN: loaded serial 42
OK


7. 데몬 재실행

# /etc/init.d/named restart

 
8. chkconfig 변경

# chkconfig --level 3 named on // runlevel3 터미널 부팅시 httpd 적재

WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,