MAC 주소 또는 인증서를 사용하여 서버에 대한 액세스 제한

MAC 주소 또는 인증서를 사용하여 서버에 대한 액세스 제한

내 서버에는 고정 IP가 있고 동일한 네트워크에 있는 컴퓨터가 해당 IP 주소를 사용하여 웹 사이트에 액세스할 수 있도록 웹 사이트를 설정했습니다. 예를 들어, 브라우저의 주소 표시줄에 192.168.1.1/#!/을 입력하고 내 웹 사이트에 연결할 수 있습니다.

저는 액세스 권한을 부여한 컴퓨터에 있는 MAC 주소나 인증서를 사용하여 Ubuntu 데스크탑에 대한 연결을 제한하는 방법을 찾고 있습니다.

그런 식으로 연결을 제한하는 방법이 있습니까?

답변1

iptables 규칙을 사용하여 MAC 주소를 기반으로 액세스를 제한할 수 있습니다. 다음은 특정 MAC의 패킷을 허용하지 않도록 설정한 내 규칙의 예입니다.

# Drop packets from a certain MAC address
#
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j LOG --log-prefix "BEFSR81:" --log-level info
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j DROP

어디:

IPTABLES=/sbin/iptables
EXTIF="eth1"
UNIVERSE="0.0.0.0/0"
EXTIP="your static IP address"

그러나 MAC 주소를 기반으로 허용하려는 경우 규칙은 다음과 같습니다.

$IPTABLES -A INPUT -i $EXTIF -s $UNIVERSE -d $EXTIP -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow packets from a certain MAC address and no others
#
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j LOG --log-prefix "BEFSR81:" --log-level info
$IPTABLES -A INPUT -i $EXTIF -m mac --mac-source 00:14:BF:BC:25:EE -j ACCEPT
$IPTABLES -A INPUT -i $EXTIF -j DROP

참고: 허용 버전의 경우 일부 다른 특정 ACCEPT가 필요할 수 있습니다.
로깅 라인을 원할 수도 있고 원하지 않을 수도 있습니다. 보관하는 경우 로그 파일이 넘치지 않도록 하세요.

관련 정보