Size: a a a

2018 February 12

АЗ

Алексей Зорин in lxd_ru
Только вот сработает ли это с  SFTP
источник

К

Кирилл in lxd_ru
Алексей Зорин
Можно делать так - на хосте создавать пользователя, генерировать SSH ключ
в .ssh/authotized_keys можно прописать команду которая идет перед ключем
по идее туда можно записать ssh username@lxc-name
источник

К

Кирилл in lxd_ru
в контейнере создать соответствующего юзера и приделать нужный ключ от user с хоста.
но все это костыли )
источник

К

Кирилл in lxd_ru
sftp не будет работать
источник

К

Кирилл in lxd_ru
я лично смирился и пробрасываю порты
источник

АЗ

Алексей Зорин in lxd_ru
Я тоже думаю, что это единственный нормальный вариант
источник

АЗ

Алексей Зорин in lxd_ru
Хотя можно написать свой PAM модуль
источник

АЗ

Алексей Зорин in lxd_ru
Кирилл
я лично смирился и пробрасываю порты
Касательно проброса портов - можно как-то получить список свободных портов?
источник

АЗ

Алексей Зорин in lxd_ru
Т.е. на этих портах нет iptables правил, и их не слушает какой-то сервис
источник

AK

Andrew Krw. in lxd_ru
nmap на свою тачку
увидешь что занято
источник

AK

Andrew Krw. in lxd_ru
вычитай из тех что свободны
источник

AK

Andrew Krw. in lxd_ru
и получишь полностью свободные порты
источник

АЗ

Алексей Зорин in lxd_ru
Мне бы это на python сделать
Нашел реализацию поиска свободных портов, протестриую
источник

AK

Andrew Krw. in lxd_ru
ну если на питон
делаешь лист
all_ports = [i for i in range(1,65536)]
потом смотришь занятые порты через
nmap
lsof
netstat
собираешь их тоже в лист busy_ports
потом делаешь
free_ports = list(set(all_ports)-set(busy_ports))
источник

AK

Andrew Krw. in lxd_ru
и все
источник

AK

Andrew Krw. in lxd_ru
вот тебе список свободных портов
источник

AK

Andrew Krw. in lxd_ru
Алексей Зорин
Мне бы это на python сделать
Нашел реализацию поиска свободных портов, протестриую
скинул пример
источник

АЗ

Алексей Зорин in lxd_ru
Спасибо
источник

АЗ

Алексей Зорин in lxd_ru
def get_free_tcp_port():

   
 tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    tcp.bind(('', 0))

    addr, port = tcp.getsockname()

    tcp.close()

    return port
источник

АЗ

Алексей Зорин in lxd_ru
Можно еще так
источник