나는 cron 작업을 사용하여 매주 db를 백업하기 위해 MySQLDump를 사용하려고합니다. 셸 스크립트에서 자격 증명을 하드 코딩하고 싶지 않습니다. MySQL 데이터베이스 버전은 5.1이므로 mysql-config-editor를 사용할 수 없습니다. 리눅스 파일 권한 600을 사용하여 보안 설정할 수있는 옵션 파일을 알고 있습니다. 자격 증명을 암호화하여 읽을 수 없게 만들 수 있습니까?MySQLDump의 백업 자격 증명 보안
답변
자격 증명을 암호화하고 읽을 수 없게 만드는 방법이 있습니까?
누가 파일을 보호하고 싶은지와 암호화가 일반 파일 권한 외에 도움이되는지 묻습니다.
암호가 포함 된 파일을 암호화하려면 합법적 인 백업 프로세스가 암호 키에 액세스 할 수 있도록하여 파일에서 암호를 읽을 수 있도록해야합니다. 그런 다음 다른 모든 프로세스가 해당 키에 액세스하지 못하도록해야합니다.
이로 인해 작업이 훨씬 복잡해지기 때문에 기본 파일 시스템 보안 모델 위에 보안을 추가하지 않고도 누출 위험이 높아집니다. 따라서 .my.cnf 파일에 대한 올바른 소유권 및 파일 사용 권한을 유지하는 것이 좋습니다.
추가 읽기 : http://benlog.com/articles/2012/04/30/encryption-is-not-gravy/
나는 개인적으로 cron을 통해 루트로 매일 mysqldump를 실행합니다. 이것을 깨기 위해서는 침입자가 /root/.my.cnf
(모드는 600이고 root가 소유)에 액세스하기 전에 기본적인 파일 시스템 권한을 파괴해야합니다. 침입자가이를 수행 할 수 있다면 데이터베이스 파일에 직접 액세스 할 수 있으므로 암호화 된 암호 파일은 여기에서 도움이되지 않습니다.
~/.my.cnf의 모드가 600이고 소유권이 해당 시스템 사용자로 설정된 경우에만 mysqldump를 실행하기위한 전용 시스템 사용자를 설정할 수도 있습니다.
ps. 이것은 내 컴퓨터에서 매일 실행하는 mysql 백업 스크립트입니다. https://gist.github.com/timkuijsten/6067107
최신 버전의 MySQL 5.6이이 문제를 해결합니다. 이제 mysql_config_editor를 사용하여 명령 줄 로그인 암호를 암호화 할 수 있습니다.
- 1. PHP 보안 - 암호 및 자격 증명 관리?
- 2. WCF 메시지 수준 보안 클라이언트 자격 증명
- 3. PHP : 데이터베이스 연결 자격 증명 보안
- 4. cmd에 set http_proxy로 자격 증명 보안 설정
- 5. 자격 증명
- 6. 자격 증명 공급자는
- 7. BITS 자격 증명 문제
- 8. 데이터베이스 자격 증명 암호화
- 9. IAM 자격 증명
- 10. 자격 증명 질문
- 11. ASIHTTPRequest에서 자격 증명 지우기
- 12. ASP.NET 의의 자격 증명
- 13. 추가 자격 증명
- 14. jenkins 자격 증명 사용
- 15. 도메인 자격 증명
- 16. IIS 사용자 자격 증명
- 17. Zend_Auth 여러 자격 증명?
- 18. WCF 자격 증명 변경
- 19. 전달 사용자 자격 증명
- 20. 저장 자격 증명
- 21. 등록시 자격 증명 복제
- 22. 숨어 자격 증명
- 23. Aws 자격 증명 내보내기
- 24. [Microsoft.TeamFoundation.Client.TeamFoundationServerFactory] :: GetServer 자격 증명
- 25. CAS 자격 증명
- 26. 자격 증명 배열
- 27. UIWebView에서 자격 증명 지우기
- 28. WIFI 자격 증명 저장
- 29. 사용자 자격 증명 확인
- 30. 원격 스크립팅 자격 증명
SQLyog와 같은 GUI를 사용하여 예약 된 백업을 수행 할 수 있습니다. 작업 파일에는 암호화 된 암호가 있습니다. –