permettre l'accès à ssh et proftp à partir d'un réseau local et d'une adresse IP externe

1

Je souhaite autoriser l'accès à mon linux (debian) via ssh et proftp à partir de l'ensemble du réseau local (192.168.1.x) et d'une adresse IP externe (l'adresse IP externe est toujours associée à mon sous-domaine .dom.tld). J'ai trouvé ce post https://stackoverflow.com/questions/18939285/how-to-access-my-ssh-linux-server-from-outside-my-home-network mais je souhaite conserver une adresse IP externe fraîche (de de temps en temps, il est possible de le modifier, je configure donc simplement la nouvelle adresse IP de mon nom de domaine pour ce sous-domaine et ma boîte Linux devrait mettre à jour cette restriction automatiquement.

Y at-il un moyen, comment limiter l’accès à mon linux pour ssh et proftp juste pour cette adresse IP externe et pour tout le réseau local?

Si le didacticiel est disponible étape par étape, tant mieux. Merci

peter
la source

Réponses:

1

Il y a beaucoup de façons possibles de le faire, certaines sont simples et mauvaises ( tcp_wrappers), certaines sont meilleures et compliquées ( iptables), certaines sont simples et sont fondamentalement les mêmes ( firewalld)

  1. TCP wrappers (aka hosts_access), vous avez probablement besoin de mod_wrapmodule pour ProFTPd. En SSHD, cela fonctionne bien jusqu'à présent.

    /etc/hosts.deny:
      ALL: ALL
    
    /etc/hosts.allow:
      sshd, proftpd: 192.168., 1.2.3.4
    

    si votre réseau local est 192.168.0.0/16et votre adresse IP externe est1.2.3.4

  2. Firewalld utilise iptablesest plus sophistiqué, car ils le bloque au niveau du réseau:

    firewall-cmd --zone=internal --add-service=ssh
    firewall-cmd --zone=internal --add-service=ftp
    firewall-cmd --zone=internal --add-source=192.168.0.0/16
    firewall-cmd --zone=internal --add-source=1.2.3.4/32
    firewall-cmd --zone=public --remove-service=ssh
    firewall-cmd --zone=public --remove-service=ftp
    

    (La source)

Jakuje
la source
merci Jakuje. J'aime l'idée avec firewalld. Mais comment puis-je garder l'IP externe à jour si cela change?
Peter
pas sûr firewalld, mais tcp_wrappersaccepte certainement aussi les noms d'hôtes.
Jakuje
Je vais essayer tcp_wrappers, mais je devrais peut-être mettre une virgule entre 192.168. et 1.2.3.4
peter
Oui, tu as raison. Il manquait une virgule. Correction maintenant.
Jakuje
J'ai essayé de le configurer maintenant dans hosts.allow, comme "sshd, proftpd: 192.168., Sub.domain.com". Tout fonctionne, mais il vérifie la recherche inversée pour la connexion entrante depuis une adresse IP externe s'il est validé avec sub.domain.com. Mais comment dois-je le configurer de cette manière -> mon serveur doit vérifier l'adresse IP de sub.domain.com, et si l'adresse IP de la connexion entrante est identique à celle de sub.domain.com, autorisez l'accès. Je ne suis pas en mesure de définir sub.domain.com pour la recherche d'adresse IP, mais je peux définir l'adresse IP du sous-domaine sub.domain.com.
peter