• gitlabの導入方法のメモ

    こんにちは。小宮です。先輩から要望されていそうな気がしたのでgitlab導入時のメモです。。 やたらめったら長いし手順が複雑でこのとおりやって再現できるかはお使いの環境に依存する可能性があり保障できかねます。 この手順で再現した環境はOSはCentOS6.5でした。 postgresを許容できるのであれば自動的に入れられるオムニバス版があるのでそちらをお使いいただくのがよろしいかと。 個人的にpostgresの運用の知見が心もとなかったのと、RDSに逃げられなくなるのがアレだったのでmysqlで頑張りました。 自分で自動化する時は、passengerとgitlab:setup時の対話処理をなんとか自動化するオプションを付けるとこがキモかと思いました。 この手順自体は部分的にchefがでてきますがほぼ手動です。自動化オプションは最後のほうにちょろっと書いときます。 1.このへんからmysqlをなんとかして入れとく $ wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-5.6.17-1.linux_glibc2.5.x86_64.rpm-bundle.tar -P site-cookbooks/mysqld/files/default/usr/local/src/ 2.rbenv等でrubyをなんとかして入れておく (chefでなにもせずにやるとchefgemに寄るので注意がひつよう) rubyのバージョンが低いとGemfileのシンタックスチェックでエラー出てmysql2とかが入らないことも。 3.Gitのインストール # yum -y install libcurl-devel libxslt-devel libxml2-devel expat-devel gettext openssl-devel zlib-devel Installed: libcurl-devel.x86_64 0:7.19.7-37.el6_4 libxml2-devel.x86_64 0:2.7.6-14.el6 libxslt-devel.x86_64 0:1.1.26-2.el6_3.1 Dependency Installed: libgcrypt-devel.x86_64 0:1.4.5-11.el6_4 libgpg-error-devel.x86_64 0:1.7-4.el6 # su - chef;cd infra-chef-repo/ $ knife cookbook create git -o site-cookbooks $ knife cookbook create redis -o site-cookbooks $ vi site-cookbooks/git/recipes/default.
    ...
  • solarisのKSSLをつかう

    おはようございます。インフラ宮下です。 最近はopensslの脆弱性が頻繁に取りざたされています。 そこで今回はKSSLを使ってSSLをterminateする設定を紹介します。 1.環境 サーバ:oracle spark enterprise T2000 OS:solaris10 とても古い環境です。 構成:コンテナ構成でWEBサーバはlocal ZONEに構築されています。 KSSLで終端するのはglobal ZONEです。 local ZONEのWEBサーバでは、8888ポートでListenするように設定しています。 2.証明書の準備 KSSLで渡せる証明書情報は1ファイルだけなので、「証明書+中間証明書+秘密鍵」の順番で情報を貼り付けたファイルをGlobal ZONEから見れる場所に設置する。 [shell]# vi /etc/httpd/keys/abc.net.key [/shell] 3.SMFにKSSLサービスを登録する [shell]ksslcfg create -f pem -i /etc/httpd/keys/abc.net.key -x 8888 zone-web01 443 [/shell] 「zone-web01」はforward先のサーバを差します。(今回はlocal ZONEのWEBサーバ) この名前は、DNSで引けるかhostsに登録してある必要があります。 「-i」…設置した証明書を指定する。経験的にファイルの権限とかに制約はない 「-x」…配下のサーバと通信ポート番号。webサーバがListenしているポートです 「zone-web01」…terminate後の接続先サーバ名 「443」…KSSL自体が待ち受けるポート [shell]# svcs -a|grep ssl online 10:15:01 svc:/network/ssl/proxy:kssl-zone-web01-443 [/shell] Global Zoneでこのように「online」となれば起動成功です。
    ...
  • facebookのIPがmod_geoipで拒否される対応

    こんにちは。プラットフォームの小宮です。 apacheのmod_geoipモジュールで海外を拒否してみたところ、 Facebookの画像が表示されないということで対応しました。 ・whoisが必要だが入ってなかったので他の入ってるサーバでパッケージ名を調べて導入 [shell]$ which whois /usr/bin/whois # rpm -qf /usr/bin/whois jwhois-3.2.2-1 # yum install jwhois Installed: jwhois.x86_64 0:4.0-19.el6 # which whois /usr/bin/whois[/shell] ・fb公式で許可リスト取得方法を確認 以下のコマンドで定期的に更新リストを取得せよと公式に書いてある。 App Security - Facebook開発者 [shell]# whois -h whois.radb.net – ‘-i origin AS32934’ | grep ^route:|awk ‘{print $2}’ 204.15.20.0/22 69.63.176.0/20 ~略~ 69.63.184.0/21 66.220.144.0/20 69.63.176.0/20[/shell] ※65ブロックくらいだった。手作業はあり得ないので何とか自動化を試みる。
    ...