Problèmes et questions sur les environnements graphiques et les applications.
Répondre

Clamav 0.100

#1Messageil y a 5 ans

Bonjour @ tous :salut:
Mon fils étant au collège, celui-ci fournit une clé usb permettant le transfert de fichiers liés à ses cours. Inutile de préciser que les serveurs du collège sont sous W$ et que tout ou presque est vérolé :twisted:
Le plus flagrant est le remplissage de la clé par des fichiers .lk et un nettoyage récurant est fait par les profs...
Donc , je me résous à mettre Clamav ne serait-ce que pour désinfecter cette fichue clé depuis mon pc.
La version dans les dépôts Arch et Manjaro est la 0.99.4.
Au lancement, on me dit qu'il faut mettre à jour vers la version 0.100.0.
Le dernier commit sur le paquet "officiel" remonte au 14 mars dernier. Si ce n'est pas très loin, ça reste quand même peu réactif, d'autant qu'il est flagué depuis le 09 avril.
J'ai donc bidouillé le PKGBUILD et si ça intéresse ceux qui veulent à tout prix la dernière version, voici la démarche:
  • On récupère les sources du paquet Aur par la méthode qui vous convient :gsourire: . Perso, je fais:

yaourt -G clamav
  • On édite clamav.install en remplaçant la ligne if (( $(vercmp $2 0.99.3) <= 0 )); then qui devient if (( $(vercmp $2 0.100.0) <= 0 )); then
  • On édite le PKGBUILD ou plus simplement on remplace son contenu par ce qui suit:

# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Contributor: Dale Blount <dale@archlinux.org>
# Contributor: Gregor Ibic <gregor.ibic@intelicom.si>
# Contributor: Gaetan Bisson <bisson@archlinux.org>
# Bidouilled by lemust83 
pkgname=clamav
pkgver=0.100.0
pkgrel=1
pkgdesc='Anti-virus toolkit for Unix'
url='https://www.clamav.net/'
license=('GPL')
arch=('x86_64')
depends=('bzip2' 'libltdl' 'libxml2' 'curl' 'libsystemd' 'pcre2')
makedepends=('libmilter' 'systemd')
backup=('etc/clamav/clamd.conf'
        'etc/clamav/freshclam.conf'
        'etc/clamav/clamav-milter.conf'
        'etc/logrotate.d/clamav')
install=clamav.install
source=(https://www.clamav.net/downloads/production/${pkgname}-${pkgver}.tar.gz{,.sig}
        clamav.logrotate
        clamav.tmpfiles
        clamav.sysusers)
sha256sums=('c5c5edaf75a3c53ac0f271148fd6447310bce53f448ec7e6205124a25918f65c'
            'SKIP'
            'c36e3ddf790fa6ea90169038ae08521a31652a372017e6e38858e28fc63b3f74'
            '8e216c7e4763a273a120930787dcc444ea221bb719eed180a9d15b4c1d603a84'
            '01a896c3a1cd34b323594403fd82a9e353b5aa848b8462137b621959558199e8')
validpgpkeys=('65ED513993F08DA06F9639A6F13F9E16BCA5BFAD') # Talos (Talos, Cisco Systems Inc.) <research@sourcefire.com>

prepare() {
  cd ${pkgname}-${pkgver}
  sed -E 's|^(Example)$|#\1|' -i etc/{clamd,freshclam,clamav-milter}.conf.sample
  sed -E 's|#(User) .+|\1 clamav|' -i etc/{clamd,freshclam,clamav-milter}.conf.sample
  sed -E 's|#(LogFile) .+|\1 /var/log/clamav/clamd.log|' -i etc/clamd.conf.sample
  sed -E 's|#(LogTime) .+|\1 yes|' -i etc/clamd.conf.sample etc/clamav-milter.conf.sample
  sed -E 's|#(PidFile) .+|\1 /run/clamav/clamd.pid|' -i etc/clamd.conf.sample
  sed -E 's|#(TemporaryDirectory) .+|\1 /tmp|' -i etc/{clamd,clamav-milter}.conf.sample
  sed -E 's|#(LocalSocket) .+|\1 /run/clamav/clamd.ctl|' -i etc/clamd.conf.sample
  sed -E 's|#(UpdateLogFile) .+|\1 /var/log/clamav/freshclam.log|' -i etc/freshclam.conf.sample
  sed -E 's|#(DatabaseMirror) .+|\1 database.clamav.net|' -i etc/freshclam.conf.sample
  sed -E 's|#(NotifyClamd) .+|\1 /etc/clamav/clamd.conf|' -i etc/freshclam.conf.sample
  sed -E 's|#(PidFile) .+|\1 /run/clamav/freshclam.pid|' -i etc/freshclam.conf.sample
  sed -E 's|#(LogFile) .+|\1 /var/log/clamav/clamav-milter.log|' -i etc/clamav-milter.conf.sample
  sed -E 's|#(PidFile) .+|\1 /run/clamav/clamav-milter.pid|' -i etc/clamav-milter.conf.sample
  autoreconf -fiv
}

build() {
  cd ${pkgname}-${pkgver}
  # --disable-zlib-vcheck because the configure script thinks that
  # zlib 1.2.11 is older than 1.2.2
  ./configure \
    --prefix=/usr \
    --sbindir=/usr/bin \
    --sysconfdir=/etc/clamav \
    --with-dbdir=/var/lib/clamav \
    --with-user=clamav \
    --with-group=clamav \
    --disable-rpath \
    --disable-clamav \
    --disable-llvm \
    --enable-zlib-vcheck \
    --enable-milter \
    --enable-clamdtop

  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
  make
}

package() {
  cd ${pkgname}-${pkgver}
  make DESTDIR="${pkgdir}" install

  mv "${pkgdir}"/etc/clamav/freshclam.conf{.sample,}
  mv "${pkgdir}"/etc/clamav/clamd.conf{.sample,}
  mv "${pkgdir}"/etc/clamav/clamav-milter.conf{.sample,}

  install -Dm 644 ../clamav.sysusers "${pkgdir}"/usr/lib/sysusers.d/clamav.conf
  install -Dm 644 ../clamav.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/clamav.conf
  install -Dm 644 ../clamav.logrotate "${pkgdir}"/etc/logrotate.d/clamav
}

# vim: ts=2 sw=2 et:
  • On se rend en console dans le dossier de travail (si ce n'est déjà le cas) et on crée le paquet:

cd clamav/
makepkg -s
Si vous avez un problème de validation de clé:

gpg --search-key 'research@sourcefire.com'
Vous tapez 1 (la plus récente) , vous validez et vous relancez makepkg
  • Si vous n'avez pas d'erreur, le paquet sera créé. Pour l'installer:

sudo pacman -U clamav-0.100.0-1-x86_64.pkg.tar.xz
On peut simplifier l'installation en faisant directement makepkg -si (i pour install) mais je préfère décomposer l'opération.
La mise à jour du paquet se fait automatiquement (sans désinstallation du paquet précédent.)

$ pacman -Qi clamav
Nom                      : clamav
Version                  : 0.100.0-1
Description              : Anti-virus toolkit for Unix
Architecture             : x86_64
URL                      : https://www.clamav.net/
Licences                 : GPL
Groupes                  : --
Fournit                  : --
Dépend de                : bzip2  libltdl  libxml2  curl  libsystemd  pcre2
Dépendances opt.         : --
Requis par               : --
Optionnel pour           : --
Est en conflit avec      : --
Remplace                 : --
Taille installée         : 3,87 MiB
Paqueteur                : Unknown Packager
Compilé le               : jeu. 26 avril 2018 14:10:54 CEST
Installé le              : jeu. 26 avril 2018 14:57:58 CEST
Motif d’installation     : Explicitement installé
Script d’installation    : Oui
Validé par               : --
Par contre, le paquet en cache reste à la 0.99.4

/var/cache/pacman/pkg/clamav-0.99.4-1-x86_64.pkg.tar.xz
Donc pas de rétrogradation possible sans réinstaller via les dépôts ou en ayant sauvegarder l'archive avant.
Reste plus qu'a relancer sudo freshclam pour actualiser la base.

Clamav 0.100

#2Messageil y a 5 ans

Bonjour, merci pour ce travail et pour le partage. :bien clamav m'était sorti de l'esprit, bien planqué dans un recoin de mon HDD. Je suis aussi concerné puisque ma dernière est au lycée et le même genre d'OS
malpropre
est présent dans son lycée. Je vais conserver la version "communauté" pour l'instant mais je garde ton PKGBUILD précieusement au cas où. :wink:

Clamav 0.100

#3Messageil y a 5 ans

Salut,

Intéressant si j'utilisais encore Clamav, j'ai arrêté le jour où je me suis retrouvé avec un virus non détecté par Clamav sur une clé USB prêtée à un Windowsien. On peut ajouter des signatures de virus additionnelles, mais ça me semble un peu lourd à gérer.

Clamav 0.100

#4Messageil y a 5 ans

Salut, sur AUR, vous avez aussi Bitdefender, qui m'a été conseillé par un des modérateurs d'Archlinux.fr :

aur/bitdefender 7.7.1-44 [installed] (13) (0,81)
    BitDefender's Personal UNIX Workstation Antivirus

Clamav 0.100

#5Messageil y a 5 ans

C'est ce que j'utilise actuellement avec une action personnalisée dans Thunar.
Répondre