Как использовать libnetfilter_conntrack в Ubuntu 18.04 - PullRequest
0 голосов
/ 31 мая 2018

Я играю, чтобы захватить пакет с помощью libnetfilter_conntrack

Следующий код работал до сих пор на Ubuntu, кроме Ubuntu 18.04.

Нет выходных данных, несмотря на просмотр или доступ к ssh.

Знаете ли вы, почему ???

static int cb(enum nf_conntrack_msg_type eMsgType,
                struct nf_conntrack *psConntrack,
                void *pvData)
{
    char buf[1024] = {0,};

    nfct_snprintf(buf, sizeof(buf), psConntrack, eMsgType, NFCT_O_DEFAULT, NFCT_OF_TIME);
    printf("%s\n", buf);

    return NFCT_CB_STOP;
}
int main()
{
    struct nfct_handle *pSNfctHandle;

    pSNfctHandle = nfct_open(CONNTRACK, NFCT_ALL_CT_GROUPS);
    nfct_callback_register(pSNfctHandle, NFCT_T_ALL, cb, NULL);

    nfct_catch(pSNfctHandle);
    nfct_close(pSNfctHandle);

    return 0;
}

Я тестировал после добавления модулей ядра nf_conntrack, nf_conntrack_ipv4, nf_conntrack_netlink.

1 Ответ

0 голосов
/ 25 июня 2018

У нас была похожая проблема 18.04.Пока единственное известное решение - это команда "ufw enable", но она довольно высокого уровня.Было бы неплохо узнать больше атомарных операций для повторного включения функциональности netfilter в Ubuntu 18.x.Предложения более чем приветствуются.

...