【Zabbix/Openssl】 클라이언트 인증서를 이용하여 Zabbix 서버에 안전한 액세스
전제 조건
Zabbix 서버가 설치되어 있어야 합니다.
환경
CentOS 6.5: Zabbix 서버
Windows7: 클라이언트 터미널
설치된 패키지:
mod_ssl-2.2.15-47.el6.centos.x86_64
openssl-1.0.1e-42.el6.x86_64
openssl-devel-1.0.1e-42.el6.x86_64
그렇지 않은 경우 yum으로 설치하십시오.
서버 인증서 만들기
우선, 서버 증명서를 작성해, https로 Zabbix 서버에 액세스 할 수 있도록(듯이) 합니다. 이 시점에서는 클라이언트 인증을 하지 않습니다.
秘密鍵を作成。パスフレーズは任意でOKです。
# openssl genrsa -des3 -out server.key.secure 2048
Generating RSA private key, 2048 bit long modulus
........................+++
# openssl rsa -in server.key.secure -out server.key
Enter pass phrase for server.key.secure:
writing RSA key
作成されていることを確認。
# ls -ltr
total 8
-rw-r--r-- 1 root root 1751 Nov 8 22:25 server.key.secure
-rw-r--r-- 1 root root 1679 Nov 8 22:26 server.key
セキュリティ上の理由から、秘密鍵のパーミッションは「400」としておこう。
# chmod 400 server.key
CSR作成
# openssl req -new -key server.key -out server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:Shinagawaku
Organization Name (eg, company) [Default Company Ltd]:Test.co.jp
Organizational Unit Name (eg, section) []:Test.col.jp
Common Name (eg, your name or your server's hostname) []:Test.co.jp
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
サーバ証明書を作成
# openssl x509 -in server.csr -out server.pem -req -sig nkey server.key -days 365
Signature ok
subject=/C=JP/ST=Tokyo/L=Shinagawaku\x08\x08/O=Test.co.jp/OU=Test.col\x08.jp/CN=Test.co.jp
Getting Private key
Apacheの設定ファイルを修正。
※ssl.confがhttpd.conf内でIncludeされていることが前提です。デフォルトでは、Includeされています。
vi /etc/httpd/conf.d/ssl.conf
以下の箇所を、作成したサーバ証明書(CertificateFile)と秘密鍵(CertificateKeyFile)を指定します。
SSLCertificateFile /root/work/server.pem
SSLCertificateKeyFile /root/work/server.key
Apacheを再起動。
# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
Zabbix를 방문하십시오. 다음 화면이 표시되지만 '이 사이트 탐색 계속(권장되지 않음)'을 선택하여 진행하십시오.
로그인 화면이 표시됩니다. 공인 인증서가 아니므로 인증서 오류가 발생했지만 SSL 통신은 가능합니다.
인증서 오류 - 인증서 표시를 클릭하면 인증서가 표시됩니다.
작성한 서버 인증서의 정보와 실수가 없는지 확인하십시오. 이것으로 서버 인증서 설치가 완료됩니다.
클라이언트 인증서 만들기
クライアント証明書を作成します。秘密鍵の作成。
# openssl genrsa -out client.key 2048
Generating RSA private key, 2048 bit long modulus
......+++
..........................+
CSRを作成。
[root@v157-7-131-58 client]# openssl req -new -key client.key -cliout client.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:Shinagawaku
Organization Name (eg, company) [Default Company Ltd]:Test2
Organizational Unit Name (eg, section) []:Test2
Common Name (eg, your name or your server's hostname) []:Test2
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate req
サーバ証明書を作成。
# openssl x509 -in client.scsr -out client-ca.crt -req -signkey client.key -days 360
Signature ok
subject=/C=JP/ST=Tokyo/L=Shinagawaku/O=T\x08\x1B[C\x08\x1B[Cest2/OU=Test2/CN=Test2
Getting Private key
証明書と秘密鍵のペアをexport。パスワードは任意(インストールするときに入力を求められる)。
# openssl pkcs12 -export -inkey client.key -in client -ca.crt -out client.p12 -name "test2"
Enter Export Password:
Verifying - Enter Export Password:
作成されていることを確認。
# ls -ltr
total 16
-rw-r--r-- 1 root root 1679 Nov 9 06:25 client.key
-rw-r--r-- 1 root root 1009 Nov 9 06:26 client.csr
-rw-r--r-- 1 root root 1212 Nov 9 06:26 client-ca.crt
-rw-r--r-- 1 root root 2512 Nov 9 06:27 client.p12
Apacheの設定ファイル(ssl.conf)を修正して、再起動します。
クライアント認証を必須(VerifyClient)とするのと、クライアント証明書を指定(SSLCACertificateFile)します。
SSLVerifyClient require
SSLCACertificateFile /root/work/client/client-ca.crt
# service httpd restart
これで、サーバ側の設定は完了です。
인증서 가져오기
여기서부터는 단말측(Windows7)에서의 설정이 됩니다.
IE에서 인증서를 가져오는 방법을 설명합니다. 기본적으로는 흐름을 따라가는 것만으로 괜찮습니다.
우선은, 작성한 클라이언트 증명서(client.p12)를 다운로드해, 데스크탑에 있어서 증명서를 더블 클릭.
안내에 따라 설치.
설정한 비밀번호를 입력합니다.
인증서 저장소는 '개인'에 두는 것이 좋습니다.
완료. IE에서 "인터넷 옵션"- "콘텐츠"- "인증서"를 선택하면 인증서가 설치되어 있는지 확인할 수 있습니다.
Zabbix 서버에 대한 액세스.
Zabbix 서버에 액세스하면 클라이언트 인증서 사용이 표시됩니다.
「OK」를 누르면 다음에 진행해, 로그인을 할 수 있게 됩니다.
클라이언트 인증서가 없으면 다음과 같은 화면이 표시됩니다.
스마트 폰에 클라이언트 인증서를 도입 (하지만 작동하지 않습니다).
스마트폰에 클라이언트 인증서를 설치합니다. 이것은 스마트 폰에 의존하기 때문에, 어디까지나 참고 정도로 해 주세요. 내 스마트 폰은 Xperia입니다.
설정 - 보안 - 내부 스토리지 또는 SD 카드에서 설치를 선택합니다.
다운로드한 인증서 파일을 선택합니다.
비밀번호를 입력합니다.
인증서 이름을 입력합니다.
그러나 "신뢰할 수있는 자격 증명"을 확인해도 인증서를 확인할 수 없습니다. 앱(AndZabbixLite)으로 액세스해도 당연히 에러가 표시된다.
미래의 도전
스마트 폰에 클라이언트 인증서를 도입하고 앱 (AndZabbixLite)으로 액세스.
Reference
이 문제에 관하여(【Zabbix/Openssl】 클라이언트 인증서를 이용하여 Zabbix 서버에 안전한 액세스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/domonjo01/items/a714d19e0cfdda67c5e4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
CentOS 6.5: Zabbix 서버
Windows7: 클라이언트 터미널
설치된 패키지:
mod_ssl-2.2.15-47.el6.centos.x86_64
openssl-1.0.1e-42.el6.x86_64
openssl-devel-1.0.1e-42.el6.x86_64
그렇지 않은 경우 yum으로 설치하십시오.
서버 인증서 만들기
우선, 서버 증명서를 작성해, https로 Zabbix 서버에 액세스 할 수 있도록(듯이) 합니다. 이 시점에서는 클라이언트 인증을 하지 않습니다.
秘密鍵を作成。パスフレーズは任意でOKです。
# openssl genrsa -des3 -out server.key.secure 2048
Generating RSA private key, 2048 bit long modulus
........................+++
# openssl rsa -in server.key.secure -out server.key
Enter pass phrase for server.key.secure:
writing RSA key
作成されていることを確認。
# ls -ltr
total 8
-rw-r--r-- 1 root root 1751 Nov 8 22:25 server.key.secure
-rw-r--r-- 1 root root 1679 Nov 8 22:26 server.key
セキュリティ上の理由から、秘密鍵のパーミッションは「400」としておこう。
# chmod 400 server.key
CSR作成
# openssl req -new -key server.key -out server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:Shinagawaku
Organization Name (eg, company) [Default Company Ltd]:Test.co.jp
Organizational Unit Name (eg, section) []:Test.col.jp
Common Name (eg, your name or your server's hostname) []:Test.co.jp
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
サーバ証明書を作成
# openssl x509 -in server.csr -out server.pem -req -sig nkey server.key -days 365
Signature ok
subject=/C=JP/ST=Tokyo/L=Shinagawaku\x08\x08/O=Test.co.jp/OU=Test.col\x08.jp/CN=Test.co.jp
Getting Private key
Apacheの設定ファイルを修正。
※ssl.confがhttpd.conf内でIncludeされていることが前提です。デフォルトでは、Includeされています。
vi /etc/httpd/conf.d/ssl.conf
以下の箇所を、作成したサーバ証明書(CertificateFile)と秘密鍵(CertificateKeyFile)を指定します。
SSLCertificateFile /root/work/server.pem
SSLCertificateKeyFile /root/work/server.key
Apacheを再起動。
# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
Zabbix를 방문하십시오. 다음 화면이 표시되지만 '이 사이트 탐색 계속(권장되지 않음)'을 선택하여 진행하십시오.
로그인 화면이 표시됩니다. 공인 인증서가 아니므로 인증서 오류가 발생했지만 SSL 통신은 가능합니다.
인증서 오류 - 인증서 표시를 클릭하면 인증서가 표시됩니다.
작성한 서버 인증서의 정보와 실수가 없는지 확인하십시오. 이것으로 서버 인증서 설치가 완료됩니다.
클라이언트 인증서 만들기
クライアント証明書を作成します。秘密鍵の作成。
# openssl genrsa -out client.key 2048
Generating RSA private key, 2048 bit long modulus
......+++
..........................+
CSRを作成。
[root@v157-7-131-58 client]# openssl req -new -key client.key -cliout client.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:Shinagawaku
Organization Name (eg, company) [Default Company Ltd]:Test2
Organizational Unit Name (eg, section) []:Test2
Common Name (eg, your name or your server's hostname) []:Test2
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate req
サーバ証明書を作成。
# openssl x509 -in client.scsr -out client-ca.crt -req -signkey client.key -days 360
Signature ok
subject=/C=JP/ST=Tokyo/L=Shinagawaku/O=T\x08\x1B[C\x08\x1B[Cest2/OU=Test2/CN=Test2
Getting Private key
証明書と秘密鍵のペアをexport。パスワードは任意(インストールするときに入力を求められる)。
# openssl pkcs12 -export -inkey client.key -in client -ca.crt -out client.p12 -name "test2"
Enter Export Password:
Verifying - Enter Export Password:
作成されていることを確認。
# ls -ltr
total 16
-rw-r--r-- 1 root root 1679 Nov 9 06:25 client.key
-rw-r--r-- 1 root root 1009 Nov 9 06:26 client.csr
-rw-r--r-- 1 root root 1212 Nov 9 06:26 client-ca.crt
-rw-r--r-- 1 root root 2512 Nov 9 06:27 client.p12
Apacheの設定ファイル(ssl.conf)を修正して、再起動します。
クライアント認証を必須(VerifyClient)とするのと、クライアント証明書を指定(SSLCACertificateFile)します。
SSLVerifyClient require
SSLCACertificateFile /root/work/client/client-ca.crt
# service httpd restart
これで、サーバ側の設定は完了です。
인증서 가져오기
여기서부터는 단말측(Windows7)에서의 설정이 됩니다.
IE에서 인증서를 가져오는 방법을 설명합니다. 기본적으로는 흐름을 따라가는 것만으로 괜찮습니다.
우선은, 작성한 클라이언트 증명서(client.p12)를 다운로드해, 데스크탑에 있어서 증명서를 더블 클릭.
안내에 따라 설치.
설정한 비밀번호를 입력합니다.
인증서 저장소는 '개인'에 두는 것이 좋습니다.
완료. IE에서 "인터넷 옵션"- "콘텐츠"- "인증서"를 선택하면 인증서가 설치되어 있는지 확인할 수 있습니다.
Zabbix 서버에 대한 액세스.
Zabbix 서버에 액세스하면 클라이언트 인증서 사용이 표시됩니다.
「OK」를 누르면 다음에 진행해, 로그인을 할 수 있게 됩니다.
클라이언트 인증서가 없으면 다음과 같은 화면이 표시됩니다.
스마트 폰에 클라이언트 인증서를 도입 (하지만 작동하지 않습니다).
스마트폰에 클라이언트 인증서를 설치합니다. 이것은 스마트 폰에 의존하기 때문에, 어디까지나 참고 정도로 해 주세요. 내 스마트 폰은 Xperia입니다.
설정 - 보안 - 내부 스토리지 또는 SD 카드에서 설치를 선택합니다.
다운로드한 인증서 파일을 선택합니다.
비밀번호를 입력합니다.
인증서 이름을 입력합니다.
그러나 "신뢰할 수있는 자격 증명"을 확인해도 인증서를 확인할 수 없습니다. 앱(AndZabbixLite)으로 액세스해도 당연히 에러가 표시된다.
미래의 도전
스마트 폰에 클라이언트 인증서를 도입하고 앱 (AndZabbixLite)으로 액세스.
Reference
이 문제에 관하여(【Zabbix/Openssl】 클라이언트 인증서를 이용하여 Zabbix 서버에 안전한 액세스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/domonjo01/items/a714d19e0cfdda67c5e4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
秘密鍵を作成。パスフレーズは任意でOKです。
# openssl genrsa -des3 -out server.key.secure 2048
Generating RSA private key, 2048 bit long modulus
........................+++
# openssl rsa -in server.key.secure -out server.key
Enter pass phrase for server.key.secure:
writing RSA key
作成されていることを確認。
# ls -ltr
total 8
-rw-r--r-- 1 root root 1751 Nov 8 22:25 server.key.secure
-rw-r--r-- 1 root root 1679 Nov 8 22:26 server.key
セキュリティ上の理由から、秘密鍵のパーミッションは「400」としておこう。
# chmod 400 server.key
CSR作成
# openssl req -new -key server.key -out server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:Shinagawaku
Organization Name (eg, company) [Default Company Ltd]:Test.co.jp
Organizational Unit Name (eg, section) []:Test.col.jp
Common Name (eg, your name or your server's hostname) []:Test.co.jp
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
サーバ証明書を作成
# openssl x509 -in server.csr -out server.pem -req -sig nkey server.key -days 365
Signature ok
subject=/C=JP/ST=Tokyo/L=Shinagawaku\x08\x08/O=Test.co.jp/OU=Test.col\x08.jp/CN=Test.co.jp
Getting Private key
Apacheの設定ファイルを修正。
※ssl.confがhttpd.conf内でIncludeされていることが前提です。デフォルトでは、Includeされています。
vi /etc/httpd/conf.d/ssl.conf
以下の箇所を、作成したサーバ証明書(CertificateFile)と秘密鍵(CertificateKeyFile)を指定します。
SSLCertificateFile /root/work/server.pem
SSLCertificateKeyFile /root/work/server.key
Apacheを再起動。
# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
クライアント証明書を作成します。秘密鍵の作成。
# openssl genrsa -out client.key 2048
Generating RSA private key, 2048 bit long modulus
......+++
..........................+
CSRを作成。
[root@v157-7-131-58 client]# openssl req -new -key client.key -cliout client.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:Shinagawaku
Organization Name (eg, company) [Default Company Ltd]:Test2
Organizational Unit Name (eg, section) []:Test2
Common Name (eg, your name or your server's hostname) []:Test2
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate req
サーバ証明書を作成。
# openssl x509 -in client.scsr -out client-ca.crt -req -signkey client.key -days 360
Signature ok
subject=/C=JP/ST=Tokyo/L=Shinagawaku/O=T\x08\x1B[C\x08\x1B[Cest2/OU=Test2/CN=Test2
Getting Private key
証明書と秘密鍵のペアをexport。パスワードは任意(インストールするときに入力を求められる)。
# openssl pkcs12 -export -inkey client.key -in client -ca.crt -out client.p12 -name "test2"
Enter Export Password:
Verifying - Enter Export Password:
作成されていることを確認。
# ls -ltr
total 16
-rw-r--r-- 1 root root 1679 Nov 9 06:25 client.key
-rw-r--r-- 1 root root 1009 Nov 9 06:26 client.csr
-rw-r--r-- 1 root root 1212 Nov 9 06:26 client-ca.crt
-rw-r--r-- 1 root root 2512 Nov 9 06:27 client.p12
Apacheの設定ファイル(ssl.conf)を修正して、再起動します。
クライアント認証を必須(VerifyClient)とするのと、クライアント証明書を指定(SSLCACertificateFile)します。
SSLVerifyClient require
SSLCACertificateFile /root/work/client/client-ca.crt
# service httpd restart
これで、サーバ側の設定は完了です。
인증서 가져오기
여기서부터는 단말측(Windows7)에서의 설정이 됩니다.
IE에서 인증서를 가져오는 방법을 설명합니다. 기본적으로는 흐름을 따라가는 것만으로 괜찮습니다.
우선은, 작성한 클라이언트 증명서(client.p12)를 다운로드해, 데스크탑에 있어서 증명서를 더블 클릭.
안내에 따라 설치.
설정한 비밀번호를 입력합니다.
인증서 저장소는 '개인'에 두는 것이 좋습니다.
완료. IE에서 "인터넷 옵션"- "콘텐츠"- "인증서"를 선택하면 인증서가 설치되어 있는지 확인할 수 있습니다.
Zabbix 서버에 대한 액세스.
Zabbix 서버에 액세스하면 클라이언트 인증서 사용이 표시됩니다.
「OK」를 누르면 다음에 진행해, 로그인을 할 수 있게 됩니다.
클라이언트 인증서가 없으면 다음과 같은 화면이 표시됩니다.
스마트 폰에 클라이언트 인증서를 도입 (하지만 작동하지 않습니다).
스마트폰에 클라이언트 인증서를 설치합니다. 이것은 스마트 폰에 의존하기 때문에, 어디까지나 참고 정도로 해 주세요. 내 스마트 폰은 Xperia입니다.
설정 - 보안 - 내부 스토리지 또는 SD 카드에서 설치를 선택합니다.
다운로드한 인증서 파일을 선택합니다.
비밀번호를 입력합니다.
인증서 이름을 입력합니다.
그러나 "신뢰할 수있는 자격 증명"을 확인해도 인증서를 확인할 수 없습니다. 앱(AndZabbixLite)으로 액세스해도 당연히 에러가 표시된다.
미래의 도전
스마트 폰에 클라이언트 인증서를 도입하고 앱 (AndZabbixLite)으로 액세스.
Reference
이 문제에 관하여(【Zabbix/Openssl】 클라이언트 인증서를 이용하여 Zabbix 서버에 안전한 액세스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/domonjo01/items/a714d19e0cfdda67c5e4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
스마트폰에 클라이언트 인증서를 설치합니다. 이것은 스마트 폰에 의존하기 때문에, 어디까지나 참고 정도로 해 주세요. 내 스마트 폰은 Xperia입니다.
설정 - 보안 - 내부 스토리지 또는 SD 카드에서 설치를 선택합니다.
다운로드한 인증서 파일을 선택합니다.
비밀번호를 입력합니다.
인증서 이름을 입력합니다.
그러나 "신뢰할 수있는 자격 증명"을 확인해도 인증서를 확인할 수 없습니다. 앱(AndZabbixLite)으로 액세스해도 당연히 에러가 표시된다.
미래의 도전
스마트 폰에 클라이언트 인증서를 도입하고 앱 (AndZabbixLite)으로 액세스.
Reference
이 문제에 관하여(【Zabbix/Openssl】 클라이언트 인증서를 이용하여 Zabbix 서버에 안전한 액세스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/domonjo01/items/a714d19e0cfdda67c5e4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(【Zabbix/Openssl】 클라이언트 인증서를 이용하여 Zabbix 서버에 안전한 액세스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/domonjo01/items/a714d19e0cfdda67c5e4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)