해결된 질문
작성
·
226
0
리눅스 서베에 접속할 때 생성한 키 파일을 이용해서 관리자 비밀번호를 표시하고, 이를 이용해서 로그인하는 방식으로 설명이 되어 있습니다.
보안상 root 계정 접속을 막고 새로 만든 계정으로 접속을 하라고 설명을 하셨는데요.
새로 만든 계정과 키 파일을 어떻게 연결을 해서 접솓을 하는지에 대한 설명이 없습니다.
이 부분에 대해서 추가 설명 부탁드립니다.
또한, 서버를 생성할 때 계정을 지정할 수 있는 방법이 있다면 이 부분도 설명 부탁드립니다.
답변 1
0
key 파일은 root 의 password를 확인 하기 위해서 사용을 합니다. 접속을 하기 위해서 사용하지는 않습니다.
(AWS의 key 와 조금 다르 부분 입니다.)
useradd 명령어로 만드신 계정은 계정에 설정해준 password로 접속을 하시면 됩니다.
$useradd user1
$passwd user1
password: XXXXXXXX <--- 비밀번호로 접속
생성하신 user 계정을 ssh key를 이용하여 접속을 워하는 경우 별도로 ssh server 설치와 ssh key 생성작업을 하여 지정 하셔야 합니다.
서버 생성시 계정을 자동으로 생성 하려면 init.script 에 다음의 내용을 참고하여 추가 하시면 됩니다.
1) username , password 모두 지정
useradd -m -p EncryptedPasswordHere username
2) uername, password 입력받기
#!/bin/bash
# Purpose - Script to add a user to Linux system including passsword
# Author - sean.kim@ under GPL v2.0+
# ------------------------------------------------------------------
# Am i Root user?
if [ $(id -u) -eq 0 ]; then
read -p "Enter username : " username
read -s -p "Enter password : " password
egrep "^$username" /etc/passwd >/dev/null
if [ $? -eq 0 ]; then
echo "$username exists!"
exit 1
else
pass=$(perl -e 'print crypt($ARGV[0], "password")' $password)
useradd -m -p "$pass" "$username"
[ $? -eq 0 ] && echo "User has been added to system!" || echo "Failed to add a user!"
fi
else
echo "Only root may add a user to the system."
exit 2
fi
빠른 답변 고맙습니다.