PostgreSQL��ɸ���SSL��³�ݡ��Ȥ������饤�����/�����Ф��̿�������˰����ˤʤ�褦�Ź沽���ޤ��� ���Τ���ˤ�OpenSSL�����饤����Ȥȥ����Х����ƥ��ξ���˥��ȡ��뤵�졢���ۻ���PostgreSQL�ˤ����뤽�Υ��ݡ��Ȥ�ͭ���ˤʤäƤ���ɬ�פ�����ޤ���第15章�Ȥ��Ƥ��������ˡ�
SSL���ݡ��Ȥ�ͭ���ˤ��ƥ���ѥ��뤵�줿��硢PostgreSQL�����Фϡ�postgresql.conf�ˤ�����ssl�ѥ�����on�ˤ��뤳�Ȥǡ�SSL���ݡ��Ȥ�ͭ���ˤ��Ƶ�ư���뤳�Ȥ��Ǥ��ޤ��� �����Ф�Ʊ��TCP�ݡ��Ȥ�ɸ��Ū����³��SSL��³��ξ�����Ԥ����������饤����ȤȤ���³��SSL����Ѥ��뤫�ɤ�����Ĵ�䤷�ޤ��� �ǥե���ȤǤϡ�����ϥ��饤����Ȥ������Ǥ��� �����ޤ��Ϥ��٤Ƥ���³��SSL�λ��Ѥ�ɬ�פȤ����뤿��Υ�����¦��������ˡ�˴ؤ��Ƥ�項19.1�Ȥ��Ƥ���������
PostgreSQL�ϡ������ƥ������Ѥ�OpenSSL����ե�������ɤ��ޤ��� �ǥե���ȤǤϡ����Υե������̾����openssl.cnf�Ǥ��ꡢopenssl version -d����𤵤��ǥ��쥯�ȥ��¸�ߤ��ޤ��� ���Υǥե���ȤϴĶ��ѿ�OPENSSL_CONF���˾��������ե������̾�������ꤹ�뤳�Ȥˤ���ѹ���ǽ�Ǥ���
OpenSSL�ϡ����٤��ۤʤ롢¿���ΰŹ沽�����ǧ���ѤΥ��르�ꥺ��ݡ��Ȥ��ޤ��� �Ź�ΰ�����OpenSSL����ե�������ǻ��ꤹ�뤳�Ȥ��Ǥ��ޤ�����postgresql.conf���ssl_ciphers���ѹ����뤳�Ȥǡ��ǡ����١��������Фǻ��Ѥ����Ź����ꤹ�뤳�Ȥ��Ǥ��ޤ���
注意: NULL-SHA�ޤ���NULL-MD5�Ź����Ѥ��ưŹ沽�Υ����С��إåɤʤ���ǧ�ڤ�Ԥ����Ȥ���ǽ�Ǥ��� ����������ּԤϥ��饤����ȥ����д֤��̿����ɤ����Ѥ��뤳�Ȥ��Ǥ��ޤ��� �ޤ����Ź沽�Υ����С��إåɤ�ǧ�ڤΥ����С��إåɤ���٤�ȺǾ��Ǥ��� ����������ͳ�ˤ��NULL�Ź�Ͽ侩���ޤ���
SSL�⡼�ɤ�Ϥ��ˤϡ�server.crt�����server.key�ե����뤬�����ФΥǡ����ǥ��쥯�ȥ��¸�ߤ��ʤ���Фʤ�ޤ��� �����Υե�����ˤϡ������о�������̩���������줾��ޤޤ�ޤ��� Unix�����ƥ�Ǥϡ�server.key�θ��¤Ͻ�ͭ�ʳ�����Υ�����������Ĥ��ƤϤʤ�ޤ��� �����chmod 0600 server.key�Ȥ������ޥ�ɤǼ¸��Ǥ��ޤ��� ��̩�������ѥ��ե졼�����ݸ��Ƥ����硢�����Фϥѥ��ե졼�������Ϥ�¥�������Ϥ����ޤǤϵ�ư���ޤ���
���饤����Ȥ˿���Ǥ����������᤹�뤿��ˤϡ����ꤹ��ǧ�ڶɡ�CA�ˤξ������ǡ����ǥ��쥯�ȥ����root.crt�ե�����˵��Ҥ���pg_hba.conf��Ŭ�ڤʹԡ�ʣ���⤢��ˤ�clientcert�ѥ�����1�����ꤷ�ޤ��� ���θ塢SSL��³��ư���˥��饤����Ȥ���ξ������ᤵ��ޤ��� �ʥ��饤����Ȥˤ���������������ˡ�ˤĤ��Ƥ�項30.17�Ȥ��Ƥ����������� �����Фϡ����饤����Ȥξ������ꤹ��ǧ�ڶɤΤ����줫�ˤ���̾����Ƥ��뤳�Ȥڤ��ޤ��� root.crl�ե����뤬¸�ߤ����硢���������ꥹ�ȡ�CRL�˹��ܤ⸡������ޤ��� ��SSL������λ�����ˡ�μ����ޤˤĤ��Ƥ�http://h71000.www7.hp.com/DOC/83final/BA554_90007/ch04s02.html�Ȥ��Ƥ�����������
pg_hba.conf�����clientcert���ץ��������Ƥ�ǧ���������Ф���ͭ���Ǥ�����hostssl�Ȥ��ƻ��ꤵ�줿�ԤΤߤ��Ф��ƤǤ������ꤵ��ʤ���硢�ǥե���ȤǤϥ��饤����Ⱦ�����ڤ��ޤ���
�桼����ǧ�ڤ˥��饤����Ⱦ��������Ѥ��뤿���certǧ����������Ѥ��뤳�Ȥ��Ǥ��ޤ��� �ܺ٤ˤĤ��Ƥ�項19.3.8�Ȥ��Ƥ���������
server.key��server.crt��root.crt��root.crl�ե�����ϡ������е�ư���ˤΤ߸�������ޤ��� �Ǥ��Τǡ������Υե�������ѹ���ͭ���ˤ��뤿��ˤϥ����Ф�Ƶ�ư����ɬ�פ�����ޤ���
To create a quick self-signed certificate for the server, use the following OpenSSL command: --> �������Ѥμ��ʽ�̾��������ñ�˺�뤿��ˤϲ�����OpenSSL���ޥ�ɤ�ȤäƤ���������
openssl req -new -text -out server.req
openssl����Ф�������������Ƥ��������� ���λ���"Common Name"�ˤϳμ¤˥�������ۥ���̾�����Ϥ��Ƥ��������� �����ѥ���ɤ϶���Ǥ���ޤ��� ���Υץ������ϥѥ��ե졼�����ݸ�줿�������������ޤ�����4ʸ���ʲ��Υѥ��ե졼����ǧ����ޤ��� �ѥ��ե졼���������뤿��ˤϡʥ����Фμ�ư��ư��Ԥ������ΤǤ���Сˡ������Υ��ޥ�ɤ�¹Ԥ��Ƥ���������
openssl rsa -in privkey.pem -out server.key rm privkey.pem
��¸�Υ����Υ��å�������ˡ��Ť��ѥ��ե졼�������Ϥ��ޤ��� �����ơ�������¹Ԥ��Ƥ���������
openssl req -x509 -in server.req -text -key server.key -out server.crt
���Τ褦�ˡ�������ʽ�̾�ξ�����ˤ��ơ������Ⱦ�����Ȥ��Ф�����������˥��ԡ����ޤ��� �����ФϤ⤷���Υե����뤬��������뤤�ѡ��ߥå����ξ����ݤ���Τǡ��ǽ�Ū�˰ʲ���Ԥ��ޤ���
chmod og-rwx server.key
�����Ф���̩��������Ӿ������������뤿��ξܤ�����ˡ�ˤĤ��Ƥ�OpenSSL��ʸ��Ȥ��Ƥ���������
���ʽ�̾��������Τ���˻��Ѥ��뤳�ȤϤǤ��ޤ��������饤����Ȥ������Фοȸ��ڤǤ��ޤ��Τǡ����ѻ��ϡʥ������Х��CA��1�Ĥޤ��ϥ��������ǧ�ڶɤΤ����줫�Ρ�ǧ�ڶɡ�CA�ˤˤ���̾���줿���������Ѥ��٤��Ǥ����⤷���ƤΥ��饤����Ȥ��ȿ��ˤ����ƥ�������Ǥ���С���������CA�λ��Ѥ��侩����ޤ���