Ubuntu 서버 헤드리스 15.10에서만 mailutils + shell 스크립팅을 사용하여 전자 메일을 가져오고 구문 분석 할 수 있습니까?


2

각각 자체 구성이 필요한 패키지 수를 최소화하기 위해 더 이상 전자 메일 패키지를 설치하지 않고 스크립트로 구문 분석 할 전자 메일을 검색 할 수있는 방법이 있는지 궁금합니다. 이 시스템은 감시 전용 원격 위치 시스템이며 독립형 방화벽을 갖추고 있으며 두 상자 Ubuntu 서버 헤드리스 15.10입니다. mailutils가 설치되어 있고 필요에 따라 'mail'명령으로 echo-piped로 전자 메일을 보내는 bash 스크립트가 있습니다.

mailutils에는 postfix, movemail 및 readmsg가 포함되어 있는데, ISP에서 제공하는 전자 메일 계정에서 전자 메일을 읽는 데 사용할 수 있기를 희망합니다. 해당 계정 및 비밀번호와 함께 ISP는 이메일 서버가 pop3.walnutel.net 및 smtp.walnutel.net, 포트 입력 = 110, 포트 출력 = 587이라고 알려줍니다. imap을 사용할 수 있는지 확인하기 위해 imap.walnutel.net에 핑 (ping)을하여 존재하고 다른 두 전자 메일 서버와 동일한 IP 주소를 가지고 있음을 알았습니다. 전자 메일 계정 자체에 대해 아는 것이 전부입니다.

"원격 위치"라고 말하면 일반적으로 내가있는 곳과 다른 ISP에서 50 마일 떨어져 있다는 의미입니다. 내가 구상하는 이메일은 방화벽이 내가 어디를 가든 블랙리스트에 올 때 내 gmail 계정에서 walnutel.net 계정으로 이메일을 보내면 방화벽 스크립팅에 의해 이메일을 읽고 파싱하여 해당 IP 주소를 블랙리스트에서 가져옵니다. . 나는 방화벽을 블랙리스트에 상당히 적극적으로 만들었고, 어떤 포트를 시도하는 어떤 패킷이라도 그렇게하도록 방아쇠를 당겼다. 블랙리스트에 오르지 못하게 할 수있는 유일한 방법은 첫 번째 노크에서 2 분이 지나기 전에 포트 노크를 올바르게하는 것입니다. 첫 번째 포트가 포트 노킹 시퀀스의 첫 번째 포트 인 경우에만 2 분 지연이 허용됩니다. 그러므로 나는 실수로 자신을 블랙리스트에 올릴 수있는 진정한 가능성을 예견한다. 이 게시 된 질문에 대한 답변을 얻고 스크립트가 개발 될 때까지 포트 노크 데몬 트리거 스크립트에서 노크 테스트를 통과 한 IP 주소에 존재하는 블랙리스트 항목을 제거합니다. 방금 설명한대로 매우 안전하지만이 이메일 구성이 제공 할 수있는 인터넷 보안에 대한 마지막 손길로이 시스템의 잠재 고객에게 깊은 인상을주기를 바랍니다.

내 연구에서 다른 사람들이 검색 및 구문 분석을 위해 dovecot, fetchmail, procmail, mutt 등과 같은 추가로 설치된 패키지를 사용하는 것으로 나타났습니다. 해당 패키지 또는 다른 추가 패키지를 설치하지 않으려 고합니다. mailutils에 포함 된 유틸리티 (postfix, movemail, readmsg)를 사용하는 예제가 너무 적습니다. mailutils, shell 또는 python scripting보다 더 많은 메일 검색 패키지로 구문 분석하기 위해 이메일 검색 방법을 누군가에게 안내 할 수 있습니까?

12/25/15 편집 : 내가 찾는 이메일 방법을 "bash sockets"라고 배웠습니다. 내 연구에서 아직 확실하지 않은 것은 로컬이 아닌 Gmail 계정으로 전자 메일을 안정적으로 보내려면 로컬 전자 메일 계정 자격 증명으로 인증 해야하는지 여부와 SSL (TLS, 기타). 전자 메일 서버와 통신하기 위해 SSL / TLS를 사용해야하는 경우에는 bash 스크립팅 예제를 찾기가 매우 어려울 것 같습니다.


이것은 현재 보류중인 stackoverflow.com/questions/33412947/…의 약간 개선 된 버전입니다 .
tripleee

앞에서 언급했듯이 Postfix는 mailutils와 완전히 관련이 없습니다. 그들은 필요합니까 일부 기능의 일부 MTA를, 그래서 그 의존성을 만족시키기 위해, 패키지 관리자뿐만 아니라 후위 패키지를 설치합니다.
tripleee

나는 길을 계속 찾을 것이다. 그 동안, 어떤 IP가 포트 노킹 시퀀스의 첫 번째 또는 두 번째 포트를 통과 할 수 있는지 확인하고 있다면, 언급 한 패키지 중 하나 이상을 설치하여 그렇게 할 수 있습니다. 블랙리스트에서 IP 주소를 찾으면 포트 노킹 화이트리스트 스크립트가 나에게 이메일을 보낸다는 것을 인정할 것이다. 또한 블랙리스트는 iptables INPUT 체인 규칙에서 화이트리스트 아래에 있습니다. 즉, 모든 화이트리스트 항목이 동일한 블랙리스트 항목보다 우선하여 전체 '블랙 아웃'을 방지합니다. (knocked는 심지어 블랙리스트에 올린 IP도 보았습니다)
kenneth558

@tripleee postfix가 mailutils의 일부가 아님을 분명히 해주셔서 감사합니다. 같았다 나는 때문에, 어쩌면 종속성으로, 내 가정을 mailutils를 설치할 때 설치하세요.
kenneth558

음; Bash는 소켓이며 소켓은 Bash를 지원하지만 "Bash 소켓"은 문제가 아니며 확실히 "이메일 방법론"이 아닙니다.
tripleee

답변:


1

GNU Mailutils Manual 에 따르면 이 제품군의 모든 도구는 POP 및 IMAP를 지원하므로 별도의 도구를 설치할 필요가 없습니다. 제한된 유스 케이스의 경우 POP조차도 충분할 것 같지만, 금세기 대부분의 어른들은 아마도 모든 것에 IMAP을 사용할 것입니다.

여러 mailutils 도구가 계획을 지원할 수 있습니다. Sieve 스크립트는 더 많은 작업 readmsg을 수행 할 수 있지만 비 메일 부분을 수행하려면 호출 스크립트가 필요합니다. Bash에 능숙하고 특히 Sieve를 배우기를 열망하지 않는다면 readmsg?

반면에, 파이썬을 사용한다면, 필요하지도 않습니다 mailutils- imaplib그 이후로 표준 라이브러리의 일부입니다. ( POP 라이브러리 도 있습니다.)


고마워요 나는 길을 계속 찾을 것이다. 그 동안, 어떤 IP가 포트 노킹 시퀀스의 첫 번째 또는 두 번째 포트를 통과 할 수 있는지 확인하고 있다면, 언급 한 패키지 중 하나 이상을 설치하여 그렇게 할 수 있습니다. 블랙리스트에서 IP 주소를 찾으면 포트 노킹 화이트리스트 스크립트가 나에게 이메일을 보낸다는 것을 인정할 것이다. 또한 블랙리스트는 iptables INPUT 체인 규칙에서 화이트리스트 아래에 있습니다. 즉, 모든 화이트리스트 항목이 동일한 블랙리스트 항목보다 우선하여 전체 '블랙 아웃'을 방지합니다. (knockd는 심지어 블랙리스트 IP를보고)
kenneth558
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.