La règle Netfilter / tc pour séparer le trafic SSH et SFTP?


2

Lorsque je me connecte à distance à mon serveur (RasPI 2 avec Raspbian), je souhaite que mes sessions SSH interactives soient toujours prioritaires sur toutes les sessions SFTP en cours d'exécution. De plus, les sessions SFTP devraient avoir une priorité inférieure à celle du trafic SMB, par exemple, sur le réseau local.

Le serveur est derrière un routeur dd-wrt, connecté à son tour à un modem câble avec une bande passante de liaison montante de 5 Mbps.

Je comprends que je devrais utiliser iptablespour marquer les paquets sortants dans différentes classes et tcles mettre dans différentes classes. Mais comment puis-je dire à iptables de discerner les paquets SSH à partir de paquets SFTP et de les marquer différemment? Dans le scénario ci-dessus, ils proviennent du même port, le nom du processus est identique ( sshd), l'utilisateur est identique et l'adresse IP de destination.

Le démon sshd utilise son serveur SFTP interne pour utiliser cette ChrootDirectoryfonctionnalité.

Réponses:


1

Non, ce n'est pas possible avec cette configuration. sftpest un sous-système de sshdet les sftpcommandes sont simplement encapsulées dans un sshprotocole, qui a pour processus serveur appelé, sftp-serverau lieu de bash, processus commun aux sessions ssh normales.

La possibilité serait d'exécuter une autre instance de sshdservice avec le sous-système sftp sur un port différent, que vous pouvez ensuite différencier simplement iptablespar port. Vous pouvez même créer un autre service sftp-onlyen définissant ForcedCommand /path/to/sftp-serverde ne pas accepter les sessions ssh normales.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.