nClam - Как передать путь к серверу Linux в ScanFileOnServer - PullRequest
0 голосов
/ 03 ноября 2019

Я настроил ClamAv, работающий в док-контейнере внутри Ubuntu VM (VirtualBox). Я написал следующую программу на C # (запущенную на моем хосте Windows) и смог успешно сканировать локальные файлы на моем компьютере с Windows (SendAndScanFileAsync), так как 192.168.0.103:3310 (ClamAv in Guest Ububtu) доступен из Host Windows.

Я хочу сканировать файлы в папке «Загрузки» на сервере Linux, используя метод ScanFileOnServerAsync, но я не могу этого сделать, поскольку не уверен, как указать путь Linux в следующем коде. Пожалуйста, помогите.

namespace ClamAvDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            var clam = new ClamClient("192.168.0.103", 3310);
            var scanResult = clam.ScanFileOnServerAsync("Downloads"); // Downloads is a folder in Linux Server running as a VM

            switch (scanResult.Result.Result)
            {
                case ClamScanResults.Clean:
                    Console.WriteLine("The file is clean!");
                    break;
                case ClamScanResults.VirusDetected:
                    Console.WriteLine("Virus Found!");
                    Console.WriteLine("Virus name: {0}", scanResult.Result.InfectedFiles.First().VirusName);
                    break;
                case ClamScanResults.Error:
                    Console.WriteLine("Woah an error occured! Error: {0}", scanResult.Result.RawResult);
                    break;
            }
        }
    }
}

Путь к серверу Linux для сканирования: / home / {user} / Downloads

Независимо от того, какой формат пути я укажу, я всегда получаю эту ошибку - "Загрузки: lstat() не удалось: нет такого файла или каталога. ОШИБКА "

...