/usr/sbin/sendmail: 권한이 거부되었습니다.

/usr/sbin/sendmail: 권한이 거부되었습니다.

Fedora 20에서 메일을 설정하려고 합니다. 테스트 이메일을 보내려고 할 때마다 허가 거부됨이라는 메시지가 나타납니다 /usr/sbin/sendmail.

권한을 확인했는데 결과는 다음과 같습니다.

[root@localhost uone]# ls -ld /usr/sbin/sendmail
drwxr-sr-x. 2 uone uone 4096 Jun 14 17:42 /usr/sbin/sendmail

로그를 확인하면 /var/logs/mail이런 결과가 나옵니다.

[root@localhost uone]# ls /var/log/maillog
/var/log/maillog

그리고

[root@localhost home]# cat /var/log/maillog
[root@localhost home]#  

달리기가 ls -l나에게 이것을 주었다

[root@localhost home]# ls -l /var/log/maillog
-rw-------. 1 root root 0 Jul 6 11:27 /var/log/maillog

ls -lsendmail 디렉토리에 하나 만들고 이것을 나에게 주세요

[root@localhost sbin]# ls -l | grep sendmail
drwxr-sr-x. 2 uone uone 4096 Jun 14 17:42 sendmail lrwxrwxrwx. 1 root root 15 Jul 12 19:04 sendmail.ssmtp -> /usr/sbin/ssmtp

두 가지 질문이 있습니다.

  1. 메일을 설정할 때 뭔가를 놓쳤나요? 이메일을 보내기 전에 해야 할 일이 더 있나요?

  2. 무슨 일이 일어났는지 정확히 이해하기 위해 로그를 얻으려면 어떻게 해야 합니까?

답변1

귀하의 권한 문제는 파일 권한 문제가 아니며, SELinux는 sendmail 실행 파일이 파일 시스템의 특정 위치에 있는 파일에 액세스하는 것을 허용하지 않는다는 것입니다. 이러한 문제를 해결하는 가장 좋은 방법은 SELinux 문제 해결 GUI를 사용하는 것입니다.

$ sealert -b 

   번호 1

그런 다음 SELinux를 완화하기 위해 권장되는 대로 파일 시스템에 필요한 컨텍스트를 추가해야 합니다.

    SS #2

노트:위의 예에서는 두 번째 옵션을 선택했으며 명령을 실행 하고 설명된 semanage대로 restorecon문제를 해결했습니다 . 문제 에 대해서도 sendmail동일한 작업을 수행 해야 합니다.

페도라의 일부인가요?

예, SELinux와 문제 해결 도구는 모든 Red Hat 배포판의 일부입니다. 나는 주어진 실행 파일에 대한 패키지 이름을 찾을 수 없을 때마다 이 명령을 사용합니다 repoquery.

$ repoquery -qf */sealert
setroubleshoot-server-0:3.2.17-1.fc20.x86_64
setroubleshoot-server-0:3.2.14-2.fc20.x86_64

GUI로 실행되는 문제

GUI로 실행하는 데 문제가 있는 경우 sealert다음과 같이 터미널을 통해 다시 실행할 수 있습니다.

$ sudo sealert -a /var/log/audit/audit.log | less

그런 다음 특정 문제의 결과를 검토하고 권장 명령을 사용하여 SELinux 문제를 해결해야 합니다. 다음을 표현하는 줄을 찾고 있습니다.

***** 플러그인 openvpn(신뢰도 47.5) 권장****************************

"신뢰도" 값이 더 높은 조치는 사용자가 수행하고 싶은 조치입니다. 이 줄 뒤에는 SELinux 문제를 "수정"하는 명령이 나옵니다. 예를 들면 다음과 같습니다.

$ sudo semanage fcontext -a -t home_cert_t /home/slm/somedom.com.ca.crt
$ sudo restorecon -R -v /home/slm/somedom.com.ca.crt

인용하다

관련 정보