2016-12-29 1 views
-1

Ich brauche Hilfe mit dem folgenden Bash v4.1.2-Skript.Bash-Skript-Befehl, der nicht ausgeführt wird

#!/bin/bash 

IP=$1 
IPTABLES=/sbin/iptables 
$IPTABLES -I INPUT -s $IP -j DROP 
echo $IPTABLES -I INPUT -s $IP -j DROP |wall 

Die Variablen, IP und IPTABLES, in den echo bevölkerten erhalten, aber die Zeile oben wird nicht ausgeführt. Die Echo-Ausgänge ...

/sbin/iptables -I INPUT -s 1.2.3.4 -j DROP

..., die syntaktisch korrekt ist und funktioniert, wenn sie manuell ausgeführt.

Ich weiß Bash nicht, also kämpfe ich um dieses elementare Skript zu debuggen. Ich sehe einige Szenarien, in denen Befehle leer sind, wie ich meine und einige, die in $() (mit und ohne Anführungszeichen) verpackt sind. Ich habe auch versucht, Backticks zu verwenden und verschiedene Teile des Befehls zu zitieren. Die echo Pipe über wall existiert nur zum Debuggen.

Ich fand eine im Grunde identische Post bei Bash script commands not working in cron. Mein Skript läuft jedoch nicht von Cron.

=== EDIT ===
Added für @Barmar

[[email protected] tmp]# bash -x /bin/netfilter-drop.sh 
+ IP=1.2.3.4 
+ IPTABLES=/sbin/iptables 
+ /sbin/iptables -I INPUT -s 1.2.3.4 -j DROP 
+ wall 
+ echo /sbin/iptables -I INPUT -s 1.2.3.4 -j DROP 
[[email protected] tmp]# 
Broadcast message from [email protected] (Thu Dec 29 12:46:44 2016): 

/sbin/iptables -I INPUT -s 1.2.3.4 -j DROP 
^C 
[[email protected] tmp]# 
+0

Es sollte gut funktionieren. Was lässt dich denken, dass es nicht ausgeführt wird? – Barmar

+0

Die Regel wird netfilter nicht hinzugefügt. Die Regel wird von iptables nicht angezeigt. – user1801810

+0

Stellen Sie sicher, dass die Datei keine CRLF-Zeilenenden aufweist. Wenn Sie eine Unix-Datei unter Windows bearbeiten, verwenden Sie 'dos2unix', um das Problem zu beheben. – Barmar

Antwort

0

Ich hatte zunächst nur sudo Zugang gegeben den gebuchten Bash-Skript auszuführen. Das Problem war nicht das Skript, sondern die Berechtigungen. Ich musste zusätzlichen sudo Zugang geben, um iptables in meinen sudoers laufen zu lassen. Fest.

Verwandte Themen