Newsgroup: it.comp.retrocomputing
Titolo: [OT] OpenVMS TCP/IP servers

Dove si cambia la porta cui rispondono ftp e telnet server (OpenVMS)?
Devo aprire un po' di porte sul router, 23 e 21 sono già impegnate da un 
server Linux, e devo cambiar porte all'Alpha (che ha trovato, finalmente) 
la sua collocazione operativa in camera, dopo un pomeriggio di misure e 
spostamenti... :)
Già che ci sono: ho bisogno di un consiglio per la configurazione di un 
utente guest, con impostazioni di sicurezza "paranoid" :P
E per concludere, per l'ascii art iniziale, per gli utenti posso mettere 
un comando type nomefile.txt nel 
login.com
, ma per averne uno alla 
connessione telnet ?

 spostamenti... :)
Che router hai?
Sui Linksys c'é la possibilità del Single Port Forwarding!
Esempio:
Porta esterna 35 - porta interna 23 -> IP 192.168.x.y
-- 
#include <std.disclaimer.h>
Signature automatica inserita a mano.
In God we trust, all others we monitor.(NSA)
Punteggiatura: Nel caso mancasse nel messaggio, aggiungete!!

 utente guest, con impostazioni di sicurezza "paranoid" :P
Guest bloccati ed hai risolto! ;-)
Guest chrooted con soli permessi di lettura??


 Porta esterna 35 - porta interna 23 -> IP 192.168.x.y
Me ne ero dimenticato :)
La domenica è un brutto giorno :P
Ho un D-Link, ed anch'esso supporta il single port forwarding...

 Guest chrooted con soli permessi di lettura??
Guest su OpenVMS, ovviamente :)
Per il momento, niente guest disponibili, solo io sono disponibile :P

 connessione telnet ?
Niente TYPE in giro. Vai a vedere dentro 
SYSTARTUP_VMS.COM
 le definizioni di
SYS$ANNOUNCE e SYS$WELCOME. In entrambi i casi puoi specificare sia un
messaggio monoriga direttamente l� sia un file da cui attingere pi� roba. :)
Ciao,
G.

 qualche dettaglio in più. :)
Attiverei volentieri l'utente guest con le relative quote su di un altro 
disco, ma sull'Alpha già ce ne sono due, uno con OpenVMS (4GB) ed uno con 
Tru64 (1GB). Dovrei mettere un box esterno, però c'è già abbastanza 
confusione ...

 utenti guest l'uso del TCP/IP.
ricevendo un messaggio del tipo:
%TCPIP-E-FTP_NETERR, I/O error on network device
-SYSTEM-F-NOPRIV, insufficient privilege or object protection violation

 confusione ...
Il problema delle quote sul system disk è molto semplice: se uno degli
account di sistema, cioè gli UIC [1,1] e [1,4] (quest'ultimo corrispondente
a SYSTEM), finisce fuori quota, c'è il rischio che il sistema abbia problemi
anche seri di funzionamento perché impossibilitato a scrivere sul disco.
Tutti i processi di sistema dovrebbero avere il privilegio EXQUOTA che
permette di sforare la quota assegnata, ma è meglio non scherzare col fuoco.
Il modo per evitare problemi è abbastanza semplice: basta concedere a quegli
UIC una quota superiore al totale della capacità del disco, così potrebbero
potenzialmente riempire tutto il disco prima di finire fuori quota.
Le quote si attivano per disco, non per nodo, quindi puoi avere un disco con
le quote attive e uno senza. Un disco senza quote è scrivibile da qualunque
utente (salvo permessi, privilegi e ACL varie), un disco con le quote è
scrivibile solo dagli utenti presenti nel file delle quote e che non abbiano
superato la quota assegnata (in caso contrario l'errore è EXDISKQUOTA).
Nel file delle quote (QUOTA.SYS) c'è un record per ogni UIC che può scrivere
su quel disco, più un record per l'UIC fittizio [0,0] che registra le quote
di default da assegnare agli altri UIC in mancanza di specifici valori.
Quando si attivano le quote il file è vuoto, quindi come prima cosa bisogna
popolarlo con tutti gli UIC esistenti e assegnare loro le giuste quote. C'è
l'apposito comando REBUILD che inserisce nel file ogni UIC che trova sul
disco e gli assegna le quote di default indicate per l'UIC [0,0]. Visto che
si tratta del system disk, bisognerà assegnare a [0,0] delle quote maggiori
o uguali rispetto alle dimensioni del disco e poi popolare il file. Così
facendo gli UIC [1,1] e [1,4] in particolare avranno le quote giuste. Poi si
potrà procedere a ridurre (o eliminare) le quote a specifici UIC.
Per ogni UIC ci sono due quote, una permanente che indica il numero massimo
di blocchi allocabili sul disco e una di overdraft che indica di quanti
blocchi si può eccedere quando si va in aggiunta a un file esistente. Il
motivo di questa seconda quota è semplice: per esempio, se durante l'editing
di un file si supera la quota permanente e non ci fosse l'overdraft, si
dovrebbero perdere tutte le aggiunte fatte, invece così è permesso salvare.
Quindi:
$ SHO DEV /FULL DKA0:
 .
 .
 .
 Reference count               92    Default buffer size                 512
 Total blocks             8813870    Sectors per track                   151
 .
 .
 .
$ RUN SYS$SYSTEM:DISKQUOTA
DISKQ>
DISKQ> CREATE
DISKQ> SHOW *
     UIC          Usage        Permanent Quota   Overdraft Limit
[0,0]             0            1000              100
DISKQ> MODIFY [0,0] /PERM=8814000 /OVER=1000
DISKQ> REBUILD
DISKQ> SHOW *
     UIC          Usage        Permanent Quota   Overdraft Limit
[0,0]             0            8814000           1000
 .
 .
 .
[1,1]             47894        8814000           1000
[SYSTEM]          1042300      8814000           1000
 .
 .
 .
DISKQ> MOD [GUEST] /PERM=20000
DISKQ> EXIT
$ SHOW QUOTA
  User [USERS,RPT] has 96558 blocks used, 8717442 available,
  of 8814000 authorized and permitted overdraft of 1000 blocks on SYS_USERS
$ SHOW QUOTA /USER=GUEST
  User [GUEST] has 246 blocks used, 19754 available,
  of 20000 authorized and permitted overdraft of 1000 blocks on SYS_USERS
Tutto qui. Poiché le quote sono per disco, DISKQUOTA agisce sul disco di
default del processo, come specificato con il solito SET DEF. Se si vuole
lavorare su un altro disco senza modificare il proprio default, c'è il
comando USE per dire a DISKQUOTA su quale disco lavorare. Allo stesso modo
c'è /DISK per il comando DCL SHOW QUOTA. Ovviamente al prompt DISKQ> c'è
anche HELP. Per quanto riguarda REBUILD, se il disco è molto pieno ci
potrebbe mettere anche qualche decina di secondi per conteggiare tutto.
Ciao,
G.
P.S. i manuali più recenti dicono che DISKQUOTA è deprecato e che si
dovrebbe fare tutto da SYSMAN, ma il risultato è identico e con il buon
vecchio DISKQUOTA c'è anche meno da scrivere. SYSMAN per questo ha senso
solo in ambienti cluster complessi (cfr. MCR SYSMAN HELP DISKQUOTA).



Esattamente. E si tratta di una soluzione molto robusta perché agisce a
livello di rete, non a livello di singola applicazione. Altrimenti qualcuno
potrebbe "paracadutare" dentro una directory dell'account guest un piccolo
client FTP (per esempio), magari in forma di sorgente, con cui collegarsi
all'esterno per recuperare altro materiale. Qui in pratica si tratta di una
ACL sui socket, indipendente e immune dal software utilizzato. :P
Ciao,
G.