El prompt és el lloc de la interfície d'usuari on es poden introduir comandes perquè el sistema les executi. Si ha iniciat una sessió al NSS (local o remota) podrà observar que el prompt mostra el nom del host local seguit del caràcter '#'. Aquest caràcter indica que
l'usuari té privilegis d'administrador al sistema.
Per mostrar l'ajuda (amb anglès) de la
interfície d'usuari ha d'introduir al prompt:
#help
? display help on given or available commands
<TAB> auto-completion
<cr> execute command line
CTRL-P recall previous input line
CTRL-N recall next input line
<any> treat as input character
Les comandes que suporta el sistema NSS estan organitzades de forma jeràrquica. Cada comanda forma un arbre amb les opcions que pot oferir a l'usuari. L'arrel d'aquest arbre és la comanda les branques són els atributs (o opcions) de la comanda i les fulles el valor. Aquesta estructura permet navegar pels diferents paràmetres de configuració del sistema i posteriorment ajustar-los.
S'ha de dir que en algunes comandes el valor o bé l'atribut i valor són inexistents, aquest es el cas de comandes senzilles del sistema com exit i quit, d'altra banda comades com ara set i del , reflecteixen perfectament l'estructura d'arbre mencionada.
A continuació es mostren 2 exemples de la comanda set amb el seu arbre associat :
#set net_filter enable
#set netfilter groups group name gruptreball
|

Il·lustració 1 : Exemple de l'arbre de comandes
|
Les comandes suportades
pel NSSOS es poden classificar en els següents tipus segons la
seva funció :
- set
- del
- commit
- erase
- load
- save
- ls
- debug
- shutdown
- ping
- traceroute
- quit
- modules
- date
Aquesta és una característica molt important de la interfície d'usuari. L'autocompletat és molt útil
en el cas que hagi d'executar comandes amb opcions llargues ja que permet navegar fàcilment per l'arbre de comandes de manera que no cal recordar la sintaxi exacta de cada comanda. NSSOS ens la recorda i autocompleta si pot.
La tecla que permet realitzar l'autocompletat és la tecla <TAB> (tabulador). Si inicialment l'executa a la interfície d'usuari li mostrarà les possibles comandes que pot introduir a la consola. Una vegada escrita la comanda al prompt si torna a pitjar <TAB> i el sistema solament pot determinar
una opció per l'atribut de la comanda llavors completarà amb el valor pertinent, en cas contrari es mostraran els diferents atributs que permet la comanda .
Una altra manera d'autocompletar és escriure el
caràcter/s amb el/s qual pensa que pot començar l'atribut o la comada i teclejar <TAB>,en aquest cas NSSOS li mostrarà totes les possibles opcions que existeixen per formar correctament la comanda i posteriorment poder executar-la. De la mateixa manera si només existeix una opció possible aquesta s'autocompletarà.
A continuació es mostra lo anteriorment exposat a través d'un exemple.
Suposi que vol executar la comanda 'set interfaces eth0
enable'. No es preocupi de la funcionalitat aquesta comanda, en els següents capítols aprendrà a utilitzar aquesta i altres comandes.
El fet és que no recorda la sintaxi de la comanda. Llavors si tecleja al prompt <tab>:
#<tab>
El sistema li mostra el següent :
help
show
set
..
..
Aquest llistat són les comandes que el sistema permet executar. Com que vol modificar un valor de configuració recorda que la paraula inicial és set, seguidament introdueix al prompt :
#set <tab>
El sistema li mostra :
system
interface
ip_route
name_servers
pptp_server
pop3_server
pop3_proxy
ipsec_server
mail_collection
mail_server
mail_filter
modules
net_filter
address_translation
Com pot observar el sistema mostra tots els atributs que formen l'arbre de la comanda set, seguidament pot deduir que interface era el camp que necessitava, si introdueix a la interfície d'usuari :
#set in<tab>
Observarà que NSSOS autocompleta el camp:
#set interface
Si ara introdueix :
#set interface<tab>
Observarà que NSSOS autocompleta la cadena 'eth', això es degut a que les possibles opcions per la comanda coincideixen els tres caràcter esmentats.
#set interface eth
Finalment si torna a prémer <tab> :
#set interface eth<tab>
Observarà que se li mostren els possibles atributs d'aquest nivell de l'arbre :
eth0
eth1
eth2
eth3
Si vol modificar la interfície eth0 llavors introdueix un '0' al prompt per formar la comanda 'set interfaces eth0' i polsa <tab> :
#set
interfaces eth0<tab>
Veurà que se li
mostren els possibles atributs un nivell més amunt de l'arbre.
ip
mtu
slevel
disable
enable
description
Ara ja recorda que volia
habilitar la interfície eth0 i per això escriu :
#set
interface eth0 e<tab>
El sistema autocompleta la cadena 'enable', essent
aquesta la única que comença pel caràcter 'e' :
#set
interface eth0 enable
Si torna a polsar <tab>:
#set interface eth0 enable <tab>
El sistema li mostra :
set interface eth0 enable <cr>
Indicant que la comanda està completa i llesta per ser executada. En aquest cas 'enable' és el valor de la comanda. Un cop executada si tot ha anat bé el sistema retornarà un 'OK' o bé mostrarà algun error.
Amb els cursors (dreta,esquerra) o (dalt,baix) pot navegar per l'historial de les comandes que s'han executat al sistema. Si no disposa de cursors
CTL-P i CTRL-N faran el mateix efecte.
Per exemple suposi que ha executat la comanda 'set
interfaces eth0 enable' i vol deshabilitar la interfície. Llavors pot fer :
#(cursor a dalt)
El sistema li mostrarà automàticament al prompt:
#set interface eth0 enable
Ara ja pot modificar enable per :
#set interface eth0 d<tab>
Observarà que hi ha 2 opcions que comencen amb 'd' :
disable
description
Seguidament pot fer :
#set interface eth0 di<tab>
I observarà que s'autocompleta :
#set interface eth0 disable
Finalment pot executar la comanda :
#set interface eth0 disable <cr>
El sistema retorna 'OK'
Per tal que el sistema li mostri els possibles valors que pot introduir al prompt juntament amb una breu explicació dels mateixos (amb anglès) teclegi la tecla '?' al prompt del NSSOS.
Si per exemple vol llistar les comandes possibles a formar amb set:
#set <?>
El sistema retornarà:
system set system parameters
interface set interface parametres
ip_route set routing information
name_servers set resolver servers information
pptp_server set pptp server parametres
pop3_server set
pop3 server parameters
pop3_proxy set pop3 proxy parameters
ipsec_server set ipsec parameters
mail_collection set mail collection parametres
mail_server set mail server parametres
mail_filter set mail filter server parametres
modules set modules parametres
net_filter set net filter parametres
address_translation set nat parametres
Quan ha acabat d'introduir la comanda amb els seus atributs o valors es premerà <cr> (control) per executar-la. El sistema retornarà un 'OK' si tot ha anat bé o ens indicarà que ha hagut algun error.
A partir d'aquest moment les línies del manual que comencin amb '#' indicarà que és una comanda executada al prompt del NSSOS.
NSSOS treballa amb tres configuracions les quals en el moment d'iniciar el sistema coincideixen. Tot seguit es detallaran les característiques de cada una d'aquestes configuracions.
Aquesta configuració defineix la configuració del sistema i és la que s'obté a l'arrencar (o iniciar) el sistema.
És la configuració que l'usuari està editant o definint, és a dir una configuració temporal la qual quan l'usuari ho desitgi podrà traspassar a configuració de boot, configuració de run o ambdues anteriors.
En el cas que el
sistema s'apagui aquesta configuració es perdrà. En el moment que el sistema es torni a iniciar la configuració en memòria coincideix amb la configuració de run i configuració de boot.
#show configuration
v2.0 by eSOLIT
(C) 2002 esolit engineering, s.l.
Thu Sep 8 11:58:40 CEST 2005
11:58:40 up 1:47, 1 user, load average: 0.29, 0.06, 0.02
-------------------------------------------
system {
hostname NSS1T
domainname esolit.com
av_eng clamav
remote_syslog {
enabled
destination 10.0.0.6
mail enabled
auth enabled
authpriv enabled
emerg enabled
}
snmp {
disabled
community -
}
ips {
enabled
ban {
-
}
trusted {
-
}
}
...
...
No es preocupi sinó entén molts
dels paràmetres de configuració. En els següents capítols aprendrà a ajustar-los.
#show interfaces
interfaces {
eth0 {
description -
ip 62.0.0.1/24
mtu 1500
slevel 0
enabled
}
eth1 {
description -
ip 192.168.3.1/24
mtu 1500
slevel 0
enabled
}
La comanda show permet visualitzar la configuració en memòria de tots els subsistemes i serveis del NSS.
És la configuració que està activa actualment al sistema, és a dir la configuració real en que està funcionant el sistema i els seus serveis.
Si està dacord amb els paràmetres de la configuració en memòria del sistema (posteriorment s'explicarà
amb més detall tots aquests paràmetres) i vol traspassar la configuració
de memòria a la configuració de run executi:
#commit
Load configuration [ OK ]
commiting update system [ OK ]
commiting firewall [ OK ]
commiting network [ OK ]
commiting ipsecserver [ OK ]
commiting runnetfw [ OK ]
commiting mail collection [ OK ]
commiting pop server [ OK ]
commiting pop proxy [ OK ]
commiting pptp [ OK ]
commiting sendmail [ OK ]
commiting modules [ OK ]
Observarà que el sistema i els serveis del NSSOS es reengeguen amb la nova configuració, finalment (si tot ha anat correctament) el sistema li demanarà si també vol actualitzar la configuració de boot amb els mateixos paràmetres. La opció
per defecte que apareix és [n], és a dir “no traspassar”, NSSOS s'esperarà 5 segon i si no pitja [y] efectuarà l'acció per defecte.
Save configuration to boot (y/n)? [n]
WARNING: Configuration NOT SAVED
També pot actualitzar les dues configuracions citades anteriorment sense que existeixi confirmació per part de l'usuari amb :
#commit save
En determinades situacions quan executi un commit
pot interessar-li tornar a la configuració de run anterior si la cosa no va com s'esperava. El funcionament és el següent :
El sistema li pregunta si vol actualitzar la configuració de boot amb la configuració en memòria actual.
El sistema executa un commit.
El sistema s'espera 10 segons perquè l'usuari confirmi la nova configuració de run, si durant aquest període el sistema no rep cap confirmació llavors automàticament restableix la configuració de run anterior.
#commit roll-back
Aquesta variant del commit és interessant si sospita que es pot perdre la connectivitat amb el sistema NSS en la seva configuració en
memòria actual.
NSSOS permet guardar la configuració en memòria a suport físic, el màxim nombre de fitxers que es poden crear al sistema dependrà de la capacitat del disc dur del NSS.
#save configuration file_name conf
Aquesta opció és útil per fer còpies de seguretat de les configuracions.
Les següents comades permeten modificar el contingut de la configuració en memòria. Quan s'executen la configuració en memòria actual del sistema es sobreescrita i per lo tant eliminada.
Asseguri's de fer una còpia de seguretat de la configuració actual de memòria abans de realitzar alguna de les següents accions.
Aquesta opció permet recuperar una configuració anteriorment emmagatzemada en suport físic.
#ls disk
Size Date Name
5738 Aug 3 15:59 20050803-bootconf
5738 Aug 3 15:59 20050803-conf
5738 Aug 3 15:59 20050803-runconf
5847 Aug 8 12:43 20050808-bootconf
5849 Aug 8 12:43 20050808-conf
5847 Aug 8 12:43 20050808-runconf
5832 Aug 9 16:36 20050809-bootconf
5832 Aug 9 16:36 20050809-conf
5832 Aug 9 16:36 20050809-runconf
5768 Aug 10 17:11 20050810-bootconf
5768 Aug 10 17:11 20050810-conf
5768 Aug 10 17:11 20050810-runconf
5955 Aug 11 15:40 20050811-bootconf
#load file conf
#show configuration
#load run-configuration
#load boot-configuration
La configuració de fàbrica és la configuració del NSS quan l'ha arrencat per primera vegada i és caracteritza principalment per tenir una autenticació per defecte.
login: admin
password: admin
#erase configuration
erasing configuration will set fabric default config
Are you sure (y/n) [n] yerasing configuration. Reboot NSS to take efecte
El sistema li preguntarà si està dacord amb lo que vol fer , la opció per defecte és la que va entre '[ ]'. Si polsa 'y' ha de iniciar de nou el sistema si vol que els canvis en la configuració de boot tinguin efecte. Si realitza un commit després d'executar l'anterior comanda els canvis no tindran efecte quan torni a iniciar el sistema.
|
Il·lustració 2 : Resum del traspàs de configuracions
|
La configuració del sistema té un format tal que quan aquesta es mostra es pot arribar a saber la comanda completa (amb atributs i valors) a
utilitzar per la manipulació d'algun dels paràmetres de configuració del sistema. És a dir existeix relació entre l'arbre de comandes i el format de la
configuració.
A continuació es mostra a través d'un exemple la relació entre la configuració del NSS i l'arbre de comandes del mateix, en aquest exemple s'observen els atributs (o opcions ) del tallafocs en lletra negra i els valors en lletra verda.
#show net_filter
net_filter {
enabled
equals yes
default_forward {
protocol tcp port :53
protocol udp port :53
protocol icmp port :-
protocol tcp port :52
}
groups {
name gruptreball {
ip_member 192.168.3.0/24
}
}
Amb aquesta informació i sabent que la comanda del elimina un valor es possible construir una comanda tal que elimini valor 'gruptreball' :
#del net_filter groups name gruptreball
L'eliminació d'un valor que conté diversos atributs implica la poda de tota la branca de l'arbre ,així per exemple el cas anterior
implica l'eliminació de 'ip_member 192.168.3.0/24'.
Quan es mostra la configuració d'algun del serveis mitjançant la comanda show, abans de '--' poden aparèixer paràmetres Hardcoded. Aquests paràmetres no es poden modificar per l'usuari sinó que s'haurà de contactar amb Esolit Engineering S.L si es desitja una modificació dels mateixos.
Capitol 1 | Index | Tornar al començament | Capitol 3