sudoers 목록에없는 사용자 중 하나가 14:00에서 16:00까지 그리고 17:00에서 18:30까지 인터넷에 액세스하기를 원합니다. 가능합니까? 주마다 다른 시간 간격을 설정할 수 있습니까?
sudoers 목록에없는 사용자 중 하나가 14:00에서 16:00까지 그리고 17:00에서 18:30까지 인터넷에 액세스하기를 원합니다. 가능합니까? 주마다 다른 시간 간격을 설정할 수 있습니까?
답변:
iptables의 owner
확장을 사용 하여 다음과 같이 사용자가 인터넷에 액세스하는 것을 차단할 수 있습니다
sudo iptables -A OUTPUT -m owner --uid-owner user_you_want_to_block -j REJECT
이제 cron을 사용하여 해당 규칙을 추가하거나 제거 할 수 있습니다 (이미 iptable 규칙이 있거나 다른 시간에 다른 사용자에게 적용하려는 경우 약간의 쉘 스크립팅이 필요할 수 있음).
-j REJECT --reject-with <argument>
합니까?
루트로 로그인하십시오 :
수도
방화벽 상태를 확인하십시오.
ufw status
방화벽이 비활성 상태 이면 다음을 발행하십시오.
ufw enable
일요일, 화요일, 수요일 및 금요일에 사용자 빌헬름 인터넷 액세스를 허용 된 시간 간격 (14 : 00-16 : 00 & 17 : 00-18 : 30)으로 제한하려면 다음을 수행하십시오.
iptables -I OUTPUT -p tcp -m owner --uid-owner wilhelm -m time --weekdays Su,Tu,We,Fr --timestart 00:00:01 --timestop 14:00:00 -j DROP
iptables -I OUTPUT -p tcp -m owner --uid-owner wilhelm -m time --weekdays Su,Tu,We,Fr --timestart 16:00:00 --timestop 17:00:00 -j DROP
iptables -I OUTPUT -p tcp -m owner --uid-owner wilhelm -m time --weekdays Su,Tu,We,Fr --timestart 18:30:00 --timestop 23:59:59 -j DROP
사이드 참고 : *의 사용에 유의하시기 바랍니다 -I
스위치보다는 -A
의 스위치 iptables
명령을. -I
스위치 OUTPUT 규칙 체인의 시작 (위)에서가 아닌 쇄의 하단에 상기 규칙 (3)를 삽입한다. 규칙은 위에서 아래로 처리되므로 수동 방화벽 규칙을 일반 방화벽 정책 위에 배치하는 것이 중요합니다. 최상위 규칙이 패킷을 수락하면 체인 OUTPUT에서 더 이상 패킷을 삭제했을 수있는 다음 규칙을 검사하지 않습니다.
규칙이 제대로 입력되었는지 확인하십시오 :
iptables -L OUTPUT
부적절한 규칙을 삭제하기 위해, 제 1 규칙 (꼭대기에서 1부터 카운트 말하는 iptables -v -L OUTPUT
문제)를 : iptables -D OUTPUT 1
.
다음 부팅시 복원 할 iptables를 저장하십시오.
iptables-save > /etc/iptables.rules
/etc/rc.local
라인 을 추가하십시오 :
iptables-restore < /etc/iptables.rules
끝난
-
우분투 11.10 (oneiric)에서 로케일 테스트 :
central european summer time -2 hours
.
ufw
나중에 사용하더라도 활성화하는 이유는 무엇입니까 iptables
?
--kerneltz
옵션 으로 고칠 수있는 @PrecisePenguin ( "UTC 대신 커널 시간대 사용")