일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- K8S
- CloutNative
- wappalyzer
- MYSQL에러
- restful api
- 우분투에war배포
- Postman
- Java
- spring
- appleM1
- pagination
- SQL
- 이클립스
- springMVC
- minikube
- DB생성
- MySQL시작하기
- windows10
- VUE
- frontend
- 스프링에러
- Seek_Keyset
- NullPointerException
- String
- SpringBoot
- MySQL
- Lombok
- gradle
- offset
- intellij
- Today
- Total
미운 오리 새끼의 우아한 개발자되기
[AWS]ubuntu EC2에 새로운 사용자 추가하고 비밀번호로 접속 가능하게 하기 본문
aws ubuntu ec2를 생성하면 기본적으로 있는 사용자가 ubuntu, root 계정이다.
여기에 appAdmin이라는 이름의 사용자를 추가해보기로 하자.
1. root 사용자로 접속하여 (su - 명령어 입력 ) adduser appAdmin 명령어를 입력한다. appAdmin 대신 본인이 사용하고자 하는 user 이름을 입력해주면 되겠다.
root@ip-172-31-3-41:~# adduser appAdmin
그러면 아래와 같이 경고가 뜨면서 명령어가 실패한 것을 알 수 있다.
adduser: Please enter a username matching the regular expression configured
via the NAME_REGEX[_SYSTEM] configuration variable. Use the `--force-badname'
option to relax this check or reconfigure NAME_REGEX.
이는 user 이름이 regex와 맞지않다고 뜨는 경고이다. regex에 굳이 맞추고 싶지않으면 아래 명령어를 다시 입력하면 user가 추가된 것을 알 수 있을 것이다.
root@ip-172-31-3-41:~# adduser --force-badname appAdmin
Allowing use of questionable username.
Adding user `appAdmin' ...
Adding new group `appAdmin' (1001) ...
Adding new user `appAdmin' (1001) with group `appAdmin' ...
Creating home directory `/home/appAdmin' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for appAdmin
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y
위의 information은 굳이 쓰지않아도 됨.
2.이제 appAdmin의 password를 설정하기 위해 passwd appAdmin 명령어를 입력한다.
root@ip-172-31-3-41:~# passwd appAdmin
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
3. 그리고 appAdmin에 root 계정과 같은 권한을 줘보자.
visudo 명령어를 입력한다.
root@ip-172-31-3-41:~# visudo
그러면 nano 편집기로 /etc/sudors.tmp 파일이 열릴것이다.
# User privilege specification 주석 아래에 root 계정의 privilege가 선언되어있을 것이고.
그 아랫줄에 appAdmin ALL=(ALL:ALL) ALL이라고 한줄을 추가해주면
appAdmin도 root와 같은 privilege를 가지게 될 것이다.
control + o를 누르면 파일이 저장될 것이다.
4. 이제 비밀번호로 접속이 가능하게 하기위해 /etc/ssh/sshd_config 파일을 수정해보자.
vi ssh_config 명령어를 입력하면 vi 편집기로 sshd_config 파일을 수정할 수 있다.
root@ip-172-31-3-41:/etc/ssh:~# vi /etc/ssh/sshd_config
PasswordAuthentication을 no -> yes 로 바꾼다
/Password 로 PasswordAuthentication 한 줄을 찾아주고 i 를 입력해서 Insert 모드로 들어간다.
주석이 걸려있으면 풀어주고, no라고 되어있으면 no 대신에 yes로 써준 후에
esc를 누르고 :wq! 를 입력한다.
6. 이제 ubuntu계정과 appAdmin 계정이 같은 key pair로 로그인이 가능하게 하기 위하여
/home/ubuntu 아래에 .ssh 디렉토리를 /home/appAdmin에 복사해야한다.
(이 과정은 password로만 서버에 접속하게 하기 위한 과정과는 무관하다. 최조에 ubuntu 계정으로 접속하기 위해 사용한 ppk (private key pair)를 appAdmin도 같은 키로 사용하여 로그인하도록 하기 위한 과정이다)
cp -r /home/ubuntu/.ssh /home/appAdmin/.ssh 명령어를 입력한다.
(-r 옵션을 주면 하위의 디렉토리까지 모두 복사가 가능하다. /home/appAdmin 아래에 authorized_keys 가 잘 복사되었는 지 확인하자.)
7. 복사한 key pair를 appAdmin 소유권, 그룹으로 바꿔준다.
chown -R appAdmin:appAdmin /home/appAdmin/.ssh 명령어를 입력한다.
root@ip-172-31-3-41:/home/appAdmin# chown -R appAdmin:appAdmin /home/appAdmin/.ssh
해당 명령어로 root:root (소유권자:그룹) -> appAdmin:appAdmin으로 변경되었음을 확인 할 수 있을 것이다.
8. service를 재시작하여 변경된 설정파일들이 적용되도록 service ssh restart 명령어를 입력하자.
root@ip-172-31-3-41:/home/appAdmin# service sshd restart
터미널 창을 껐다가 appAdmin 계정, 비밀번호로 접속하면 접속이 가능한 것을 확인 할 수 있다!
'Cloud > AWS' 카테고리의 다른 글
[AWS] CodeDeploy를 사용하여 EC2에 배포시 체크리스트 및 디버깅 (0) | 2022.12.14 |
---|---|
[AWS] NAT Instance vs. Bastion Host (0) | 2022.12.10 |
[AWS] 커밋한 파일이 반영 안돼서 CodeDeploy scriptFailed 실패할 때 (0) | 2022.04.27 |
[AWS] AWS Cloud Practitioner 자격증 합격 후기 및 팁 (0) | 2021.08.21 |
[AWS]EC2- ubuntu 계정 초기 비밀번호 (0) | 2021.06.20 |