Politique de sécurité et AS/400
valeurs système liées à la sécurité
:
indiquent le nombre de tentatives d'ouverture de session infructueuses admise
et l'action à entreprendre :
- désactiver l'unité (peu intéressant avec TELNET)
- désactiver le profil
- les deux
affiche des informations sur la dernière ouverture de session et le
nombre de tentatives infructueuses :
- particulièrement intéressant pour QSECOFR
indique si un profil de type *SECOFR(*ALLOBJ ou *SERVICE) peut se signer sur
n'importe quel écran :
- oui (valeur 0) : n'importe qui peut être QSECOFR (s'il trouve le
mot de passe)
- non (valeur 1) il faut des droits (*CHANGE) sur l'unité pour pouvoir
se signer QSECOFR ce qui ajoute à la sécurité logique
(mot de passe) une sécurité physique (il faut pouvoir entrer
dans la salle machine, ...)
indique un temps d'inactivé maxi (sans E/S écran), ce paramètre
est reconnu par TELNET depuis la V4R20
- si vous indiqué un temps maxi (l'assistant IBM recommande 15 mn),
indiquez alors la valeur *DSCJOB pour la val.système QINACTMSGQ et
pensez à paramètrer le temps maxi ou un job peut-être
déconnecté à 60 Mn par exemple.
- QPWDEXPITV et tout ce qui a trait à la validité d'un mot
de passe
indique une durée de validité d'un mot de passe.
- Une bonne politique de mot de passe est reconnu par tous les responsables
sécurité comme la méthode encore la plus sure. Sachant
qu'une bonne politique de sécurité n'est bonne que si elle
est acceptée dons acceptable.
- Un délai de 60 ou 90 jours semble raisonnable
(moins c'est difficile, au delà ATTENTION aux "prêts"
de mot de passe)
- on peut raisonnablement imposer 5 ou 6 c. (l'idéal c'est 8)
- on doit imposer le mot de passe différent des 4 ou 6 précédents
(suivant le délai)
- on peut interdire certains caractères, imposer des chiffres,
empêcher des caractères identiques à la même
place lors du changement, ....
- pensez à l'utilitaire Sécurity Toolkit qui permet d'analyser
les profils ayant un mort de passe par défaut (cde ANZDFTPWD) et
plein d'autres listes très utiles (GO SECTOOLS)
indique si l'on accepte un IPL à distance (un simple appel téléphonique
suffit)
indique si des objets sensibles peuvent être restaurés
- *ALWLSYSSTS : Des objets à l'état système peuvent
être restaurés
- *ALWPGMADP : des pgms adoptants les droits du propriétaires peuvent
être restaurés
- *ALWPTF : des PTFs peuvent être restaurées
- *ALL toutes les options précédents sont admises (val. par
défaut)
- *NONE aucune option n'est admise (val. conseillée, il faut cependant
penser à modifier cette valeur système avant tout changement
de version et installation de cumulative)
indique si des opération de service à distance sont admises
- cela avec le processus d'identification des incidents (ANZPRB)
indique la liste des personnes habilitées à créer des programmes
en *OWNER
- *NONE : toute personne peut créer des programmes avec le paramètre
USEADPAUT(*YES)
- un-nom-de-liste d'autorisation : seuls les profils ayant au moins les
doits *USE dans cette liste peuvent créer de tels programmes
Audit sécurité
Le système propose depuis la V2 une fonction d'audit (via un journal)
permettant de garder trace de certaines actions utilisateur.
Depuis la V2R30 il est possible de paramétrer cette fonction
...
. par objet
définir les actions entreprises sur cet objet à tracer
*NONE aucune trace
*CHANGE les modifications
*ALL toute utilisation
*USRPRF suivant le profil utilisant cet objet <---------
. par profil !
!
définir le niveau de trace pour les objets ayant *USRPRF <------ Fin
définir les actions système à tracer *NONE = suivant QAUDLVL
*xxxx = action à tracer |
valeur système QAUDCTL ( *NONE = aucune action de trace)
et/ou
trace/objet ! trace/actions du profil
*OBJAUD ! *AUDLVL
! ! !
! ! ------------------------------
! ! ! ! ...
CHGOBJAUD OBJ() ! ! !
! ! !
OBJAUD(*NONE) =rien ! ! !
(*CHANGE)=modifs! CHGUSRAUD USRPRF() ! QAUDLVL
(*ALL) =tout ! ! (sysval)
(*USRPRF)= <----!--> OBJAUD(*NONE) !
! (*CHANGE) ! actions à tracer
! (*ALL) ! pour tous les
*USRPRF = suivant indiquations ! ! profils du système
liées au profil. ! !--AUDLVL(*xxxx) !
! ! ! ^ Fin
! -> actions à tracer ! !
! (en plus de QAUDLVL)-!-----!
! pour ce profil ! |
Pour les objets :
La valeur par défaut est *NONE
Vous pouvez forcer une valeur pour les objets sensibles
(certaines commandes système par exemple)
ou bien indiquer que cela est fonction du profil
DANS CE CAS UNIQUEMENT on tiendra compte du paramètre OBJAUD
de la commande CHGUSRAUD.
Pour les actions utilisateur :
La valeur système prime avant toutes choses. (dft = *NONE)
Les actions à auditer indiquées au niveau de l'utilisateur sont
considérées en plus.
SI QAUDLVL = *CREATE et profil P1 = *DELETE, le système audit toutes
les créations ET pour P1 les créations et les suppressions.
|
..............................................................................
: Audit des actions utilisateur (AUDLVL) - Aide :
: :
: :
: *NONE :
: Aucun niveau d'audit n'est indiqué. Le niveau d'audit pour cet :
: utilisateur provient de la valeur système QAUDLVL. :
: :
: *CMD :
: Les chaînes de commande CL, les commandes de contrôle opérateur et :
: les procédures de l'environnement 36 sont consignées pour cet :
: utilisateur. :
: :
: *CREATE :
: Des postes d'audit sont envoyés lorsque des objets sont créés par :
: cet utilisateur. :
: :
: *DELETE :
: Des postes d'audit sont envoyés lorsque des objets sont supprimés :
: par cet utilisateur. :
: :
: : |
: :
: *JOBDTA :
: Audit de toutes les données de démarrage et d'arrêt de travail pour :
: cet utilisateur. :
: :
: *OBJMGT :
: Audit des modifications de gestion des objets effectuées par cet :
: utilisateur (un déplacement ou un changement de nom par exemple). :
: :
: *OFCSRV :
: Audit des modifications des services bureautiques effectuées par cet :
: utilisateur (sur le répertoire du système ou l'utilisation du :
: courrier OfficeVision/400 par exemple). :
: :
: *PGMADP :
: Audit des droits pour cet utilisateur obtenus via une adoption de :
: programme. :
: :
: *SAVRST :
: Audit des actions de sauvegarde et de restauration effectuées par :
: cet utilisateur. :
: : |
: :
: :
: *SECURITY :
: Audit des modifications de sécurité effectuées par cet utilisateur. :
: :
: *SERVICE :
: Audit de l'utilisation des outils de maintenance du système (SST) :
: par cet utilisateur. :
: :
: *SPLFDTA :
: Audit des opérations sur les fichiers spoule effectuées par cet :
: utilisateur. :
: :
: *SYSMGT :
: Audit de l'utilisation des fonctions de gestion du système par cet :
: utilisateur. :
..............................................................................
Mise en place 1/ création d'un récepteur de journal
2/ création d'un journal QAUDJRN dans QSYS
3/ renseignement des valeurs système QAUDCTL et QAUDLVL
4/ CHGOBJAUD et CHGUSRAUD , puis DSPJRN pour analyse .... |
Créer un récepteur de journal (CRTJRNRCV)
Indiquez vos choix, puis appuyez sur ENTREE.
Récepteur de journal . . . . . . AUDITRCV Nom
Bibliothèque . . . . . . . . . *CURLIB Nom, *CURLIB
ID pool mémoire secondaire . . . *LIBASP 1-16, *LIBASP
Seuil d'alerte du récepteur . . *NONE 1-1919999, *NONE
Texte 'descriptif' . . . . . . . Récepteur pour journal d'audit
Fin
F3=Exit F4=Invite F5=Réafficher F10=Autres paramètres F12=Annuler
F13=Mode d'emploi invite F24=Autres touches |
Créer un journal (CRTJRN)
Indiquez vos choix, puis appuyez sur ENTREE.
Journal . . . . . . . . . . . . QAUDJRN Nom
Bibliothèque . . . . . . . . . QSYS Nom, *CURLIB
Récepteur de journal . . . . . . AUDITRCV Nom
Bibliothèque . . . . . . . . . *LIBL Nom, *LIBL, *CURLIB
*LIBL
ID pool mémoire secondaire . . . *LIBASP 1-16, *LIBASP
File att msg seuil d'alerte . . QSYSOPR Nom
Bibliothèque . . . . . . . . . *LIBL Nom, *LIBL, *CURLIB
Texte 'descriptif' . . . . . . . journal d'audit
Fin
F3=Exit F4=Invite F5=Réafficher F10=Autres paramètres F12=Annuler
F13=Mode d'emploi invite F24=Autres touches |
Gestion des valeurs système
Système: S4409790
Afficher à partir de . . Premiers caractères valeur système
Sous-ensemble par type *SEC F4 pour liste
Indiquez vos options, puis appuyez sur ENTREE.
2=Modifier 5=Afficher
Valeur
Option système Type Description
QALWUSRDMN *SEC Admission objets domaine utilisateur dans biblio
5 QAUDCTL *SEC Contrôle d'audit
QAUDENDACN *SEC Action d'arrêt d'audit
QAUDFRCLVL *SEC Forçage des données d'audit
QAUDLVL *SEC Niveau d'audit de sécurité
QCRTAUT *SEC Droits publics par défaut pour objets créés
QCRTOBJAUD *SEC Audit pour objets créés
A suivre...
Commande
===>
F3=Exit F4=Invite F5=Réafficher F9=Rappel F11=Noms seuls
F12=Annuler |
Valeur système
Valeur système . . . . : QAUDCTL
Description . . . . . : Contrôle d'audit
Contrôle
audit
*OBJAUD (objet par objet)
*AUDLVL (profil par profil)
Fin
Appuyez sur ENTREE pour continuer.
F3=Exit F12=Annuler |
Gestion des valeurs système
Système: S4409790
Afficher à partir de . . Premiers caractères valeur système
Sous-ensemble par type *SEC F4 pour liste
Indiquez vos options, puis appuyez sur ENTREE.
2=Modifier 5=Afficher
Valeur
Option système Type Description
QALWUSRDMN *SEC Admission objets domaine utilisateur dans biblio
QAUDCTL *SEC Contrôle d'audit
QAUDENDACN *SEC Action d'arrêt d'audit
QAUDFRCLVL *SEC Forçage des données d'audit
5 QAUDLVL *SEC Niveau d'audit de sécurité
QCRTAUT *SEC Droits publics par défaut pour objets créés
QCRTOBJAUD *SEC Audit pour objets créés
A suivre...
Commande
===>
F3=Exit F4=Invite F5=Réafficher F9=Rappel F11=Noms seuls
F12=Annuler |
Valeur système
Valeur système . . . . : QAUDLVL
Description . . . . . : Niveau d'audit de sécurité
Options Options
audit audit
*AUTFAIL *SERVICE
*CREATE *SPLFDTA
*DELETE *SYSMGT
*JOBDTA
*OBJMGT
*OFCSRV
*PGMADP
*PGMFAIL
*PRTDTA
*SAVRST
*SECURITY
Fin
Appuyez sur ENTREE pour continuer.
F3=Exit F12=Annuler |
Gestion des valeurs système
Système: S4409790
Afficher à partir de . . Premiers caractères valeur système
Sous-ensemble par type *SEC F4 pour liste
Indiquez vos options, puis appuyez sur ENTREE.
2=Modifier 5=Afficher
Valeur
Option système Type Description
QALWUSRDMN *SEC Admission objets domaine utilisateur dans biblio
QAUDCTL *SEC Contrôle d'audit
QAUDENDACN *SEC Action d'arrêt d'audit
QAUDFRCLVL *SEC Forçage des données d'audit
QAUDLVL *SEC Niveau d'audit de sécurité
QCRTAUT *SEC Droits publics par défaut pour objets créés
5 QCRTOBJAUD *SEC Audit pour objets créés
A suivre...
Commande
===>
F3=Exit F4=Invite F5=Réafficher F9=Rappel F11=Noms seuls
F12=Annuler |
Valeur système
Valeur système . . . . : QCRTOBJAUD
Description . . . . . : Audit pour objets créés
Option d'audit . . . . . . . : *NONE *NONE
*USRPRF
*CHANGE
*ALL
Appuyez sur ENTREE pour continuer.
F3=Exit F12=Annuler |
Modifier l'audit d'objet (CHGOBJAUD)
Indiquez vos choix, puis appuyez sur ENTREE.
Objet . . . . . . . . . . . . . *all Nom, générique*, *ALL
Bibliothèque . . . . . . . . . af400 Nom, *LIBL, *USRLIBL...
Type d'objet . . . . . . . . . . *all *ALL, *ALRTBL, *AUTHLR...
Valeur d'audit d'objet . . . . . *usrprf *NONE, *USRPRF, *CHANGE, *ALL
Fin
F3=Exit F4=Invite F5=Réafficher F12=Annuler F13=Mode d'emploi invite
F24=Autres touches |
Modifier audit d'utilisateur (CHGUSRAUD)
Indiquez vos choix, puis appuyez sur ENTREE.
Profil utilisateur . . . . . . . TOTO Nom
+ si autres valeurs
Valeur d'audit d'objet . . . . . <<< *SAME, *NONE, *CHANGE, *ALL
Audit des actions utilisateur . <<< *SAME, *NONE, *CMD...
+ si autres valeurs
Fin
F3=Exit F4=Invite F5=Réafficher F12=Annuler F13=Mode d'emploi invite
F24=Autres touches |
en règle générale ne démarrer que ce qui est
utile
- pour tous les services SNA voyez CHGNETNA , particulèrement :
- pour IP soyez vigilant et ne démarrez pas (ou sous contrôle)
:
- ROUTED si vous ne vous en servez pas (protocole RIP)
- REXECD (comandes à distance)
- DDM sur IP qui lui aussi permet de passer des commandes à distance
- Surtout ne démarrer par DDM sur IP avec le paramètre
PWDRQD(*NO) sur la commande CHGDDMTCPA
- INETD (le serveur qui démarre ECHO, DAYTIME et autres services
assez inutiles sur AS)
- Attention avec NFS qui utilise les RPC (remote procédures call)
très prisées des HACKERS si vous êtes sur le NET
- avec client access express, vous pouvez utiliser l'administration d'application
:
Vous définissez fonction de client acces (Operation navigator compris) par fonction , qui a le droit de les utiliser.
et cela à deux niveaux, Premièrement, les droits par défaut
:

vous indiquez 1/ pour operation navigator 
2/ pour les applications client access, les droits par défaut

pour indiquer des droits individuels, prenez l'option "utilisateurs et
groupe", pour l'utilisateur concerné, choisissez "propriété".
puis fonctions
Indiquez alors quelles sont les fonctions pour lesquelles, cet utilisateur
ne respecte pas la règle générale.

Si vous souhaitez aller plus loin, voyez les points d'exit
Registration Facility
Nouvelles fonction de l'OS permettant d'associer à une fonction logiciel un pgm de contrôle entreprise chargé de valider une action.
DEUX NOTIONS :
- Exit POINT : association d'un point d'appel de programme à une action logiciel.
ce point d'appel est nommé sur 20 caractères.
Exemple : QIBM_QPWSF_File_Serveur la fonction serveur de fichier de Client/Access est reconnue, il est possible de lui associer un pgm de validation.
- Exit program : programme associé à un point d'exit. l'écriture est à votre charge
il reçoit deux paramètres 1/ 1 alpha renvoyé par le programme '0' = refus '1' = validation 2/ données reçues (description suivant le format)
- Commandes : WRKREGINF (ADDEXITPGM / RMVEXITPGM)
Attributs du réseau
Système: S4409790
Nombre maximal d'étapes . . . . . . . . . . . . : 16
Accès aux demandes DDM . . . . . . . . . . . . . : *OBJAUT
Accès aux demandes Client Access . . . . . . . . : *REGFAC <--
Type du réseau RNIS par défaut . . . . . . . . . :
Liste de connexion RNIS par défaut . . . . . . . : QDCCNNLANY
Support ANYNET admis . . . . . . . . . . . . . . : *NO
Domaine du serveur de réseau . . . . . . . . . . : S4409790
########################################################################
# #
# Pour utiliser ces concepts avec Client/Access vous devez saisir : #
# CHGNETA PCSACC(*REGFAC) #
# #
# ce qui permet d'avoir un pgm de contrôle par fonction #
# (et non un pgm général comme en V2R30) #
# #
######################################################################## Fin
Appuyez sur ENTREE pour continuer.
F3=Exit F12=Annuler |
Work with Registration Info (WRKREGINF)
Indiquez vos choix, puis appuyez sur ENTREE.
Exit point . . . . . . . . . . . EXITPNT *REGISTERED
Exit point format . . . . . . . FORMAT *ALL
Output . . . . . . . . . . . . . OUTPUT *
#########################################################################
# #
# Puis utilisez WRKREGINF qui affiche tous les points d'exit définis. #
# #
#########################################################################
Fin
F3=Exit F4=Invite F5=Réafficher F12=Annuler F13=Mode d'emploi invite
F24=Autres touches |
Work with Registration Information
Type options, press Enter.
5=Display exit point 8=Work with exit programs <--
Exit
Exit Point
Opt Point Format Registered Text
QIBM_QHQ_DTAQ DTAQ0100 *YES Original Data Queue Server
QIBM_QLZP_LICENSE LICM0100 *YES Original License Mgmt Server
QIBM_QMF_MESSAGE MESS0100 *YES Original Message Server
QIBM_QNPS_ENTRY ENTR0100 *YES Network Print Server - entry
QIBM_QNPS_SPLF SPLF0100 *YES Network Print Server - spool
QIBM_QOE_OV_USR_ADM UADM0100 *YES OfficeVision/400 Administrati
QIBM_QOK_SUPPLIER SUPL0100 *YES System Directory Supplier Exi
QIBM_QOK_VERIFY VRFY0100 *YES System Directory Verify Exit
8 QIBM_QPWFS_FILE_SERV PWFS0100 *YES File Server
QIBM_QRQ_SQL RSQL0100 *YES Original Remote SQL Server
A suivre...
Command
===>
F3=Exit F4=Prompt F9=Retrieve F12=Cancel |
Work with Exit Programs
Exit point: QIBM_QPWFS_FILE_SERV Format: PWFS0100
Type options, press Enter.
1=Add 4=Remove 5=Display 10=Replace
Exit
Program Exit
Opt Number Program Library
1
(No exit programs found.)
##########################################################################
# #
# Sur cet écran 1 = ADDEXITPGM : ajout d'un pgm d'exit #
# 4 = RMVEXITPGM : retrait d'un pgm d'exit #
# #
########################################################################## Fin
Command
===>
F3=Exit F4=Prompt F5=Refresh F9=Retrieve F12=Cancel |
Quelques précisions :
un point d'exit peut avoir plusieurs "formats".
il s'agit de la définition de plusieurs actions pouvant être réalisées
par la même fonction.
exemple du point d'exit QIBM_QZDA_NDB1 serveur de données (ODBC)
format ZDAD0100 : gestion de la base (CREATE, DROP, etc...)
ZDAD0200 : Gestion de la liste de bibliothèques (ADDLIBLE)
chaque format définit la structure des données envoyées au pgm.
pour connaitre le détail d'un format voir la documentation
SC41-374 : "OS/400 server concept and administration "
Ci-dessous, un exemple :
|
PGM PARM(&APPLI &WUSER &USERLG +
&WPWD &PWDLG +
&WADR &ADRLG +
&CODERETOUR +
&PROFIL &PASSWORD &CURLIB)
DCL VAR(&APPLI) TYPE(*CHAR) LEN(4)
DCL VAR(&WUSER) TYPE(*CHAR) LEN(50)
DCL VAR(&USERLG) TYPE(*CHAR) LEN(4)
DCL VAR(&WPWD) TYPE(*CHAR) LEN(50)
DCL VAR(&PWDLG) TYPE(*CHAR) LEN(4)
DCL VAR(&WADR) TYPE(*CHAR) LEN(50)
DCL VAR(&ADRLG) TYPE(*CHAR) LEN(4)
DCL VAR(&CODERETOUR) TYPE(*CHAR) LEN(4)
DCL VAR(&PROFIL) TYPE(*CHAR) LEN(10)
DCL VAR(&PASSWORD) TYPE(*CHAR) LEN(10)
DCL VAR(&CURLIB) TYPE(*CHAR) LEN(10)
DCL VAR(&USER) TYPE(*CHAR) LEN(10)
DCL VAR(&POS) TYPE(*DEC) LEN(3 0)
/*********************************************************************/
/*QIBM_QTMF_SVR_LOGON : serveur FTP */
/* */
/*Format TCPL0100 : - APPLICATION 1 = FTP */
/* - IDENTIFIANT */
/* - LG DE IDENTIFIANT */
/* - MOT DEPASSE */
/* - LG DE MOT DE PASSE */
/* - ADRESSE IP */
/* - LG DE ADRESSE IP */
/* EN RETOUR */
/* - CODE RETOUR 0 = 1 REJET */
/* >0 = OK */
/* - PROFIL A UTILISER */
/* - MOT DE PASSE A UTILISER */
/* - CURLIB A UTILISER */
/* */
/*********************************************************************/
/* EXTRACTION */
CHGVAR &POS %BIN(&USERLG)
CHGVAR &USER %SST(&WUSER 1 &POS)
/* TEST DU PROFIL */
IF (&USER = 'QUSER') (DO)
CHGVAR %bin(&CODERETOUR) 0
SNDMSG MSG('FTP : connexion QUSER refusée !') +
TOUSR(*SYSOPR)
ENDDO
ELSE (CHGVAR %bin(&CODERETOUR) 1)
ENDPGM |
Dernier point le filtrage IP permettant de définit (adresse IP par adresse
IP) qui a le droit d'utiliser ceratins services IP
(le test se fait sur le n° de port)
ATTENTION
TOUT CE QUI n'est pas EXPLICITEMENT autorisé est INTERDIT (automatiquement)
Le filtrage IP lit vos règles dans L'ORDRE DE SAISIE.
(si vous êtes trompé, passez à la console RMVTCPTBL
*IPFTR qui enlève tous les filtres)
VOUS DEVEZ prévoir les services autorisés en entrée/sortie.
+ prenons le WEB, naturellement tout le monde pense à autoriser en sortie, les ports source > 1023 (client) vers 80 (serveur www).
mais il faut aussi prévoir en entrée (les réponses) de 80 vers
> à 1023.
pour cela on peut tester sur TCP, s'il s'agit de la première trame (demande de connexion), ou d'une autre trame (dialogue déja établit)
Si vous êtes connectés directement sur le NET, il est conseillé, de COMMENCER vos filtres par :
direction ! port-src ! port-cible ! protocole ! accord/refus !
------------------------------------------------------------------!
entrée ! * ! >1023 ! tcp/start ! refus !
ATTENTION, client access utilise les ports 6000 pour ses serveurs en IP.
Si vous acceptez une connexion sur un port > 1023, vous acceptez de fait
les transferts de fichiers, l'utilisation d'operation navigator, ...
ce qui permet de placer ensuite :
direction ! port-src ! port-cible ! protocole ! accord/refus !
------------------------------------------------------------------!
entrée ! * ! >1023 ! tcp/start ! refus !
sortie ! >1023 ! 80 ! tcp ! accord !
entrée ! 80 ! >1023 ! tcp ! accord !
et ainsi de suite pour tous les services que vous souhaitez autoriser
(SMTP, TELNET, DNS, ICMP (Ping et tracert), HTTPS, ...)
|
FTP est un cas plus complèxe à gérer.
1/ il utilise deux ports 21 pour le mode commande
20 pour le transfert de données
2/ FTP traditionellement utilise le scénario suivant :
le client se connecte (port > 1023) sur le port 21
on peut gérer par :
direction ! port-src ! port-cible ! protocole ! accord/refus !
------------------------------------------------------------------!
sortie ! >1023 ! 21 ! tcp ! accord !
entrée ! 21 ! >1023 ! tcp ! accord !
mais le client s'alloue un deuxième n° de port alléatoire (> 1023) et
demande au serveur de LE contacter sur ce port (commande PORT).
cas typique d'une connexion en entrée sur un port > 1023.
|
la seule solution acceptable est d'utiliser un FTP en mode passif
- le début de connexion est le même (sur le port 21)
- mais le client utilise la commande FTP PASV (et non port) demandant au
serveur de choisir un n° de port aléatoire (> 1023) pour le canal data.
- c'est alors le client qui initialisera cette deuxieme connexion.
L'AS/400 essai le mode passif, s'il recoit une erreur, il envoi alors la
commande PORT
DNS :
+ port d'écoute 53, port client > 1023
en fait la règle est la suivante :
source >1023, cible = 53 ==> client vers serveur (et inversement)
source = 53 , cible = 53 ==> serveur DNS à serveur DNS
|
Nous avons implémenté les règles suivantes :
direction ! port-src ! port-cible ! protocole ! accord/refus !
------------------------------------------------------------------!--------
entrée ! * ! >1023 ! tcp/start ! refus !
sortie ! >1023 ! 80 ! tcp ! accord ! http
entrée ! 80 ! >1023 ! tcp ! accord !
sortie ! >1023 ! 443 ! tcp ! accord ! https
entrée ! 443 ! >1023 ! tcp ! accord !
sortie ! >1023 ! 25 ! tcp ! accord ! smtp
entrée ! 25 ! >1023 ! tcp ! accord !
* ! 53 ! 53 ! udp ! accord !dns/dns
sortie ! >1023 ! 53 ! udp ! accord !host/dns
entrée ! 53 ! >1023 ! udp ! accord !
sortie ! >1023 ! 21 ! tcp ! accord !ftp/cde
entrée ! 21 ! >1023 ! tcp ! accord !
sortie ! >1023 ! >1023 ! tcp ! accord !ftp/data
entrée ! >1023 ! >1023 ! tcp ! accord !ftp/data
* ! * ! * ! icmp ! accord ! ping
* = colonne non testée.
|
pour implémenter ces règles :
a/ (optionnel) attribuez des noms symboliques aux services
+ indiquez un protocole
port source / port cible pour TCP
b/ définissez des règles, avec les élements suivants
- un nom symbolique à la règle
- une direction
- des adresses (entrante/sortante)
- journalisation oui/non
- un service : en indiquant + soit un nom symbolique ( vu en a/ )
+ soit un protocole
(port source / port cible)
c/ attibuez à une interface des filtres
en indiquant, dans le bon ordre , les noms des règles vues en b/.
|


Nouveautés SMTP et messagerie en V4R50
Apport de la V4R50 en ce qui concerne SMTP
(certaines de ces fonctionnalités sont disponibles en V4R40 vai PTF)
Utilisation d'un FIREWALL :
indiquez MAILROUTEUR(adresse-ip) si vous utilisez un relai de messagerie
(host dans la DMZ qui retransmet les messages pour vous)
indiquez aussi FIREWALL(*YES) si ce relai de messagerie est un FIREWALL
ces paramètres sont obligatoire si vous utilisiez le FIREWALL sur IPCS.
ces deux paramètres étaient déja disponibles en V4R40.
|
le paramètre RTYRMTSVR(*YES) est nouveau, il permet de demander à ce que
l'on réessaie de trouver le serveur si on ne le trouve pas la 1ère fois.
vous envoyez un message à info@volubis.fr
et soit la DNS de volubis.fr, soit le serveur de messagerie ne répondent
pas, il est possible de réessayer plus tard.
les paramètres RTYMIN(), RTYHOUR() et RTYDAY() permettent d'indiquer le
nombre de tentatives.
RTYMIN(3 5) indique que l'on réessaie 3 fois à 5 minutes d'intervalle.
RTYHOUR(2 4) indique que l'in essaie deux fois à 4 heures d'intervalle
si RTYMIN a échoué.
RTYDAY(2 2) indique un réessai au bout de deux jours (et deux fois) si
RTYMIN et RTYHOUR ont échoué.
|
le paramètre DIALSCD est nouveau, il permet de demander à ce que l'on
utilise une liaison sur RTC (PPP ou SLIP) afin de connecter le
serveur de messagerie local à une messagerie externe.
(probablement chez un fournisseur d'accès)
DIALCDS(*no) désactive cette fonctionnalité
DIALSCD(*YES profilPPP 120)
Indique que le planificateur de mail doit démarrer en même temps que SMTP
(il s'agit d'un JOB à part)
il effectue alors un connexion RTC en utilisant "profilPPP" qui est le
nom d'un profil de connexion PPP (voir ce cours) et envoi tous les mails
en attente.
puis il attend 2 heures (120 minutes) et recommence.
|
Une fonction anti-spaming a été ajoutée à SMTP en V4R50.
pour l'implémenter il vous faut créer un fichier source :
CRTSRCPF QUSRSYS/QTMSADRLST CCSID(500)
pour n'accepter que certaines adresse ip en origine SMTP
créez un membre ACCEPTRLY
puis par SEU ajoutez des lignes "adresse-ip masque"
10.3.10.10 255.255.255.255 -> indique que seule l'origine 10.3.10.10
est admise.
10.3.0.0 255.255.0.0 -> indique que toute adresse commencant
par 10.3.* est admise.
les lignes peuvent être multiples.
|
pour refuser certaines adresse ip douteuses:
créez un membre REJECTNN
puis par SEU ajoutez des lignes "adresse-ip masque"
192.168.0.0 255.255.0.0 -> indique que tout ce qui vient de 192.168*
doit être refusé.
Bind IP :
Vous pouvez demander à SMTP de ne travailler que sur certaines adresses IP
-pour les utilisateurs de DOMINO sur AS/400, celui-ci possédant déja
un serveur SMTP.
-pour choisir avec quelle adresse IP les mails vont partir.
(cas du multihomming)
il vous faut installer les PTFs SF60787 + SF60764 pour une V4R40
SF60827 + SF61136 pour une V4R50.
|
Pour la fonction serveur :
créez une dataarea de 16 de long contenant l'adresse ip serveur
CRTDTAARA QUSRSYS/QTMSSBNDIP type(*char) len(32) value('xxx.xxx.xxx.xxx')
le serveur SMTP n'écoute plus que sur cette adresse ip.
(les autres peuvent donc être utilisées par NOTES/DOMINO)
Pour la fonction cliente (émission) :
créez une dataarea de 16 de long contenant l'adresse ip serveur
CRTDTAARA QUSRSYS/QTMSCBNDIP type(*char) len(32) value('xxx.xxx.xxx.xxx')
le serveur SMTP utilise cette adresse ip lors des envois.
d'autre part,
la paramètre PCTRTGCHR(*YES) demande à ce que SMTP (comme NOTES) considère
le caractère % comme un caractère de routage.
|
et enfin une autre fonctionnalité est en cours d'écriture (APAR SA90552)
le filtrage SMTP permettant d'éviter les virus majeurs (connus)
il faut créer un fichier QUSRSYS/QATMVRSLST
puis ajouter 4 membres :
+ FTRORIGIN : permet de filtrer suivant l'émetteur.
+ FTRSUBJECT: filtre sur le contenu du sujet.
+ FTRFILNAM : sur le nom du fichier attaché.
+ FTRTYPE : sur le type/sous-type mime du fichier attaché.
une dataarea (QUSRSYS/QTMSVRSCHK) active ou non cette fonctionalité :
- 'D' filtre et détruit le mail
- 'K' filtre et conserve (keep) le mail dans /QTCPTMM/FTRFILES
- 'N' ne filtre pas. (à suivre...)
|
©AF400