Правило iptables для захвата порта и IP на экземпляре AWS

Предупреждение : оставлять UN-зашифрованный пароль внутри скрипта - очень плохая идея. Если вы все же решите это сделать, по крайней мере, измените права доступа к файлу на 600 от root. Это защитит его от простых атак.

Затем:

Первая проблема, которую я вижу, заключается в том, что вы дважды вызываете adduser в части else.

Это вызовет первое выполнение, которое задаст все вопросы.
Второй вызов работает нормально.

Кроме того, существует много общих опций между частями then и else, сценарий можно записать так:

#!/bin/bash

$PassWord="somepassword"
UserName="default"

if id -u "$UserName" >/dev/null 2>&1; then
    userdel -r -f "$UserName"
fi

adduser --disabled-password --gecos "" "$UserName"
userdir=/home/"$UserName"
[[ -d $userdir ]] || mkdir "$userdir"   # only needed for system users.
                                        # which usually do not have a password.
usermod -a -G sudo "$UserName"
echo "$UserName:$PassWord" | chpasswd
1
12.07.2017, 23:52
1 ответ

Мне удалось найти кое-кого, кто мог бы помочь мне с этой проблемой. Вот правила, которые мы использовали для сопоставления портов с исходящими IP-адресами в AWS:

Во-первых, вам нужно, чтобы это работало через экземпляр NAT, чтобы заставить его работать. Есть много ресурсов о том, как это настроить.

iptables -t mangle -A PREROUTING -p tcp --dport 27 -j MARK  --set-mark 27
iptables -t nat -A PREROUTING -p tcp --dport 27 -j DNAT --to :25
iptables -t nat -A POSTROUTING -m mark --mark 27 -j SNAT --to-source 10.0.0.11
1
27.01.2020, 23:33

Теги

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