Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
Tags
- amazone linux
- Linux
- TGW
- time_format
- jdk
- eventbridge
- audit
- scheduling
- 파일찾기
- EC2
- history
- VPN
- Network
- Transit Gateway
- self-managed
- ssh
- 서버 시간 설정
- openJDK
- cron
- GitLab
- Lambda
- log
- 권한제어
- finops
- aws
- 비용절감
- OpenSSH
- jdk 버전 업그레이드
- Tunnel
- TransitGateway
Archives
- Today
- Total
너기의 기술 성장 일기
linux SSH 보안 설정 본문
환경 최상단에 베스천 서버를 두어 중앙화 시키는게 좋음.
설정파일 위치
vim /etc/ssh/sshd_config
port 및 네트워크 관련 설정
#ssh 기본포트는 22이다. 해커의 무분별한 공격을 방지하기 위하여 변경하는 것이 좋음
# 1024 ~ 65535 중에 사용하는 것이 좋다.(well-known port 제외)
# 포트 변경 후 /etc/services 에서 ssh의 포트를 변경하고 sudo service ssh restart
port 1234
#기본값 any, ipv4로 제한할 경우 inet으로 설정
AddressFamily any
#접속 허용할 ip대역 지정 prefix 8로 적용됨. ip를 접근 제한 설정은 allowuser 옵션 사용 요망
ListenAddress 0.0.0.0
#ipv6 대역 지정
ListenAddress ::
ssh session 설정
#기본값 10, 연결된 shell, 서브시스템(sftp 등), 로그인 세션의 최대 수 제한.
# 1로 설정할 경우 멀티플랙싱이 제한되며 0으로 설정할 경우 포워딩을 허용하면서 모든 셀, 로그인 및 서브시스템 세션이 차단된다.
MaxSessions 10
Session TimeOut 설정
정해진 시간동안 사용하지 않을 시 세션을 종료한다.
#종료시간은 ClientAliveInterval * ClientAliveCountMax 이다.
#아래처럼 설정할 경우 600 * 3 = 1800s 로 30분동안 사용이 없을 시 세션이 만료된다.
ClientAliveInterval 600
ClientAliveCountMax 3
Root 로그인 차단
원격에서 root로 접속하는 것은 최악의 상황이 발생할 수 있으므로 미연에 방지하기 위하여 차단해준다.
PermitRootLogin no
SSH 연결 시 권한 분리
centos7의 경우 기본값 sandbox
#yes로 설정할 경우 ssh 인증 후 ssh 프로세스를 로그인한 사용자의 권한으로 실행한다.
#sandbox일 경우 사전에 승인되지 않은 권한이 없는 프로세스는 추가적으로 여러가지 기능이 제한된다.
### no로 설정할 경우 일반사용자로 로그인하여도 root로 ssh 프로세스가 실행되기 때문에 절대 설정하면 안된다. ###
UsePrivilegeSeparation yes
공백 패스워드 차단
#기본값 no, 패스워드가 공백인 계정에 대한 로그인을 차단하기 위해 no 권장
PermitEmptyPasswords no
패스워드 이용 접속 차단 설정
#yes로 설정할 경우 패스워드 입력으로 ssh 접근이 가능하다. 기본값 no
PermitEmptyPasswords no
로그인 시도 제한 설정
#기본값 6, 지정된 횟수 이상으로 로그인 실패 시 접속 강제 종료
MaxAuthTries 5
로그인 제한 시간 지정
#기본값 2분, 로그인 시도 후 로그인이 성공될 때 까지의 시간을 제한한다. 0으로 설정할 경우 옵션 비활성화
LoginGraceTime 2m
SSH 접속 허용 계정 설정
#특정 사용자만 ssh 접속 허용, 계정이 여러개일 경우 공백으로 구분
AllowUsers user1 user2
#특정 계정이 특정 host에서만 접속할 수 있도록 제한
AllowUsers user1@192.168.0.1
# *를 사용하여 모든 user의 로그인을 허용하되, 접속 허용 호스트만 지정 가능하다.
AllowUsers *@192.168.0.1
참고자료
'보안' 카테고리의 다른 글
linux pem 키 제한 및 권한 제어 (0) | 2023.05.13 |
---|