반응형
# 설치
- 확장 레퍼지토리 설치
- yum -y install epel-release
- yum -y install google-authenticator
# 환경 구성
- CentOS 6.7 64bit
-
# PAM 설정
- /etc/pam.d/sshd
- 추가
auth required pam_google_authenticator.so [옵션] - 옵션
nullok : google_authenticator로 키 생성시 -s로 secret 파일의 위치를 정해줄 수 있는데 여기서 그 위치의 파일을 읽어오지 못하면 1-factor인증을 진행하는 옵션이다. 이 옵션이 존재하지 않는 기본 값은 2-factor 인증을 함. - forward_pass : client에서 2-factor 인증을 하지 못하는 경우 password 입력시 Password+veri_code로 처리하도록 하는 옵션
- no_increment_htop : 실패시 카운트를 올리지 않는 옵션.
- 설정파일 명시하기
secret=${HOME}/.ssh/google_authenticator 등 다른경로를 명시하면된다.
>> 주의사항 위 추가 코드의 순서가 맨 위로 오도록하여야 패스워드 입력전에 veri code 입력 부분이 출력된다.
# ssh 서비스 설정
- etc/ssh/sshd_config
- PasswordAuthentication yes
- ChallengeResponseAuthentication yes
- UsePAM yes
- sshd 재구동
- service sshd restart
# hostname 변경
- hostname 이 localhost일 때 식별을 위해 변경해 줄 필요가 있는 경우.
- 부팅시 변경
- 레드햇 계열
/etc/sysconfig/network의 HOSTNAME= 변경 - 우분투
- /etc/hostname 에 호스트네임 입력
- /etc/hosts 변경
- 자신을 가리키는 정보에 변경한 호스트를 추가해줌.
# Secret file 생성
- 접속하고자 하는 계정으로 변경
- su - [계정명]
- .ssh 폴더 생성
- mkdir ~/.ssh
- 접속권한 부여
- chmod 700 ~/.ssh
- Secret file 생성
- google-authenticator -t -d --label=[도메인] --issuer=[도메인] -r 3 -R 30
- 추가적인 옵션
- 명령어 입력시 출력되는 url로들어가 바코드를 스캔하여 계정을 등록하거나 Your new Secret key is : "~"의 ~ 부분을 입력하여 계정을 등록한다.
# ssh 접속
- ssh [계정명]@[호스트명]또는 putty와 같은 원격 접속 프로그램으로 접속하면 verification code와 패스워드를 입력하는 창이 출력된다.
결과
#오류 해결
- 첫번째는 SElinux가 활성화 되어 있는 경우 verification이 되지 않는다.
- SELinux 비활성화
- /etc/sysconfig/selinux의 SELIUX=enforcing을 SELINUX=disabled로 변경 후 저장
- reboot
- 두번째는 시간이 맞지않는 경우 Timebased-OTP이기 때문에 시간을 재설정해주어야한다.
- 시간을 재설정하는 도구인 ntp 설치
- yum -y install ntp
- ntpdate pool.ntp.org
- 시작시 자동시작되게 설정
- chkconfig ntpd on
반응형
'System > Linux' 카테고리의 다른 글
Linux/Kernel-analysis/LXR 개발환경 구축하기 (0) | 2017.11.21 |
---|---|
Linux/Makefile 정리 (0) | 2017.11.16 |
Linux/Unix/파일 - 일반 파일, 장치 파일, 디렉토리 (0) | 2017.11.02 |
Linux/웹방화벽/ModSecurity (0) | 2017.10.31 |
Linux/Log 도구/swatch를 이용한 email Boom (0) | 2017.10.31 |