draft-ietf-netmod-factory-default-07.txt | draft-ietf-netmod-factory-default-08.txt | |||
---|---|---|---|---|
NETMOD Working Group Q. Wu | NETMOD Working Group Q. Wu | |||
Internet-Draft Huawei | Internet-Draft Huawei | |||
Intended status: Standards Track B. Lengyel | Intended status: Standards Track B. Lengyel | |||
Expires: May 20, 2020 Ericsson Hungary | Expires: June 6, 2020 Ericsson Hungary | |||
Y. Niu | Y. Niu | |||
Huawei | Huawei | |||
November 17, 2019 | December 4, 2019 | |||
Factory Default Setting | Factory Default Setting | |||
draft-ietf-netmod-factory-default-07 | draft-ietf-netmod-factory-default-08 | |||
Abstract | Abstract | |||
This document defines a method to reset a server to its factory- | This document defines a method to reset a server to its factory- | |||
default content. The reset operation may be used, e.g., when the | default content. The reset operation may be used, e.g., when the | |||
existing configuration has major errors so re-starting the | existing configuration has major errors so re-starting the | |||
configuration process from scratch is the best option. | configuration process from scratch is the best option. | |||
A new factory-reset RPC is defined. When resetting a datastore, all | A new factory-reset RPC is defined. When resetting a datastore, all | |||
previous configuration settings will be lost and replaced by the | previous configuration settings will be lost and replaced by the | |||
skipping to change at page 1, line 44 ¶ | skipping to change at page 1, line 44 ¶ | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on May 20, 2020. | This Internet-Draft will expire on June 6, 2020. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2019 IETF Trust and the persons identified as the | Copyright (c) 2019 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 4, line 24 ¶ | skipping to change at page 4, line 24 ¶ | |||
an appropriate factory-default state. | an appropriate factory-default state. | |||
In addition, the "factory-reset" RPC MUST restore storage to factory | In addition, the "factory-reset" RPC MUST restore storage to factory | |||
condition, including remove log files, remove temporary files (from | condition, including remove log files, remove temporary files (from | |||
datastore or elsewhere). It MUST also remove security credentials | datastore or elsewhere). It MUST also remove security credentials | |||
and restoring default security settings including remove | and restoring default security settings including remove | |||
certificates, keys, zero passwords, etc. The process invoked by the | certificates, keys, zero passwords, etc. The process invoked by the | |||
"factory-reset" RPC SHOULD zero/pattern-write than remove sensitive | "factory-reset" RPC SHOULD zero/pattern-write than remove sensitive | |||
files such as the TLS keys, configuration stores, etc. The "factory- | files such as the TLS keys, configuration stores, etc. The "factory- | |||
reset" RPC MAY also be used to trigger some other resetting tasks | reset" RPC MAY also be used to trigger some other resetting tasks | |||
such as restarting the node or some of the software processes. | such as restarting the node or some of the software processes, which | |||
are especially needed after having onboard information being | ||||
processed or when a specified boot image needs to be | ||||
downloaded,verified and installed. | ||||
3. Factory-Default Datastore | 3. Factory-Default Datastore | |||
Following guidelines for defining Datastores in the appendix A of | Following guidelines for defining Datastores in the appendix A of | |||
[RFC8342], this document introduces a new optional datastore resource | [RFC8342], this document introduces a new optional datastore resource | |||
named 'factory-default' that represents a preconfigured minimal | named 'factory-default' that represents a preconfigured minimal | |||
initial configuration that can be used to initialize the | initial configuration that can be used to initialize the | |||
configuration of a server. A device MAY only implement the <factory- | configuration of a server. A device MAY only implement the <factory- | |||
reset> RPC without implementing the 'factory-default' datastore, | reset> RPC without implementing the 'factory-default' datastore, | |||
which make it lose the ability to see what configuration the device | which make it lose the ability to see what configuration the device | |||
skipping to change at page 5, line 24 ¶ | skipping to change at page 5, line 27 ¶ | |||
like HW available or during device upgrade. | like HW available or during device upgrade. | |||
The contents of <factory-default> MUST persist across device | The contents of <factory-default> MUST persist across device | |||
restarts. | restarts. | |||
4. YANG Module | 4. YANG Module | |||
This module imports typedefs from [RFC8342], and it references | This module imports typedefs from [RFC8342], and it references | |||
[RFC6421],[RFC8341]. | [RFC6421],[RFC8341]. | |||
<CODE BEGINS> file "ietf-factory-default.yang" | <CODE BEGINS> file "ietf-factory-default@2019-11-27.yang" | |||
module ietf-factory-default { | module ietf-factory-default { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-factory-default"; | namespace "urn:ietf:params:xml:ns:yang:ietf-factory-default"; | |||
prefix fd; | prefix fd; | |||
import ietf-datastores { | import ietf-datastores { | |||
prefix ds; | prefix ds; | |||
} | } | |||
import ietf-netconf-acm { | import ietf-netconf-acm { | |||
prefix nacm; | prefix nacm; | |||
skipping to change at page 6, line 20 ¶ | skipping to change at page 6, line 26 ¶ | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC XXXX; | This version of this YANG module is part of RFC XXXX; | |||
see the RFC itself for full legal notices."; | see the RFC itself for full legal notices."; | |||
revision 2019-05-03 { | revision 2019-11-27 { | |||
description | description | |||
"Initial revision."; | "Initial revision."; | |||
reference | reference | |||
"RFC XXXX: Factory default Setting"; | "RFC XXXX: Factory default Setting"; | |||
} | } | |||
feature factory-default-datastore { | feature factory-default-datastore { | |||
description | description | |||
"Indicates that the factory default configuration is | "Indicates that the factory default configuration is | |||
available as a datastore."; | available as a datastore."; | |||
} | } | |||
rpc factory-reset { | rpc factory-reset { | |||
nacm:default-deny-all; | nacm:default-deny-all; | |||
description | description | |||
"The server resets the content of all read-write | "The server resets the content of all read-write | |||
configuration datastores (i.e.,<running> , <startup><candidate>) to | configuration datastores (i.e.,<running> , <startup>,and | |||
their factory default content."; | <candidate>) to their factory default content."; | |||
} | } | |||
identity factory-default { | identity factory-default { | |||
if-feature "factory-default-datastore"; | if-feature "factory-default-datastore"; | |||
base ds:datastore; | base ds:datastore; | |||
description | description | |||
"This read-only datastore contains the configuration data used to | "This read-only datastore contains the configuration data used to | |||
replace the contents ofthe read-write conventional configuration | replace the contents ofthe read-write conventional configuration | |||
datastores during a factory-reset RPC operation."; | datastores during a factory-reset RPC operation."; | |||
} | } | |||
skipping to change at page 9, line 9 ¶ | skipping to change at page 9, line 9 ¶ | |||
[RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., | [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., | |||
and R. Wilton, "Network Management Datastore Architecture | and R. Wilton, "Network Management Datastore Architecture | |||
(NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | |||
<https://www.rfc-editor.org/info/rfc8342>. | <https://www.rfc-editor.org/info/rfc8342>. | |||
9.2. Informative References | 9.2. Informative References | |||
[I-D.ietf-netmod-yang-instance-file-format] | [I-D.ietf-netmod-yang-instance-file-format] | |||
Lengyel, B. and B. Claise, "YANG Instance Data File | Lengyel, B. and B. Claise, "YANG Instance Data File | |||
Format", draft-ietf-netmod-yang-instance-file-format-04 | Format", draft-ietf-netmod-yang-instance-file-format-06 | |||
(work in progress), August 2019. | (work in progress), December 2019. | |||
[RFC8572] Watsen, K., Farrer, I., and M. Abrahamsson, "Secure Zero | ||||
Touch Provisioning (SZTP)", RFC 8572, | ||||
DOI 10.17487/RFC8572, April 2019, | ||||
<https://www.rfc-editor.org/info/rfc8572>. | ||||
Appendix A. Changes between revisions | Appendix A. Changes between revisions | |||
Editorial Note (To be removed by RFC Editor) | Editorial Note (To be removed by RFC Editor) | |||
v07 - 08 | ||||
o Provide clarification and recommendation on the relationship | ||||
between factory-reset RPC and reboot. | ||||
o Nits fixed based on YANG Doctor Review. | ||||
v06 - 07 | v06 - 07 | |||
o Remove Factory-default content specification; | o Remove Factory-default content specification; | |||
o Remove reference to YANG instance data file format and zero touch | o Remove reference to YANG instance data file format and zero touch | |||
provision [RFC8573]; | provision [RFC8573]; | |||
o Remove copy-config operation extension on factory-default | o Remove copy-config operation extension on factory-default | |||
datastore | datastore | |||
End of changes. 10 change blocks. | ||||
16 lines changed or deleted | 21 lines changed or added | |||
This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |