2018年12月31日月曜日

fortigate90E (NAT設定 "from ローカルPC to Internet接続")


◻️ポリシー作成を行う。


ポリシー&オブジェクト>ポリシー>IPv4

========================
入力インターフェース:internal2(notePC用)
送信元アドレス:all ←セキュリティを気にするなら範囲を指定
出力インターフェース:wan1
宛先:all ←wan側はどこでも見れるようにall
スケジュール:always
サービス:ALL
アクション:ACCEPT

NAT有効 on
========================

2018年12月30日日曜日

内部用bind設定メモ

◻️bindの設定

vi /var/named/chroot/etc/named.conf
================================
/
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// See the BIND Administrator's Reference Manual (ARM) for details about the
// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html


options {
        listen-on port 53 { any; };
//      listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { localhost; };
        forwarders { 192.168.1.200; };


        /*
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
         - If you are building a RECURSIVE (caching) DNS server, you need to enable
           recursion.
         - If your recursive DNS server has a public IP address, you MUST enable access
           control to limit queries to your legitimate users. Failing to do so will
           cause your server to become part of large scale DNS amplification
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface
        */
        recursion yes;

        //dnssec-enable no;
        //dnssec-validation no;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";
//      managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};


zone "." IN {
        type hint;
        file "named.ca";
};


zone "digihide.local" IN {
        type master;
        file "digihide.local.zone";
        allow-query { any; };
};

zone "1.168.192.in-addr.arpa" IN {
        type master;
        file "1.168.192.in-addr.arpa.zone";
        allow-query { any; };
};


//include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
==================================




vi /var/named/chroot/var/named/1.168.192.in-addr.arpa.zone
===============================
$TTL 1D
@       IN SOA  digihide.local. root.digihide.local. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
                NS      ns.digihide.local.
111     IN      PTR     digihide.local.
=================================


vi /var/named/chroot/var/named/digihide.local.zone
=================================
$TTL 1D
@       IN SOA  digihide.local. root.digihide.local. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
             IN NS      ns.digihide.local.
             IN MX 10   mail.digihide.local.

@       IN      A       192.168.1.111
*       IN      A       192.168.1.111
==================================

注意:mail.digihide.local.は、postfixの/etc/postfix/main.cfのhostnameに記載した内容に合わせること!

例:myhostname = mail.digihide.local

2018年12月29日土曜日

bind作成の個人メモ

◻️bind作成の個人メモ
現状、nslookupまで問題ない状態を確認できた。

◻️インストール
yum -y install bind bind-chroot bind-utils

◻️firewall
外向き、内向きの53番ポートの開けておくこと!! ◻️各種config類
/etc/named.conf
/etc/named/named.digihide.local.lan.zone
/etc/named/named.digihide.local.wan.zone
/var/named/1.168.192.in-addr.arpa.db
/var/named/192.168.1.224.in-addr.arpa.wan.db 
/var/named/digihide.local.wan.db
/var/named/digihide.local.lan.db

赤文字は、グローバルIPに差し替え可能
●外部からの再帰問い合わせを禁止にするためにaclを追記する。


ローカルIP:192.168.1.224
ドメイン名:digihide.local

===================/etc/named.conf================================
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// See the BIND Administrator's Reference Manual (ARM) for details about the
// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html

acl my-network {
       192.168.1.0/24;
       localhost;
};

options {
//      listen-on port 53 { any; };
//      listen-on-v6 port 53 { ::1; };
        version         "unknown";
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-transfer { none; };
        allow-query     { localhost; localnets; };
        allow-recursion { localhost; localnets; };
        allow-query-cache { localhost; localnets; };
        forwarders{ 202.238.95.24; };
        recursion yes;

        /*
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
         - If you are building a RECURSIVE (caching) DNS server, you need to enable
           recursion.
         - If your recursive DNS server has a public IP address, you MUST enable access
           control to limit queries to your legitimate users. Failing to do so will
           cause your server to become part of large scale DNS amplification
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface
        */
        

        dnssec-enable no;
        dnssec-validation no;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};


view "internal" {
        match-clients { localnets; };
        match-destinations { localnets; };

        
zone "." IN {
        type hint;
        file "named.ca";
};

//include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
include "/etc/named/named.digihide.local.lan.zone";
};


view "external" {
        match-clients { any; };
        match-destinations { any; };
        include "/etc/named/named.digihide.local.wan.zone";
};
=====================================================================================-



<zoneファイル>

vi /etc/named/named.digihide.local.lan.zone
=================================================================
zone "digihide.local" {
        type master;
        file "digihide.local.lan.db";
};


zone "1.168.192.in-addr.arpa" {
        type master;
        file "1.168.192.in-addr.arpa.db";
};
================================================================



vi /etc/named/named.digihide.local.wan.zone
================================================================
zone "digihide.local" {
        type master;
        file "digihide.local.wan.db";
        allow-query { any; };
};

zone "192.168.1.224.in-addr.arpa" {
        type master;
        file "192.168.1.224.in-addr.arpa.wan.db";
        allow-query { any; };
allow-transfer {
                XXX.XXX.XXX.XX; ←このゾーン情報の転送先として(セカンダリネームサーバーのIPアドレス)を追加

        };
       notify yes;← このゾーン情報変更時は即座に上記セカンダリへ反映させる
};
=================================================================

赤文字は、グローバルIPに差し替え可能



<zone dbファイル>

vi /var/named/digihide.local.lan.db
=================================================================
$TTL    86400
@       IN      SOA     digihide.local.  root.digihide.local.(
                                      2011062001 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN NS    ns1.digihide.local.
        IN MX 10 mail.digihide.local.
@       IN A     192.168.1.224
*       IN A     192.168.1.224
=================================================================                                

注意:mail.digihide.local.は、postfixの/etc/postfix/main.cfのhostnameに記載した内容に合わせること!
例:myhostname = mail.digihide.local



vi /var/named/1.168.192.in-addr.arpa.db
================================================================
$TTL    86400
@       IN      SOA     digihide.local.  root.digihide.local.(
                                      2011062001 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN      NS    ns1.digihide.local.
224     IN      PTR   digihide.local.
================================================================


vi /var/named/digihide.local.wan.db
================================================================
$TTL    86400
@       IN      SOA     digihide.local.  root.digihide.local.(
                                      2011062001 ; Serial
                                      7200       ; Refresh
                                      7200       ; Retry
                                      2419200    ; Expire
                                      86400 )    ; Minimum
        IN NS    ns1.digihide.local.
        IN MX 10 mail.digihide.local.
ns1     IN A     192.168.1.224
@       IN A     192.168.1.224
www     IN A     192.168.1.224
ftp     IN A     192.168.1.224
mail    IN A     192.168.1.224
digihide.local. IN TXT "v=spf1 ip4:192.168.1.224 ~all"  <-postfix側の偽装送信防止対策
===============================================================

赤文字は、グローバルIPに差し替え可能


注意:mail.digihide.local.は、postfixの/etc/postfix/main.cfのhostnameに記載した内容に合わせること!

例:myhostname = mail.digihide.local



vi /var/named/192.168.1.224.in-addr.arpa.wan.db
===============================================================
$TTL    86400
@       IN      SOA     digihide.local.  root.digihide.local.(
                                      2017012901 ; Serial
                                      7200       ; Refresh
                                      7200       ; Retry
                                      2419200    ; Expire
                                      86400 )    ; Minimum
        IN NS    ns1.digihide.local.
224     IN PTR   digihide.local.
================================================================

赤文字は、グローバルIPに差し替え可能


◻️resolv.confの設定

以下、編集を行う。
vi /etc/resolv.conf
===================
search digihide.local
nameserver 192.168.1.224
===================

namedserverの指定をローカルIPにしないと、内部で名前引きが出来なかったので
現時点で、以下にすること!!



◻️まとめ


上記、キャッシュとコンテンツのハイブリットにしてるので
セキュリティ的に、微妙なので、別々で分けた方が良いなという反省。



2018年12月24日月曜日

GCP(デスクトップ上のターミナルからのログイン方法について[その2])

実際にsshの設定後に、ログインを行ってみると以下の表示が出てしまたので
対処方法を記載してみる。

[表示内容]
root@xxx.xxx.xxx.xxx: Permission denied (publickey).


===================================
1)キーフレーズを作成する。
ssh-keygen -t rsa -C "任意の名前"

例:ssh-keygen -t rsa -C "任意の名前"


2)以下のファイルの 内容を全文コピーする。
vi /Users/ユーザ名/.ssh/id_rsa.pub
===================================

1)以下に移動する。
/Users/ユーザ名/.ssh

$ ssh-add ~/.ssh/id_rsa
Identity added: /Users/ユーザ名/.ssh/id_rsa (任意の名前)

$ ssh-add -l ~/.ssh/id_rsa
2048 SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXX 任意の名前 (RSA)

$ ssh-add -K ~/.ssh/id_rsa

Identity added: /Users/ユーザ名/.ssh/id_rsa (任意の名前)



2)GCPに接続を行ってみる。
ssh -i ~/.ssh/id_rsa.gcp [任意の名前]@[GCPの外部IP]

2018年12月23日日曜日

Apache(SSL設定方法)


1)mod_sslをインストールする。
yum install mod_ssl


2)ssl.confの編集を行う。

=======/etc/httpd/conf.d/ssl.conf============
#
# When we also provide SSL we have to listen to the
# the HTTPS port in addition.
#
#Listen 443 https  <--無効化にする。
          .
          .
          .   

#   SSL Protocol support:
# List the enable protocol levels with which clients will be able to
# connect.  Disable SSLv2 access by default:
#SSLProtocol all -SSLv2 -SSLv3
SSLProtocol -all +TLSv1.2   <--追加する
          .
          .
          .
## 行の末端に新規追加 ##

<VirtualHost *:443>
  ErrorLog logs/ssl_error_log
  LogLevel warn
  SSLEngine on
  SSLProtocol all -SSLv3
  SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
  SSLCertificateFile /etc/httpd/conf/server.crt    <--作成したserver.crtを指定すること
  SSLCertificateKeyFile /etc/httpd/conf/server.key <--作成したserver.keyを指定すること
  <Files ~ "\.(cgi|shtml|phtml|php3?)$">
        SSLOptions +StdEnvVars
    </Files>
    BrowserMatch "MSIE [2-5]" \
             nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0
    CustomLog logs/ssl_access_log ltsv_ssl
</VirtualHost>

========================================



3)httpd.confの編集を行う。

=======/etc/httpd/conf/httpd.conf===========
#Listen 12.34.56.78:80
#Listen 80
Listen 192.168.1.111:443  <----サーバのIP:443を追記する。


##### 末端に以下を追記 ######
Include /etc/httpd/conf.d/ssl.conf

<IfModule ssl_module>
 SSLRandomSeed startup builtin
 SSLRandomSeed connect builtin
</IfModule>

===========================================



4)httpdのサービスを再起動を行う
systemctl restart httpd


EFS(Dockerfile)の記載について注意

  Dockerfileにefsのマウントパス宛に、ファイルコピーを行うと ECSのサービス作成時に、コンテナのデプロイ失敗に(container run time error)になるので 別経由で、EFSにファイルをコピーした方が良い!! <Dockerfile> ...