Почему SELinux (с Enforcing=1) по умолчанию разрешает привязку к нижним (или любым) портам?

¡Lo tengo! Solo necesitaba algunos pequeños ajustes desde este punto de partida , que parece traducirse en una dirección, pero no en la otra. Rellenar en la otra dirección hizo "clic".

Aparentemente, no puede usar DHCP a través de este tipo de puente por razones que todavía no entiendo completamente (dispositivo cableado en una red WiFi ), pero si está de acuerdo con las direcciones estáticas para el puente y para el dispositivo, funciona. Así es como lo hice:


Agregue esto en/etc/network/interfaces:

auto eth0
auto lo wlan0
iface lo inet loopback

# We're going to play router on this interface, so set that address
iface eth0 inet static
    address 192.168.3.1
    netmask 255.255.255.0

# Setup WiFi and take a static address, so we know the context
allow-hotplug wlan0
iface wlan0 inet static
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
    address 192.168.2.5
    netmask 255.255.255.0
    gateway 192.168.2.1

# Take a second address, so we can bridge it to the single device at 192.168.3.x
iface wlan0 inet static
    address 192.168.2.6

Agregue esto en/etc/rc.local:

# Match settings in /etc/network/interfaces
IP_THIS="192.168.2.6"
IP_OTHR="192.168.3.6"

# Actual work
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING  -d $IP_OTHR -i  eth0 -j DNAT --to-destination $IP_THIS
iptables -t nat -A PREROUTING  -d $IP_THIS -i wlan0 -j DNAT --to-destination $IP_OTHR
iptables -t nat -A POSTROUTING -s $IP_THIS          -j SNAT --to-source      $IP_OTHR
iptables -t nat -A POSTROUTING -s $IP_OTHR          -j SNAT --to-source      $IP_THIS

Asegúrese de que /etc/wpa_supplicant/wpa_supplicant.confincluya esto:

network={
    ssid="MyNetwork"
    psk="MyPassword"
    key_mgmt=WPA-PSK
}

Podría estar allí ya, si ya está conectado a través de una utilidad gráfica, pero asegúrese de todos modos. Modifique según sea necesario para su red.


Configure el dispositivo en puente para que sea estático:

address: 192.168.3.6
netmask: 255.255.255.0
gateway: 192.168.3.1

y sus objetivos, si los hay, en la red 192.168.2.xcomo si estuviera directamente en esa red.

Parece extraño comunicarse con algo fuera de su propia subred, pero cuando el puente hace su traducción (iptables), sale bien.

Del mismo modo, configure cualquier cosa en la red principal para usar la segunda dirección del puente, no la dirección real, para hablar con el dispositivo puenteado.


Use un cable cruzado para conectar el dispositivo al puente, y después de reiniciar el puente, debería "simplemente funcionar". (o al menos lo hizo para mí)

La estructura resultante es:

Router:
addr: 192.168.2.1
ssid: MyNetwork
pass: MyPassword
auth: WPA2
dhcp: 100+

Target for Bridged Device
addr: 192.168.2.2

Bridge
addr: 192.168.2.5 (WiFi primary - used for the Bridge Machine itself)
addr: 192.168.2.6 (WiFi secondary - forwards to Bridged Device)
addr: 192.168.3.1 (Wired - "plays router" for Bridged Device)

Bridged Device
addr: 192.168.3.6

Por supuesto, puede cambiar estas direcciones según sea necesario, pero asegúrese de mantenerlas en orden.

1
09.07.2019, 20:43
1 ответ

Конфигурация SELinux (эталонная политика )включает неограниченные типы, и по умолчанию пользователи находятся в неограниченном домене (unconfined_t). Для неограниченных процессов (и пользователей, которые могут запускать неограниченные процессы ), существует очень мало ограничений. Процесс, работающий в неограниченном домене, имеет почти те же привилегии, что и процесс в системе, отличной от -SELinux.

Другой тип доменов — это ограниченные домены, которые имеют строгие правила того, что разрешено делать процессу, работающему в таком домене.

Документация RedHat содержит некоторые детали и примеры, если вы хотите настроить свою систему с ограниченными пользователями SELinux.

1
27.01.2020, 23:41

Теги

Похожие вопросы