donaricano-btn

MySql 서버 외부 접속시 에러 - RROR 1045 (28000): Access denied for user 'root'@'52....' (using password: ...) 


1. 시도

- Mybatis를 이용하여 아마존 인스턴스에 설치된 MySql 접속을 시도

- 하지만 1045 (28000): Access denied for user.. 라는 에러 발생

- 인증에 실패한 경우로 접속은 성공

2. 해결

1) root 인서트 하는 방법

- select host, name from mysql.user;

- 위와 같이 검색된다면 root 에 새로운 호스트와 비밀번호를 추가한다

- 그러나 ssl_cipher doesn't have a default value 라는 에러가 발생

- 이유는 MySql 버전이 올라가면서 보안이 강화되었다, 인서트시 특정 값을 값이 넣어주어야 한다

- insert into user(host, user, password, ssl_cihper, x509_issuer, x509_subject) values ('%','username',password('password'),'','','');

위와 같이 특정 값을 넣어주어야 한다

- 마지막으로 모든 권한을 주고 업데이트 한다

2) 새로운 사용자를 만드는 방법

- 기본적으로 root는 localhost 환경에서만 접속하도록 설정되어 있다

- 그렇기 때문에 새로운 사용자를 만들어 어디서든 접속 할수 있도록 호스트를 '%'로 설정한다

3) host 설정에 따른 구분

% 모든 호스트로부터의 접속을 허용

XXX.XXX.XXX.XXX : 특정 호스트로 부터 접속허용

XXX.XXX.% 등 : 특정 대역으로 부터 접속허용

특정이름 : 특정 호스트로 부터 접속 허용


4) 참조한사이트 

- 원격 접속이 안될 때 

http://blog.naver.com/PostView.nhn?blogId=ez_&logNo=140119374985

http://dev.mysql.com/doc/refman/5.7/en/connection-access.html

- 원격 접속 허용

http://zetawiki.com/wiki/MySQL_%EC%9B%90%EA%B2%A9_%EC%A0%91%EC%86%8D_%ED%97%88%EC%9A%A9






블로그 이미지

리딩리드

,
donaricano-btn

MySQL 서버 접속을 위한 설정


1. Security Group 추가

- MySQL을 추가 하고 Source를 Anywhere 로 수정한다


2. MySql 설정

1) Listen IP 수정

- vi /etc/my.cnf 로 이동한다

- bind-address = 0.0.0.0 을 추가한다(기존에는 127.0.0.1 이거나 없을 수 있다)

2) MySql 다시시작

- service mysql restart

3) root 계정으로 외부에서 접속하기 위한 권한

- SQL 모니터로 이동한다

블로그 이미지

리딩리드

,
donaricano-btn

 putty를 이용한 아마존 Instacne 접속


1. putty 다운로드

- 접속 주소 : http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

- 위 주소에서 putty와 puttyGen을 다운 받는다


2. puttyGen 을 이용한 putty전용 인증키 생성

- 위와 같이 설정한후 Load 버튼을 누른다

- Load시 파일을 찾을 때 all 로 하고 .pem 을 찾는다

- 위의 버튼을 클릭하면  팝업창이 나타나고 확인 버튼을 누른다

- 이후에 특정 이름으로  .ppk 로 저장


3. putty 접속

- 아마존에서 제공한 DNS 혹은 IP 주소를 셋팅한다

- 위의 경로로 이동하여 직전에 만든 ppk를 등록한다



블로그 이미지

리딩리드

,
donaricano-btn

SecureCRT를 이용한 Instance 접속


1. .pem -> pub

- 특정 버전에서는 pem을 인식하지 못하는것 같다

- .pem 을 .pub 으로 변환 필요

- git bash 사용

1) cp aws_pw.pem aws_pw_copy.pem

2) ssh-keygen -p -f aws_pw_copy.pem

3) ssh-keygen -e -f aws_pw_copy.pem >> aws_pw_copy.pub

2. 접속 설정

- RedHat 계열을 username이 ec2-user 이다

3. Public key 등록

- 이후 에러가 날수 있다

- 이 사이트 참조 

https://rbgeek.wordpress.com/2012/08/26/public-key-authentication-in-securecrt/


블로그 이미지

리딩리드

,