apache2.2でSSL通信をさせるように設定した際のメモ
ローカル環境にSSL通信を設定した際のメモ
# ssl通信ができるようにmod_sslをインストール # yum -y install mod_ssl # vi /etc/httpd/conf.d/ssl.conf # ssl通信(443)の設定() <VirtualHost _default_:443> DocumentRoot "/var/www/html/webroot" ### 省略 ### RewriteEngine On RewriteRule ^/$ /xxx/index.html [R,L] </VirtualHost> # --- ssl通信(8080)の設定 <VirtualHost *:8080> DocumentRoot "/var/www/html/management" ### 省略 ### RewriteEngine On RewriteRule ^/$ /xxx.php [R,L] </VirtualHost>
CentOS6系にPostgreSQL9.4をインストールした際のメモ
久しぶりにPostgreSQLを使用する機会が発生したのでメモ。
・CentOS release 6.9 (Final)
・PostgreSQL 9.4
# リポジトリの追加 # wget http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-3.noarch.rpm # yum localinstall pgdg-centos94-9.4-3.noarch.rpm # インストール # yum install postgresql94-server.x86_64 postgresql94.x86_64 postgresql94-libs.x86_64 # データベースの初期化 # service postgresql-9.4 initdb Initializing database: [ OK ] # サービス起動 # service postgresql-9.4 start Starting postgresql-9.4 service: [ OK ] # パスワード設定 # su - postgres -bash-4.1$ psql psql (9.4.12) Type "help" for help. postgres=# alter user postgres with password '*****'; ALTER ROLE postgres=# \q # postgresql.confの設定 # vi /var/lib/pgsql/8.4/data/postgresql.conf # --- postgresqlの時刻合わせ timezone = 'Asia/Tokyo' # --- 他からのアクセスを許可 listen_addresses = '*' port = 5432 # pg_hba.confの設定 # vi var/lib/pgsql/9.4/data/pg_hba.conf # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all trust # IPv4 local connections: host all all 127.0.0.1/32 trust host all all 192.168.56.0/24 trust # IPv6 local connections: host all all ::1/128 ident
ポート5432を開くためにiptablesを編集
#iptablesに追加 -A INPUT -p tcp --dport 5432 -j ACCEPT
iptablesを再起動
# /etc/rc.d/init.d/iptables restart
データベースの作成とテーブル作成とユーザー権限について
--ユーザー作成 CREATE ROLE webrole LOGIN; CREATE ROLE nobody LOGIN; --データベース作成 CREATE DATABASE testdb WITH TEMPLATE = template0 ENCODING = 'UTF8'; ALTER DATABASE testdb OWNER TO webrole; --テーブル作成 CREATE TABLE t_img_vote ( id serial NOT NULL, -- シーケンス pen_nm character varying(256), -- ペンネーム illust_nm character varying(128), -- 作品名 email character varying(256), -- メールアドレス open_flg boolean NOT NULL DEFAULT false, -- 公開フラグ(0:非公開 1:公開) img_nm character varying(256), -- 画像ファイル名 ip_addr character varying(64), -- IPアドレス vote_at timestamp without time zone DEFAULT now(), -- 投稿日時 created_at timestamp without time zone DEFAULT now(), -- 作成日時 update_at timestamp without time zone DEFAULT now(), -- 更新日時 CONSTRAINT t_img_vote_pkey PRIMARY KEY (id) ) WITH ( OIDS=FALSE ); ALTER TABLE t_img_vote OWNER TO webrole; COMMENT ON COLUMN t_img_vote.id IS 'シーケンス'; COMMENT ON COLUMN t_img_vote.pen_nm IS 'ペンネーム'; COMMENT ON COLUMN t_img_vote.illust_nm IS '作品名'; COMMENT ON COLUMN t_img_vote.email IS 'メールアドレス'; COMMENT ON COLUMN t_img_vote.open_flg IS '公開フラグ(0:非公開 1:公開)'; COMMENT ON COLUMN t_img_vote.img_nm IS '画像ファイル名'; COMMENT ON COLUMN t_img_vote.ip_addr IS 'IPアドレス'; COMMENT ON COLUMN t_img_vote.vote_at IS '投稿日時'; COMMENT ON COLUMN t_img_vote.created_at IS '作成日時'; COMMENT ON COLUMN t_img_vote.update_at IS '更新日時'; CREATE INDEX idx1 ON t_img_vote USING btree (open_flg); CREATE INDEX idx2 ON t_img_vote USING btree (img_nm); --権限設定 ALTER TABLE t_img_vote OWNER TO webrole; GRANT ALL ON TABLE t_img_vote TO webrole; GRANT SELECT,UPDATE ON TABLE t_img_vote_id_seq TO nobody; GRANT SELECT,INSERT ON TABLE t_img_vote TO nobody;
hacknote.jp
qiita.com
qiita.com
http://rina.jpn.ph/~rance/linux/postgresql/connect.html
CentOS6でIPv6を無効にする
vagrantでvmを構築し、postgresの設定を行うとIPv6でアクセスしに行こうとしたのでIPv6を無効にした
# /etc/modprobe.d/にdisable_ipv6.confというファイル設定ファイルを作成する # ファイル名は任意の名前でOK # vi /etc/modprobe.d/disable-ipv6.conf options ipv6 disable=1 # 下記も設定(上記を設定していれば不要みたいだが) # vi /etc/sysconfig/network NETWORKING_IPV6=no # ipv6tablesの停止 # chkconfig ip6tables off # OS再起動 # reboot # IPv6が無効になっていることを確認 # ifconfig ※inet6 addr:から始まるIPV6アドレスが表示されていなければ無効になっている
VagrantFileのテンプレート
デフォルトのものだとコメントが沢山かかれたりしているので省略したものをメモ
Vagrant.configure("2") do |config| config.vm.box = "bento/centos-6.8" config.vm.hostname = "192.168.33.10" config.ssh.insert_key = false config.vm.network "private_network", ip: "192.168.33.10" config.vm.provider "virtualbox" do |vb| vb.name = config.vm.hostname vb.memory = "2048" vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"] vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] vb.customize ["setextradata", :id, "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled", 0] vb.customize ["modifyvm", :id, "--cableconnected1", "on"] end config.vm.provision "shell", inline: <<-SHELL yum update -y yum install -y zsh vim tree telnet dstat git tig SHELL end
自己証明書のhttpsで証明書エラーを非表示にするメモ
# --- hostnameを変更する # vi /etc/sysconfig/network HOSTNAME=192.168.56.130 # shutdown -r now # --- httpdとSSLをインストール # yum install -y httpd mod_ssl # --- 秘密鍵を作成 # openssl genrsa -out server.key 2048 # --- 証明書(csr)の生成 # openssl req -new -key server.key -out server.csr -subj "/C=JP/ST=Tokyo/L=Tokyo/O=super_office.jp/OU=Web/CN=$(hostname)" # --- csrに署名しサーバー証明書(crt)を作成 # openssl x509 -in server.csr -days 3650 -req -signkey server.key > server.crt Signature ok subject=/C=JP/ST=Tokyo/L=Tokyo/O=super_office.jp/OU=Web/CN=192.168.56.130 Getting Private key # --- httpdの設定 # vi /etc/httpd/conf.d/ssl.conf - SSLCertificateFile /etc/pki/tls/certs/localhost.crt - SSLCertificateKeyFile /etc/pki/tls/private/localhost.key + SSLCertificateFile /opt/server.crt + SSLCertificateKeyFile /opt/server.key # --- httpdの再起動 # /etc/init.d/httpd restart