스트레스를받는 서버에서 SSH 액세스 보장


11

얼마 전에 Apache와 Snort가 프로세서의 100 %를 점유하고있는 서버에서 문제가 발생하여 원격 액세스를 통해 sshd가 응답하지 않습니다. 로컬 TTY에 로그온하기 위해 서버로 물리적으로 이동 한 다음 아파치 / 코를 막아야했습니다.

100 %로드 된 CPU / 메모리 상황에서 ssh 연결을 보장 할 수있는 방법이 있는지 궁금합니다. "좋은"우선 순위를 설정하는 것으로 충분합니까?

감사합니다!

답변:


10

대역 외 방법을 사용하는 것 외에는 완전히로드 된 서버에서 SSH를 사용할 수 있다는 보장이 없습니다. 서비스가 너무로드되어 기본 SSH 터미널을 제공 할 수 없다면 다른 문제가 있습니다.

예, 값을 renice낮게 설정하면 nice로드가 많은 경우 성능이 향상되지만 대신 pam_security (예 : 여기에 표시 ) 와 같은 것을 사용 하면 Apache / 무엇이 처음부터 관리 할 수 ​​없게됩니다.


권리. 그는 실제 문제가 아니라 증상을 치료하려고합니다.
ewwhite

@ewwhite 정확합니다. 그리고 증상을 치료하면 왜 다른 것들이 결과적으로 깨지는 지 알아 내려고 꼬리를 쫓을 수 있습니다. :)
Nathan C

나는 불을 끄는 방법을 찾고 있지만 물론 다른 데몬에 대한 제한을 설정합니다. 이것은 비상 사태를 대비 한 것이므로 원격 액세스에 항상 sshd 응답을해야한다는 평온함이 필요합니다.
Renato Todorov

이 경우 @RenatoTodorov는 증상을 치료할 수 없습니다. 시스템에 모든 {CPU, RAM, 소켓, PID}를 소비하는 런 어웨이 프로세스 nice가있는 경우 SSH 액세스 권한을 갖도록 (또는 해당 문제에 대해) '범죄자 조차도 CPU에서 빠르게 부팅 될 것'을 보장 할 수 없습니다 사용 가능한 모든 콘솔 액세스). 기본 문제 (자원 돼지)를 해결해야합니다. 소방은 시스템 관리가 좋지 않습니다.
voretaq7

1
글쎄, 너희들은 내가 이미 가지고있는 한 iDRAC 7 Express를 사용할 것이라고 확신했다. 다들 감사 해요!
Renato Todorov

7

이를위한 범용 솔루션은 Dell iDRAC, IBM Remote Supervisor 또는 HP iLO와 같은 대역 외 관리 도구입니다. OS가 특정 상황에 따라 응답 할 수 있는지 여부에 관계없이 항상 콘솔을 표시하고 필요에 따라 원하는 전원 상태를 적용 할 수 있습니다.


자, iDRAC는 Dell 서버를 사용하는 좋은 선택이지만 로컬 서비스를위한 일종의 "QoS"인 sshd (예 : 스폰 된 자식 포함)를 위해 CPU를 예약하는 것과 같은 간단한 솔루션을 생각하고있었습니다.
Renato Todorov

일부 회사는 파산 또는 탐욕 : 이러한 경우 sysrqd는 iDRAC, iLO, KVM의 저렴한 대안이 될 수 있습니다.
bgtvfr

0

sshd에 실시간 권한을 부여하는 데 성공했지만 실시간 프로세스 중 하나가 실행되면 시스템을 재부팅해야합니다.

따라서이 라우트를 내려 가려면 응급 상황을위한 두 번째 ssh 데몬을 시작하십시오. :)


1
realtimeSSHD를 보내고하는 것은 특히 포트 (22)에, 나에게 위험한 것 (DoS 공격이 될 수있는 SSH 스캔 - ... 대체 포트에서 실행은을 완화 할 수 있지만, 나는 아직도 무서워 할 것)
voretaq7

인터넷에서 액세스를 차단해도 문제가되지 않습니다. 실제로이 서버로가는 유일한 경로는 VPN을 통하는 것입니다. 제안 해 주셔서 감사합니다!
Renato Todorov
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.