<주제>
비정상적 로그인 시도를 탐지해서 메일로 알림 보내기!! <과정> 1> / (네이버 IMAP으로 시도 -> ip 블락됨 ->) 구글로 시도 -> php MAILER 설치 시도 -> 안됨(루트 필요) -> 관리자에게 문의해서 메일러 설치
--(MAILER 설치법:composer require phpmailer/phpmailer 이 코드를 리눅스 안에있는 서버랑 연결된 프롬포트창에 입력 -> vendor 폴더 설치됨--
2> / 구글 계정 만들고 2차인증 활성화 -> php 코드에 본인의 계정과 앱 비밀번호(기존 비밀번호 아님!!)입력 -> 서버에 입력할 계정을 쓸 경우 일반 사용자가 쓰는 암호는 안됨.
(인증 에러/전송 실패( SMTP Error: Could not authenticate.))
ex. $mail->Password = '일반 구글 비밀번호'; -> X
$mail->Password = '앱 비밀번호 16자리'; -> O
3> / 찾아보니 앱 비밀번호(엑세스 권한 부여하는 16자리 비번)라는게 필요, 코드에 적어둔 구글 비번을 앱 비번으로 바꿔서 실행해보니 메일 전송 성공 <결과>
우선 코딩으로 메일 보내기 성공!!
다음에 할거: 이제 사이트랑 메일 보내기(방금 한거)를 연결해서 비정상적인 접속시도를 감지했을 경우 따로 만들어둔 계정에 경고문 보내고, 경고문 읽어서 웹사이트(이 사이트 이메일 칸)에 출력하기
공격 지연작업 해보기
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require __DIR__ . '/../vendor/autoload.php';
$mail = new PHPMailer(true);
try {
$mail->SMTPDebug = 0; // 0으로 두면 실제 전송 시 디버그 로그 안 뜸
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = '본인계정';
$mail->Password = '앱 비밀번호'; // 앱 비밀번호 16자리
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;