gitlab 403

1415 단어 gitlab403502
gitlab 전단 에 nginx 대 리 를 거 친 후, 어느 날 방문 할 때 nginx 가 502 오 류 를 보고 한 것 을 발견 하 였 습 니 다.
검색 결과 한 사용자 인증 에 실 패 했 습 니 다. gitlab 는 안전 을 위해 원 격 ip 을 사용 하지 않 았 습 니 다.
./redis-cli keys '*' | grep 'rack::attack' 
cache:gitlab:rack::attack:allow2ban:ban:10.5.0.42
cache:gitlab:rack::attack:allow2ban:ban:10.5.0.46

임시 해결 방법 은 redis 의 변경 데 이 터 를 제거 하기 위해 ./redis-cli keys '*' | grep 'rack::attack' | xargs .해결 방법 1:
gitlab. rb 에서 아래 설정 을 찾 으 면 ip 를 화이트 리스트 에 추가 하거나 maxretry 를 추가 합 니 다.
 gitlab_rails['rack_attack_git_basic_auth'] = {
   'enabled' => true,
   'ip_whitelist' => ["127.0.0.1"],
   'maxretry' => 10,
   'findtime' => 60,
   'bantime' => 3600
 }

해결 방법 2:
앞 에 있 는 nginx 역방향 프 록 시 를 거 쳤 기 때문에 gitlab 에서 가 져 온 원 격 ip 은 nginx 의 ip 입 니 다. 사용자 의 실제 ip 이 아 닙 니 다. gitlab. rb 에서 다음 설정 을 찾 아 nginx 의 ip 을 real 에 추가 합 니 다.ip_trusted_address, 그리고 realip_header 는 전단 nginx 사용자 정의 header 로 변경 되 었 습 니 다. gitlab 는 사용자 정의 header 를 통 해 사용자 의 실제 ip 을 가 져 올 수 있 습 니 다.
nginx['real_ip_trusted_addresses'] = ['10.5.0.46','10.5.0.42']
nginx['real_ip_header'] = 'X-Forwarded-For'
nginx['real_ip_recursive'] = 'on'

참고:https://docs.gitlab.com/omnibus/settings/nginx.html

좋은 웹페이지 즐겨찾기