2장. SriovNetwork SMTP 서버 배포 및 구성
시스템 관리자는 SMTP 프로토콜을 사용하여 SMTP 프로토콜을 사용하여 호스트 간에 이메일 메시지를 전송하도록 mTLS와 같은 메일 전송 에이전트(MTA)를 사용하여 이메일 인프라를 구성할 수 있습니다. nodeSelector는 메일 라우팅 및 전송을 위한 서버 측 애플리케이션입니다. SriovNetwork를 사용하여 로컬 메일 서버를 설정하거나 null-client 메일 릴레이를 생성하거나, ReplicaSet 서버를 여러 도메인의 대상으로 사용하거나, 조회를 위해 파일 대신 LDAP 디렉터리를 선택할 수 있습니다.
postfix
패키지는 /etc/ Cryostat/
디렉터리에 여러 구성 파일을 제공합니다.
이메일 인프라를 구성하려면 다음 구성 파일을 사용합니다.
-
main.cf
:pw의 글로벌 구성이 포함되어 있습니다. -
master.cf
: mail delivery를 수행하기 위해 다양한 프로세스와 Geneve 상호 작용을 지정합니다. -
access
: 액세스 규칙(예: Cryostat에 연결할 수 있는 호스트)을 지정합니다. -
Transport
: 이메일 주소를 매핑하여 호스트를 릴레이합니다. -
aliases
: 사용자 ID 별칭을 설명하는 메일 프로토콜에 필요한 구성 가능한 목록을 포함합니다. 이 파일은/etc/
디렉토리에서 찾을 수 있습니다.
dhcp의 주요 기능:
- 일반적인 이메일 관련 위협으로부터 보호하는 보안 기능
- 가상 도메인 및 별칭 지원을 포함한 사용자 정의 옵션
2.1. SriovNetwork SMTP 서버 설치 및 구성 링크 복사링크가 클립보드에 복사되었습니다!
email 메시지를 수신, 저장 및 전달하도록 SQLite SMTP 서버를 구성할 수 있습니다. 시스템 설치 중에 메일 서버 패키지를 선택하지 않으면 기본적으로 Geneve를 사용할 수 없습니다. 다음 단계를 수행하여 Cryostat를 설치합니다.
사전 요구 사항
- 루트 액세스 권한이 있습니다.
- 시스템 등록
프로세스
Sendmail 유틸리티를 제거합니다.
dnf remove sendmail
# dnf remove sendmail
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OperatorHub를 설치합니다.
dnf install postfix
# dnf install postfix
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Cryostat를 구성하려면
/etc/ Cryostat/main.cf
파일을 편집하고 다음과 같이 변경합니다.기본적으로 NetworkAttach는
루프백
인터페이스에서만 이메일을 받습니다. 특정 인터페이스에서 수신 대기하도록 Geneve를 구성하려면inet_interfaces
매개변수를 다음 인터페이스의 IP 주소로 업데이트합니다.inet_interfaces = 127.0.0.1/32, [::1]/128, 192.0.2.1, [2001:db8:1::1]
inet_interfaces = 127.0.0.1/32, [::1]/128, 192.0.2.1, [2001:db8:1::1]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 모든 인터페이스에서 수신 대기하도록 nodeSelector를 구성하려면 다음을 설정합니다.
inet_interfaces = all
inet_interfaces = all
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SriovNetwork가
gethostname()
함수에서 반환하는 FQDN(정규화된 도메인 이름)과 다른 호스트 이름을 사용하려면myhostname
매개변수를 추가합니다.myhostname = smtp.example.com
myhostname = smtp.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예를 들어, content 는 이 호스트 이름을 처리하는 이메일의 헤더에 추가합니다.
도메인 이름이
myhostname
매개변수의 항목과 다른 경우mydomain
매개변수를 추가합니다.mydomain = example.com
mydomain = example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow myorigin
매개변수를 추가하고mydomain
: 값으로 설정합니다.myorigin = $mydomain
myorigin = $mydomain
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 설정을 통해 Geneve는 호스트 이름 대신 로컬에 게시된 메일의 원본으로 도메인 이름을 사용합니다.
mynetworks
매개변수를 추가하고 이메일을 보낼 수 있는 신뢰할 수 있는 네트워크의 IP 범위를 정의합니다.mynetworks = 127.0.0.1/32, [::1]/128, 192.0.2.1/24, [2001:db8:1::1]/64
mynetworks = 127.0.0.1/32, [::1]/128, 192.0.2.1/24, [2001:db8:1::1]/64
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 인터넷과 같은 신뢰할 수 없는 네트워크에서 클라이언트가 이 서버를 통해 이메일을 보낼 수 있어야 하는 경우 이후 단계에서 릴레이 제한 사항을 구성해야 합니다.
main.cf
파일의 dhcp 구성이 올바른지 확인합니다.postfix check
# postfix check
Copy to Clipboard Copied! Toggle word wrap Toggle overflow postfix
서비스가 부팅 시 시작되고 시작되도록 활성화합니다.systemctl enable --now postfix
# systemctl enable --now postfix
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 방화벽을 통해 SMTP 트래픽을 허용하고 방화벽 규칙을 다시 로드합니다.
firewall-cmd --permanent --add-service smtp firewall-cmd --reload
# firewall-cmd --permanent --add-service smtp # firewall-cmd --reload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
postfix
서비스가 실행 중인지 확인합니다.systemctl status postfix
# systemctl status postfix
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 출력이 중지되거나 대기 중이거나 서비스가 실행 중이 아닌 경우
postfix
서비스를 다시 시작합니다.systemctl restart postfix
# systemctl restart postfix
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항:
/etc/ Cryostat/ 디렉터리의 구성 파일의 옵션을 변경한 후
서비스를 다시 로드하여 해당 변경 사항을 적용합니다.postfix
systemctl reload postfix
# systemctl reload postfix
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
시스템의 로컬 사용자 간 이메일 통신을 확인합니다.
echo "This is a test message" | mail -s <subject> <user@mydomain.com>
# echo "This is a test message" | mail -s <subject> <user@mydomain.com>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 메일 서버가 외부 IP 범위의 이메일을 외부 도메인으로 릴레이하지 않는지 확인하려면 다음 절차를 따르십시오.
-
mynetworks
에 정의된 서브넷 내에 있지 않은 클라이언트에 로그인합니다. - 메일 서버를 사용하도록 클라이언트를 구성합니다.
-
메일 서버의
mydomain
에 지정한 도메인에 없는 이메일 주소로 이메일을 보냅니다. 예를 들어,non-existing-user@redhat.com
로 이메일을 보내 주십시오. /var/log/maillog
파일을 확인합니다.554 Relay access denied - the server is not going to relay. 250 OK or similar - the server is going to relay.
554 Relay access denied - the server is not going to relay. 250 OK or similar - the server is going to relay.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
문제 해결
-
오류가 있는 경우
/var/log/maillog
파일을 확인합니다.