Lantronix EMG 8500 EMG User Guide - Page 338

Maintenance, EMG™ Edge Management Gateway User Guide, CA_default, req ], req_distinguished_name ]

Page 338 highlights

15: Maintenance cd /root mkdir ztp-cert cd ztp-cert mkdir newcerts cp /etc/ssl/openssl.cnf . export OPENSSL_CONF=/root/ztp-cert/openssl.cnf b. Under the CA_default section in openssl.cnf, change the directory where everything is kept to ".": [ CA_default ] dir = . # Where everything is kept c. The openssl.cnf sections [ req ] and [ req_distinguished_name ] can be updated with specific options for certificate requests, or the defaults can be used. d. Create the index.txt and serial files, which act as a flat file database to keep track of signed certificates: touch index.txt echo 1000 > serial echo 1000 > crlnumber 2. Create the root certificate: a. Create the root CA's private key (longer bit sizes such as 8192 can be used instead of 4096): openssl genrsa -out ca.key 4096 b. Create the root CA's certificate (the CN, or commonName, overrides the value in openssl.cnf, and can be set to any allowed certificate name): openssl req -new -x509 -days 3650 -key ca.key -out cacert.pem -subj /CN=ztpExampleCA c. The cacert.pem file output in the previous step can be copied to the top level directory of the external storage device that will be used for ZTP. The certificate can be verified (e.g. view the algorithms, validity date and CN, etc) at anytime with the command: openssl x509 -noout -text -in cacert.pem 3. Create the server certificate and sign it with the root certificate: a. Create the server certificate's private key (longer bit sizes such as 8192 can be used instead of 4096): openssl genrsa -out server.key 4096 b. Create the server certificate's Certificate Signing Request or CSR (the CN, or commonName, must match the IP address or name used in the URL to access the ZTP configuration file and cannot be the same as the CN of the root CA): openssl req -new -key server.key -out server.csr -subj / CN=example.ztp.com c. Create the server certificate by signing the CSR with the root CA (policy_match can be used in place of policy_anything to use a different rule in openssl.cnf for controlling which attributes of a certificate are required to match those given in the CA; by default policy_anything requires that only a CN be specified): EMG™ Edge Management Gateway User Guide 338

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384
  • 385
  • 386
  • 387
  • 388
  • 389
  • 390
  • 391
  • 392
  • 393
  • 394
  • 395
  • 396
  • 397
  • 398
  • 399
  • 400
  • 401
  • 402
  • 403
  • 404
  • 405
  • 406
  • 407
  • 408
  • 409
  • 410
  • 411
  • 412
  • 413
  • 414
  • 415
  • 416
  • 417
  • 418
  • 419
  • 420
  • 421
  • 422
  • 423
  • 424
  • 425
  • 426
  • 427
  • 428
  • 429
  • 430
  • 431
  • 432
  • 433
  • 434
  • 435
  • 436
  • 437
  • 438
  • 439
  • 440
  • 441
  • 442
  • 443
  • 444
  • 445
  • 446
  • 447
  • 448
  • 449
  • 450
  • 451
  • 452
  • 453
  • 454
  • 455
  • 456
  • 457
  • 458
  • 459
  • 460
  • 461
  • 462
  • 463
  • 464
  • 465
  • 466
  • 467
  • 468
  • 469
  • 470
  • 471
  • 472
  • 473
  • 474
  • 475
  • 476
  • 477
  • 478
  • 479
  • 480
  • 481
  • 482
  • 483
  • 484
  • 485
  • 486
  • 487
  • 488
  • 489
  • 490
  • 491
  • 492
  • 493
  • 494
  • 495

15: Maintenance
EMG™ Edge Management Gateway User Guide
338
cd /root
mkdir ztp-cert
cd ztp-cert
mkdir newcerts
cp /etc/ssl/openssl.cnf .
export OPENSSL_CONF=/root/ztp-cert/openssl.cnf
b.
Under the
CA_default
section in openssl.cnf, change the directory where everything is
kept to ".":
[ CA_default ]
dir = . # Where everything is kept
c.
The openssl.cnf sections
[ req ]
and
[ req_distinguished_name ]
can be updated with
specific options for certificate requests, or the defaults can be used.
d.
Create the index.txt and serial files, which act as a flat file database to keep track of
signed certificates:
touch index.txt
echo 1000 > serial
echo 1000 > crlnumber
2.
Create the root certificate:
a.
Create the root CA's private key (longer bit sizes such as 8192 can be used instead of
4096):
openssl genrsa -out ca.key 4096
b.
Create the root CA's certificate (the CN, or commonName, overrides the value in
openssl.cnf, and can be set to any allowed certificate name):
openssl req -new -x509 -days 3650 -key ca.key -out cacert.pem -subj
/CN=ztpExampleCA
c.
The cacert.pem file output in the previous step can be copied to the top level directory of
the external storage device that will be used for ZTP. The certificate can be verified (e.g.
view the algorithms, validity date and CN, etc) at anytime with the command:
openssl x509 -noout -text -in cacert.pem
3.
Create the server certificate and sign it with the root certificate:
a.
Create the server certificate's private key (longer bit sizes such as 8192 can be used
instead of 4096):
openssl genrsa -out server.key 4096
b.
Create the server certificate's Certificate Signing Request or CSR (the CN, or
commonName, must match the IP address or name used in the URL to access the ZTP
configuration file and cannot be the same as the CN of the root CA):
openssl req -new -key server.key -out server.csr -subj /
CN=example.ztp.com
c.
Create the server certificate by signing the CSR with the root CA (
policy_match
can be
used in place of
policy_anything
to use a different rule in openssl.cnf for controlling
which attributes of a certificate are required to match those given in the CA; by default
policy_anything requires that only a CN be specified):