반응형
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
- mysql executequery error
- mac os git error
- ssl프로토콜확인
- java 버전 변경
- Medium
- aws
- log error
- AWS CLI
- springboottest
- springboot
- parse
- LeetCode
- java 1.8 11
- ssl이란?
- java 여러개 버전
- java
- OpenFeign
- java version
- Java 1.8
- statement.executequery() cannot issue statements that do not produce result sets.
- 스프링부트테스트
- No tests found for given includes
- tls프로토콜확인
- xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)
- yum install java
- JUnit
- error
- xcrun: error: invalid active developer path
- java 11
- easy
Archives
- Today
- Total
쩨이엠 개발 블로그
[nginx] 들어오는 IP를 제한하고 싶을 때 본문
728x90
반응형
보통 테스트를 할 때엔 도메인을 연결해서 기존 도메인은 점검중을 띄우고 QA용의 도메인으로 접속해서 테스트를 진행하는데
이번엔 외부 연동이 많아 도메인을 변경하기에 이슈가 있었다
해서 찾아보니 nginx에서 IP 제한을 할 수 있어서 이번 테스트는 그렇게 진행하였다
기존 nginx-ssl.conf
location / {
add_header Cache-Control "no-store, no-cache, must-revalidate";
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
# Keepalive connection to upstream
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_cache_bypass $http_upgrade;
# proxy_set_header Host $host;
limit_except GET POST HEAD OPTIONS {
deny all;
}
}
프록시 세팅이 되어있다
이 곳에 접속을 허용하지 않은 IP가 들어오면 503을 리턴하게 하고 allowd ip를 세팅해준다 (사실 매우 간단한 편)
// 이 부분 추가
map $remote_addr $allowed_ip {
default 0;
10.202.0.0/16 1;
...
}
location / {
// 이 부분 추가
if ($allowed_ip = 0) {
return 503;
}
add_header Cache-Control "no-store, no-cache, must-revalidate";
...
}
접속하는 ip를 매핑해준 후 매핑한 ip가 아닌 다른 ip로 들어오면 503을 return 해준다
끝!
728x90
반응형
'개발 > ETC' 카테고리의 다른 글
[MySQL] AES-256 암복호화 설정 (AES_DECRYPT) (0) | 2023.09.06 |
---|---|
[MySQL] GenerationTarget encountered exception accepting command : Error executing DDL via JDBC Statement (0) | 2023.05.16 |
[mysql] DB Table 데이터 크기 확인하기 및 TABLES 필드 설명 (0) | 2023.05.03 |
[ linux ] crontab 특정 유저로 실행하기 (0) | 2022.12.13 |
[linux] Binary file * matches 및 Grep option 사용법 (0) | 2022.04.05 |
Comments