Access Server가 네트워크 인터페이스 이름 변경 후 바인딩을 잃었습니다: 키를 고치세요
인터페이스 이름이 바뀌면 데몬은 호스트가 더 이상 갖지 않는 주소에 남습니다. 지정된 키를 조회하고 그 값만 바꾼 뒤 서비스를 다시 시작하세요.
네트워크 인터페이스 이름을 바꾸었거나 어댑터가 다른 이름으로 돌아온 머신을 복원했는데, 이제 OpenVPN Access Server 데몬이 시작되지 않습니다. 웹 인터페이스는 응답할 수도 있고 아닐 수도 있으며, 어떤 구성 요소가 옛 이름에 묶여 있었는지에 달려 있습니다. 서비스가 손상된 것도 아니고 구성이 사라진 것도 아닙니다. 설정 하나가 호스트에 더 이상 없는 인터페이스를 가리키고 있을 뿐입니다.
흔한 반응은 오류가 사라질 때까지 재설치하거나 재초기화하거나 데이터베이스를 편집하는 것입니다. 어느 것이든 장애보다 큰 변경이며, 마지막 것은 서버를 복구할 가치가 있게 만든 사용자와 권한, 프로필 의존성을 지워 버릴 수 있습니다. 이것은 바인딩 문제이고 이름이 붙은 해결책이 있습니다.
증상이 실제로 말하는 것
바인딩할 수 없는 데몬은 보통 자기 로그에 그것을 말합니다. 주소를 사용할 수 없거나 인터페이스가 존재하지 않는다는 내용입니다. 메시지는 구체적이며 데몬이 시도한 주소를 지목합니다. 호스트의 ip -br addr 출력과 비교하면 인터페이스가 이름이 바뀌었는지, 제거되었는지, 아니면 옛 주소 없이 올라왔는지 알 수 있습니다.
작업 내내 권한이 있는 복구 콘솔을 열어 두세요. 바꾸려는 바인딩이 유일한 관리 세션을 운반한다면 스스로 돌아갈 길을 끊는 셈입니다. 로컬 콘솔, 두 번째 관리 주소, 문서화된 대역 외 경로가 있으면 변경을 되돌릴 수 있습니다.
편집하기 전에 구성을 조회하세요
Access Server는 자체 CLI로 서버 구성을 노출합니다. 문서화된 보기는 다음과 같습니다.
sacli ConfigQuery설치된 릴리스에 대해 문서화된 관리 환경에서 실행하고, 다른 호스트의 무관한 셸에서 실행하지 마세요. 변경 전에 현재 값을 보호된 곳에 저장하고 전체 출력을 공개 지원 스레드에 붙여 넣지 마세요.
그 출력은 서버 구성 보기이며 전체 백업이 아닙니다. 사용자와 그룹 속성은 따로 조회되므로 깨끗한 바인딩이 신원을 복원하지 않고, 복원된 신원이 리스너를 고치지도 않습니다. 둘을 별개의 산출물로 기록하세요.
어느 리스너가 깨졌는지 확인하세요
Access Server는 하나 이상의 리스너를 실행합니다. OpenVPN 데몬은 터널 트래픽을, 웹 서비스는 관리 및 클라이언트 포털을 담당하며 다른 구성 요소가 자체 포트를 가질 수 있습니다. 실패한 브라우저 요청은 어느 것이 실패했는지 알려 주지 않고, 오류 메시지의 포트 번호도 마찬가지입니다.
데몬 바인딩 키는 데몬별로 문서화되어 있고, 공식 자습서에서 값은 인터페이스 식별자입니다. 키 이름이 ip_address로 끝나더라도 그렇습니다. 그 문장을 두 번 읽으세요. 자습서는 UDP와 TCP 데몬이 하나의 인터페이스를 공유한다고도 가정하므로 키 하나만 고치는 것은 부분 수리입니다.
일치하는 행이 아니라 지정된 설정을 바꾸세요
자습서는 ConfigPut를 특정 키에 대해 문서화합니다. 예를 들어 vpn.daemon.0.server.ip_address와 vpn.daemon.0.listen.ip_address입니다. 제품 자체의 방법으로 키 이름과 새 값을, 설치된 릴리스가 문서화한 구문으로 사용하고 진단한 리스너의 키만 바꾸세요.
해서는 안 되는 일은 데이터베이스에서 값이 옛 인터페이스 이름과 같은 모든 행을 찾아 전부 바꾸는 것입니다. 그것은 옛 이름이 리스너 설정에만 나타났다고 가정하지만 스키마는 그것을 보장하지 않습니다. 변경을 검토할 수 없게 만들기도 합니다.
두 가지 유혹은 거절할 만합니다. 모든 인터페이스에서 수신하는 기본값으로 되돌리는 것은 노출에 관한 결정이지 철자 수정이 아닙니다. 의도한 로컬 바인딩, 공개된 경로, 그 앞의 필터링이 그 선택과 일치해야 합니다. 구성을 재초기화하면 문제를 해결하는 것이 아니라 이름만 바꾸는 셈입니다. 새 설치가 이름 변경 전에 작동하던 사용자와 권한을 바로 버리기 때문입니다.
적용하고 경로가 작동함을 증명하세요
값을 고친 뒤 제품이 문서화한 수명 주기로 적용하세요( 수명 주기 ). 자습서는 키를 설정한 뒤 sacli start를 사용합니다. 그것은 호스트 전체 재부팅도, 데이터베이스 초기화도 아닙니다.
ss -lntup | grep -E '1194|443'
sacli ConfigQuery | grep -i ip_address리스너를 확인한 뒤 권한이 있는 VPN 연결을 하나 만들고, 사설 리소스 하나에 도달하고, 관리 페이지를 예상 경로로 엽니다. 기존 사용자 권한과 해지를 유지하세요. 그것을 초기화하는 복구는 바인딩을 고치고 배포를 잃은 것입니다. 작업은 같은 서비스가 의도한 인터페이스에서 작동할 때 끝납니다.