ssh
하루 중 특정 시간에 서버를 비활성화 하고 싶습니다 . 나는 최근에 무차별 대입을 통한 크래킹을 경험했기 때문에 이 작업을 수행하고 싶었습니다 ssh
. crontab
SSH를 활성화/비활성화하는 데 사용할 수 있습니까 ?
ssh
그렇지 않다면 하루 중 특정 시간에 비활성화할 수 있는 다른 방법이 있습니까 ?
답변1
답변2
특정 시간에 SSH 서버를 종료하는 대신 다음을 사용하는 것이 좋습니다.pam_time대신 모듈은 일주일 중 특정 시간에 인증을 거부합니다. 이는 해킹이 아니며 cron에 의존하지 않으며 인증 규칙 세트를 정의하는 데 더 많은 유연성을 제공합니다.
UsePAM yes
당신 의sshd_config
- 모듈을
/etc/pam.d/sshd
삽입하려면 편집하세요.pam_time
- 에 시간 제한 규칙을 작성하세요
/etc/security/time.conf
.
답변3
선택할 수 있는 다양한 옵션이 있습니다.
cron
다음과 같이 서버를 켜고ssh
끌 수 있습니다 .- 포트를
iptables
차단 및 차단 해제하는 데 사용할 수 있습니다.ssh
ssh
다른 포트에서 실행하면 이 모든 문제를 해결할 수 있습니다.- 포트 노킹을 구현할 수 있습니다
- 외부 액세스를 완전히 비활성화
ssh
하고 VPN을 강제로 사용할 수 있습니다.
사용 가능한 다른 솔루션이 있다고 확신하지만 5개에서 멈췄습니다.
답변4
time
iptables 모듈이 있습니다 :
iptables ... -m time --timestart TIME --timestop TIME --days DAYS -j ACTION
-p tcp -j REJECT --reject-with tcp-rst
포트가 닫힌 척하는 데 사용됩니다 (기본 동작 REJECT
은 ICMP 패킷입니다).
ESTABLISHED
또한 열려 있는 연결이 계속 작동하도록 하려면 연결이 통과하도록 허용하는 또 다른 규칙을 앞에 추가할 것입니다 .
이는 스크립트를 사용하여 특정 시간에 특정 작업을 수행하는 솔루션에 비해 큰 이점이 있습니다. 이는 정적 구성이고 액세스를 영구적으로 차단하는 등의 실패 모드가 발생할 가능성이 적기 때문입니다.