#建立資料夾
cd /ca
mkdir intermediate
#進入中繼憑證目錄,建立相關的目錄和檔案。
#建立相關目錄。
#private存放中繼憑證的私鑰。
#csr存放中繼憑證的憑證簽發申請檔。
#cert存放中繼憑證的憑證。
#chain存放中繼憑證的憑證串鏈。
#signature_certs存放中繼憑證簽發過的憑證的副本。
mkdir private csr cert chain signed_certs
#更改私有目錄的訪問許可權。
chmod 700 private
#建立index.txt,此檔案館使用記錄重複憑證簽發過的憑證的紀錄,多次重複憑證簽發憑證openssl會自動更新此檔案。
touch index.txt
#建立序列號,並在檔案中填入0001,被簽發的憑證都會有序號的字段,記錄此憑證在上一層簽發單位所簽發的憑證的序號,此檔案會重新記錄中繼憑證簽發的憑證的序號,每次重複憑證簽發憑證openssl會自動更新此檔案
echo 0001 > serial
在intermediate目錄下touch openssl_intermediate_ca.cnf
填上下面內容
[ ca ]
default_ca = ca_default
[ ca_default ]
#放置相關的檔案和目錄。
dir = /ca/intermediate
certs = $dir/cert
new_certs_dir = $dir/signed_certs
database = $dir/index.txt
serial = $dir/serial
randfile = $dir/private/.rand
#放置私鑰和憑證的路徑。
private_key = $dir/private/intermediate_ca.key.pem
certificate = $dir/cert/intermediate_ca.cert.pem
default_md = sha256
name_opt = ca_default
cert_opt = ca_default
default_days = 365
preserve = no
policy = policy_defualt
[ policy_defualt ]
countryname = optional
stateorprovincename = optional
organizationname = optional
organizationalunitname = optional
commonname = supplied
emailaddress = optional
[ req ]
#req工具需要的引數。.
default_bits = 2048
distinguished_name = req_distinguished_name
string_mask = utf8only
default_md = sha256
[ req_distinguished_name ]
#產生憑證時要輸入的資料的說明。
countryname = country name (2 letter code)
stateorprovincename = state or province name
localityname = locality name
0.organizationname = organization name
organizationalunitname = organizational unit name
commonname = common name
emailaddress = email address
[ server_cert ]
#簽發伺服器憑證使用。
basicconstraints = ca:false
nscerttype = server
nscomment = "openssl generated server certificate"
subjectkeyidentifier = hash
authoritykeyidentifier = keyid,issuer:always
keyusage = critical, digitalsignature, keyencipherment
extendedkeyusage = serverauth
[ client_cert ]
#簽署客戶端憑證使用
basicconstraints = ca:false
nscerttype = client, email
nscomment = "openssl generated client certificate"
subjectkeyidentifier = hash
authoritykeyidentifier = keyid,issuer
keyusage = critical, nonrepudiation, digitalsignature, keyencipherment
extendedkeyusage = clientauth, emailprotection
#在中繼憑證目錄中產生中繼憑證的私鑰,檔名是 intermediate_ca.key.pem
openssl genrsa -aes256 -out private / intermediate_ca.key.pem 4096
#會提示需要輸入私鑰使用的密碼,例如是bob123
enter pass phrase for private/intermediate_ca.key.pem:bob123
#再次確認密碼
verifying - enter pass phrase for private/intermediate_ca.key.pem:bob123
#變更私鑰的訪問許可權。
chmod 400 private/intermediate_ca.key.pem
openssl req -config openssl_intermediate_ca.cnf -new -sha256 \
-key private/intermediate_ca.key.pem \
-out csr/intermediate_ca.csr.pem
#會提示需要輸入中繼的私鑰密碼
enter pass phrase for private/intermediate_ca.key.pem:bob123
#接下來需要輸入憑證擁有者的資訊。(和根目錄一樣)
cd ../root
#簽發申請檔,有效期限是3650天。
openssl ca -config openssl_root_ca.cnf -extensions intermediate_ca \
-days 3650 -notext -md sha256 \
-in ../intermediate/csr/intermediate_ca.csr.pem \
-out ../intermediate/cert/intermediate_ca.cert.pem
#會提示需要輸入根憑證的私鑰密碼
enter pass phrase for /ca/root/private/root_ca.key.pem:alice123
#輸入兩個y
#修改許可權
chmod 444 ../intermediate/cert/intermediate_ca.cert.pem
檢查簽發的中繼憑證是否無誤。
openssl x509 -noout -text -in ../intermediate/cert/intermediate_ca.cert.pem
確認中繼憑證是由根憑證所簽發。
openssl verify -cafile cert/root_ca.cert.pem \
../intermediate/cert/intermediate_ca.cert.pem
顯示ok表示正確。
../intermediate/cert/intermediate_ca.cert.pem: ok
返回中繼憑證目錄處理。
cd ../intermediate
憑證串鏈。(包含根憑證)
cat cert/intermediate_ca.cert.pem ../root/cert/root_ca.cert.pem > chain/chain.cert.pem
#變更憑證串鏈的訪問許可權。
chmod 444 chain/chain.cert.pem
銷售憑證與發貨憑證
在 sd模組中,銷售訂貨單主要關係到表 vbak 頭 vbap 明細 同時訂貨單在發貨時發貨單關係到表 likp 頭 lips 明細 訂貨單與發貨單是1 n即一對多的關係,在 sap中沒有訂貨單對發貨單 n 1。一張訂貨單下可能對應多張發貨單,這根據訂貨單發往的 point.訂貨單和發貨單連線是通過...
批量匯入憑證時,憑證的分割
types begin of ltype cost share,zflag type posnr acc,憑證標示 bschl type bseg bschl,記帳 gl account type c001 sakn1,科目 doc date type char8,document date pos...
sap 幾類憑證
在sap中有park document hold document,post document。在這三中憑證中,park憑證是預製憑證,預製憑證必須具有完整性。它的產生是基於內部控制的思想,一定許可權的人做park document 而另一些許可權高的人做做post。也就是park document...