タスクバーからワンクリックでteratermを起動してサーバに接続する(公開鍵認証方式)

要約

  • 公開鍵認証を使ってサーバにログインするよ。
  • ttermpro.exeのショートカットと引数を使うよ。

前提条件

  • 公開鍵を使ってサーバに接続出来ること(sshd_configの設定や鍵の作り方は割愛します)

手順

  1. 秘密鍵をおもむろに、”C:\ssh”配下に置きます。分かればどこでも良いです。

2. ttermpro.exeのショートカットを作ります。ttermpro.exeは大抵の場合、”C:\Program Files (x86)\teraterm”に置いてあると思います。
※ショートカットを作る際に、同じ場所にショーットカットは作れませんって怒られますが、デスクトップにショートカットを作ってから同じフォルダに戻せば大丈夫です。もちろん、好きな場所にショートカットを置いて頂いても構いません。

3. 「ttermpro.exe – ショートカット」を右クリックして「プロパティ」をクリック。「リンク先」を以下のように書き換えます。

“C:\Program Files (x86)\teraterm\ttermpro.exe” arkey22@hinata /auth=publickey /user=arkey22 /keyfile=C:\ssh\hinata_id_rsa”

※”arkey22″の部分はログインするユーザ名に、”hinata”の部分はサーバ(IPアドレスor名前解決が出来るサーバ名)に変えてね。

4. ショートカットをダブルクリックすると、何も求められずにサーバにログインできます。そしたら、そのままタスクバーにピン留めしちゃいましょう。

5. これで、タスクバーからワンクリックでサーバに接続出来るようになりました。
よく使うサーバや踏み台サーバを指定しておくと幸せになれると思います。

Linux(CentOS8)のデータをQNAP経由でDropboxと同期する

環境

  • QNAP(TS-431X2) Version 4.4.1.1101(2019/10/25)
  • CentOS Linux release 8.0.1905 (Core)

手順

  1. QNAP上のコントロールパネルで同期したい共有フォルダを作っておきます。今回はlinuxとします。権限の設定でarkey22をRead/Write可能にしています。ここで権限を設定しておかないと、CentOS8からのマウントに失敗します。
    なお、Dropbox上にもlinuxフォルダを作っておきます。(画像は割愛)

2. 1で作ったQNAP上のlinuxフォルダをCentOS8でマウントします。今回は/dataにマウントします。/dataは事前にmkdirしておきましょう。
なお、cifsでマウントするにあたって、CentOS8 minimalでインストールしているとcifs-utilsが入っていないので、”dnf install cifs-utils”でインストールする必要があります。

[arkey22@hinata]$ cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Fri Oct  4 07:26:08 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
/dev/mapper/cl-root     /                       xfs     defaults        0 0
UUID=95396d36-9752-484a-b2e3-3bbe990678dd /boot                   ext4    defaults        1 2
UUID=57C5-F6BE          /boot/efi               vfat    umask=0077,shortname=winnt 0 2
/dev/mapper/cl-home     /home                   xfs     defaults        0 0
/dev/mapper/cl-swap     swap                    swap    defaults        0 0
//192.168.0.141/linux       /data           cifs    credentials=/etc/cifspasswd,uid=1000,gid=1000,soft 0 0

[arkey22@hinata]$ df -h | grep data
//192.168.0.141/linux   1.2T  784G  385G   68% /data
[arkey22@hinata]$ ls -ld /data
drwxr-xr-x. 2 arkey22 arkey22 0 10月 26 12:46 /data
[arkey22@hinata]$

3. QNAPのAppCenterから「HBS 3 Hybrid Backup Sync」を開きます。

4. 「作成」→「一方向同期ジョブ」の順にクリックして、同期ジョブ作成画面を表示させます。同期先としてDropboxを選択してください。

5. 動機元として、QNAPのlinuxフォルダ、同期先としてDropboxのlinuxフォルダを選択します。
また、アクションを「コピー」から「ミラー」に変更します。コピーの場合はQNAP側でファイルを削除してもDropboxから削除されませんが、ミラーの場合は削除されます。完全同期したい場合はミラーを、コピーだけしたい場合はコピーを選択してください。
(ジョブ名がOne-way Sync 1になっていますが、事後に撮ったのでジョブ作成時に元から入ってるデフォ値です。適当に分かりやすい名前に変えてください。)

6. スケジュールで、リアルタイム同期を選択します。ルールは今回はいじらず、次へをクリックしてジョブを作ります。

7. ジョブが作り終わったら、「今すぐ同期」をクリックして、同期を開始します。

8.「実行中(同期済み)」と表示されればQNAPとDropboxの同期が完了です。ずっとぐるぐる回ってますが、ジョブが動いてる状態なので、それでOKです。

9. QNAPのlinuxフォルダはCentOS8の/dataにマウントされてますので、
CentOS8の/data = QNAP(linuxフォルダ) = Dropbox(linuxフォルダ)
と、QNAP経由でDropboxに自動的に同期されます。

以上で完了です。CentOS8の/data配下にフォルダやファイルを置くと、Dropboxにも反映されます。
CentOS8にDropboxをインストールすれば良いじゃんって話なんですが、QNAPにもデータを置いておきたかったので、少し回りくどいやり方になっています。

初めて乗った飛行機はセスナでした。

僕は飛行機が好きなんですが、中学生くらいの時に遊覧飛行で乗ったセスナの影響が大きいと思ってます。
今は実施していないようですが、以前はホンダエアポートでセスナで遊覧飛行をやっていました。ちょい乗りコースとか東京タワーまで行くコースとか大島まで行くコースとか色々あったんですが、当時は20分くらいのちょい乗りコースで乗りました。セスナ172です。

その時のパイロットさんが結構おちゃめな方で、60度の角度でバンクさせて旋回したり、操縦桿を握らせてくれたりしました。
60度バンクでの旋回はちょうど2Gの圧力が下方向へかかるので、腕が上がらない感じになります。普通の旅客機では60度もバンクさせることがないので、ジェットコースターにでも乗らないと味わえない感覚ですね。

たぶん本来は良くないことですが、今となっては時効だと思うので書きます。
実はちょっとだけ、セスナを操縦しました。さすがに足の操作(ラダー)はやって頂いたんですが、操縦桿は完全に僕が主導で操縦していました。
めちゃくちゃ楽しかったです。ただただ、楽しかった。

あまりにも飛行機が好きすぎて本気でパイロットを目指そうと思っていた時期もあったんですが、航空会社の視力検査がかなり厳格という話を聞いて断念しました。

今ではフライトシミュレータで遊ぶに留まっていますが、JEPPSENのチャートを読んだり、空港のMETARを読んだり、PMDGのBoeing 737-800を動かしてみたりと、浅く広く知識を深めました。

今はもう、自家用操縦士の免許を取得する気力も無いですが、プチ飛行機マニアとして知識を蓄え続けていきたいなと思います。

2019年10月現在のスキルシートについて

おもむろにスキルシートを置いておきますね。excel版とpdf版を置いておきます。

スキルシート作成時に気をつけたこと

A4一枚に収まるようにしました。また、大事な部分は色付けして少し字を大きくし、ハイライトしました。これは、お客様も見やすいし、僕としても説明が楽になるためです。
今までのゆうき少年は、過去の職務経歴をひたすらにだらだらと3ページくらいにわたって記載していました。その際の面談担当者は、全部のページを読んでいませんでした。
そこで、読みやすさと、口頭での解説のしやすさを求めた結果、A4一枚に収めることとなりました。

スキルシートで記載しきれなかった情報は口頭で伝える

これは、自己アピールとしても有効ですし、スキルシートぷらすαの価値をもたらすことが可能です。相手からしてみれば、スキルシートには記載されてないけど、そういうことも出来るんだ~となります。

まだまだスキルシート作成については勉強中です

ここをこうすれば…なんて意見は山程出てくるかと思います。個人事業主をやっているなかで、最大限重要視されるのスキルシートです。最新のIT技術を磨くのも大事ですが、自己アピールの能力も伸ばしていく必要があることを肝に銘じておく必要があります。

なんだか、そこらのブログに書いてありそうな一般的な内容になってしまいました。突出したアピール力があるわけではないので、地道に行くしか無いかなと思ってます。。。

Cisco ASA5520のconfig

自分がブログ検索で思い出せるよう、Cisco ASA5520のconfigをメモっておきます。CCNA Security取得時にごちゃごちゃいじったっきり、ほとんど触ってないので設定ぐちゃってます。logging hostが2つも設定されてたり、DNSサーバの指定がgoogleだったり宅内に設置した古いDNSサーバだったり、config自体も古いです。無駄な設定も多数入っています。
が、この設定で外部からVPN接続出来ています。。疎かな設定ですがご容赦ください。
※中古で購入した機器ですが、機器の特定を防ぐため、念の為シリアル番号やMACアドレスは伏せてます。

show version

asa5520# show version

Cisco Adaptive Security Appliance Software Version 8.2(1)
Device Manager Version 7.5(2)153

Compiled on Tue 05-May-09 22:45 by builders
System image file is "disk0:/asa821-k8.bin"
Config file at boot was "startup-config"

asa5520 up 15 days 11 hours

Hardware:   ASA5520, 512 MB RAM, CPU Pentium 4 Celeron 2000 MHz
Internal ATA Compact Flash, 256MB
BIOS Flash M50FW080 @ 0xffe00000, 1024KB

Encryption hardware device : Cisco ASA-55x0 on-board accelerator (revision 0x0)
                             Boot microcode   : CN1000-MC-BOOT-2.00
                             SSL/IKE microcode: CNLite-MC-SSLm-PLUS-2.03
                             IPSec microcode  : CNlite-MC-IPSECm-MAIN-2.04
 0: Ext: GigabitEthernet0/0  : address is 001c.5826.XXXX, irq 9
 1: Ext: GigabitEthernet0/1  : address is 001c.5826.XXXX, irq 9
 2: Ext: GigabitEthernet0/2  : address is 001c.5826.XXXX, irq 9
 3: Ext: GigabitEthernet0/3  : address is 001c.5826.XXXX, irq 9
 4: Ext: Management0/0       : address is 001c.5826.XXXX, irq 11
 5: Int: Not used            : irq 11
 6: Int: Not used            : irq 5

Licensed features for this platform:
Maximum Physical Interfaces  : Unlimited
Maximum VLANs                : 150
Inside Hosts                 : Unlimited
Failover                     : Active/Active
VPN-DES                      : Enabled
VPN-3DES-AES                 : Enabled
Security Contexts            : 2
GTP/GPRS                     : Disabled
SSL VPN Peers                : 2
Total VPN Peers              : 750
Shared License               : Disabled
AnyConnect for Mobile        : Disabled
AnyConnect for Linksys phone : Disabled
AnyConnect Essentials        : Disabled
Advanced Endpoint Assessment : Disabled
UC Phone Proxy Sessions      : 2
Total UC Proxy Sessions      : 2
Botnet Traffic Filter        : Disabled

This platform has an ASA 5520 VPN Plus license.

Serial Number: XXXXXXXX
Running Activation Key: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX
Configuration register is 0x1
Configuration last modified by enable_15 at 09:20:57.132 JST Sat Oct 12 2019
asa5520#

show running-config

asa5520# show running-config
 : Saved
 :
 ASA Version 8.2(1)
 !
 hostname asa5520
 domain-name pine.com
 enable password hogehogehogehoge encrypted
 passwd hogehogehogehoge encrypted
 names
 !
 interface GigabitEthernet0/0
  nameif inside
  security-level 100
  ip address 192.168.0.251 255.255.255.0
 !
 interface GigabitEthernet0/1
  shutdown
  nameif outside
  security-level 0
  no ip address
 !
 interface GigabitEthernet0/2
  shutdown
  no nameif
  no security-level
  no ip address
 !
 interface GigabitEthernet0/3
  shutdown
  no nameif
  no security-level
  no ip address
 !
 interface Management0/0
  no nameif
  no security-level
  no ip address
  management-only
 !
 ftp mode passive
 clock timezone JST 9
 dns domain-lookup inside
 dns server-group DefaultDNS
  name-server 8.8.8.8
  name-server 192.168.0.207
  domain-name pine.com
 same-security-traffic permit intra-interface
 access-list DefaultRAGroup_splitTunnelAcl extended permit ip 192.168.0.0 255.255.255.0 any
 pager lines 24
 logging enable
 logging timestamp
 logging trap warnings
 logging asdm warnings
 logging facility 19
 logging host inside 192.168.0.202
 logging host inside 192.168.0.205
 mtu inside 1500
 mtu outside 1500
 ip local pool Address-pool 192.168.0.110-192.168.0.120 mask 255.255.255.0
 no failover
 icmp unreachable rate-limit 1 burst-size 1
 asdm image disk0:/asdm-752-153.bin
 asdm history enable
 arp timeout 14400
 route inside 0.0.0.0 0.0.0.0 192.168.0.1 1
 timeout xlate 3:00:00
 timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
 timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
 timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
 timeout sip-provisional-media 0:02:00 uauth 0:05:00 absolute
 timeout tcp-proxy-reassembly 0:01:00
 dynamic-access-policy-record DfltAccessPolicy
  network-acl DefaultRAGroup_splitTunnelAcl
 aaa authentication ssh console LOCAL
 aaa authentication http console LOCAL
 aaa authentication telnet console LOCAL
 http server enable
 http 192.168.0.0 255.255.255.0 inside
 snmp-server host inside 192.168.0.208 community public version 2c
 no snmp-server location
 no snmp-server contact
 snmp-server community *
 snmp-server enable traps snmp authentication linkup linkdown coldstart
 sysopt connection tcpmss 1300
 no sysopt connection permit-vpn
 crypto ipsec transform-set TRANS-ESP-AES-SHA esp-aes esp-sha-hmac
 crypto ipsec transform-set TRANS-ESP-AES-SHA mode transport
 crypto ipsec security-association lifetime seconds 28800
 crypto ipsec security-association lifetime kilobytes 4608000
 crypto ipsec security-association replay disable
 crypto ipsec security-association replay window-size 1024
 crypto ipsec df-bit clear-df inside
 crypto dynamic-map inside_dyn_map 10 set transform-set TRANS-ESP-AES-SHA
 crypto map inside_map 65535 ipsec-isakmp dynamic inside_dyn_map
 crypto map inside_map interface inside
 crypto isakmp enable inside
 crypto isakmp policy 10
  authentication pre-share
  encryption aes
  hash sha
  group 5
  lifetime 2147483647
 crypto isakmp policy 20
  authentication pre-share
  encryption 3des
  hash sha
  group 2
  lifetime 2147483647
 telnet 192.168.0.0 255.255.255.0 inside
 telnet timeout 5
 ssh 192.168.0.0 255.255.255.0 inside
 ssh timeout 60
 console timeout 0
 management-access inside
 threat-detection basic-threat
 threat-detection statistics port
 threat-detection statistics protocol
 threat-detection statistics access-list
 threat-detection statistics tcp-intercept rate-interval 30 burst-rate 400 average-rate 200
 ntp server 133.243.238.243
 webvpn
 group-policy DfltGrpPolicy attributes
  vpn-tunnel-protocol IPSec l2tp-ipsec svc webvpn
 group-policy L2TP-VPN internal
 group-policy L2TP-VPN attributes
  dns-server value 8.8.8.8 4.4.4.2
  vpn-idle-timeout none
  vpn-session-timeout none
  vpn-tunnel-protocol l2tp-ipsec
  password-storage enable
  split-tunnel-policy tunnelspecified
  default-domain value pine.com
 group-policy Clientless-VPN internal
 group-policy Clientless-VPN attributes
  vpn-tunnel-protocol webvpn
  webvpn
   url-list none
 username arkey22 password hogehogehogehoge nt-encrypted
 tunnel-group DefaultRAGroup general-attributes
  address-pool Address-pool
  default-group-policy L2TP-VPN
 tunnel-group DefaultRAGroup ipsec-attributes
  pre-shared-key *
 tunnel-group DefaultRAGroup ppp-attributes
  authentication ms-chap-v2
 tunnel-group Clientless-VPN type remote-access
 tunnel-group Clientless-VPN general-attributes
  default-group-policy Clientless-VPN
 tunnel-group VPN-Client type remote-access
 tunnel-group VPN-Client general-attributes
  address-pool Address-pool
 tunnel-group VPN-Client webvpn-attributes
  group-alias home enable
  group-alias test disable
 !
 class-map ANY
  match any
 class-map inspection_default
  match default-inspection-traffic
 !
 !
 policy-map type inspect dns preset_dns_map
  parameters
   message-length maximum 512
 policy-map global_policy
  class inspection_default
   inspect dns preset_dns_map
   inspect ftp
   inspect h323 h225
   inspect h323 ras
   inspect rsh
   inspect rtsp
   inspect esmtp
   inspect sqlnet
   inspect skinny
   inspect sunrpc
   inspect xdmcp
   inspect sip
   inspect netbios
   inspect tftp
  class ANY
   set connection decrement-ttl
 !
 service-policy global_policy global
 prompt hostname context
 Cryptochecksum:696bbc96cb06a44de8532147168887ee
 : end
 asa5520#

関連リンク(本ブログ内)