【tech】ヤフオクの中古で揃えた自宅サーバ・ルータ検証環境



全部中古で買いそろえました。笑
2019年になっても、これからサーバやネットワークのお勉強を始める初心者の方にはおすすめのセットなのではないでしょうか?何より、わたしと同じ環境に整えてもらえれば私もできるかぎりサポート致しますし。笑

このセットであれば、サーバ(ワークステーション)・ルータなど一式で5万円位でそろってしまうので(クラウドなどでお勉強を始める事も可能ですが)やっぱり実物をみてイメージしながら理解するのが簡単だと思います!

ワークステーションは45000円位で、基本的にはCentOS7を使用して、KVMや時々別のHDDのESXiをインストールして勉強しています!IX2015は5台で送料込み5000円位、RTX1100は送料込みで6000円位でした。全部ヤフオクです。笑 本当はRTX1200が欲しかったのですが、RTXでLAG(リンクアグリゲーション)を組んでみたかったので、RTX1200だと2台買うと、まだ1台当たり10000円位なので、合計20000円かかってしまうので諦めました。泣


憧れの1Gポート 笑

今使用しているのは下記の通りで・・

・WS(ワークステーション)
HP Z800
CPU Intel Xeon x5650 (6c12t) x2
RAM 8GB x6 4GB x3 合計56GB
HDD 500GB x4

・NW機器(ルータ/スイッチ)
NEC UNIVERGE IX2015 x5台
Firmware 8.37

NEC UNIVERGE IX2105 x4台

YAMAHA RTX810 x1台
YAMAHA RTX1210 x1台

上に書いた通り、次は1Gポート搭載のNW機器が欲しいです。笑
それと、やっぱりおさえておきたいCISCOとJUNIPER!笑

どなたか余ってる省電力のCISCOとjuniperください!!笑


久しぶりにみてみると、モバイルバッテリーもメモリもSSDもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のRedmineの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】Rubyのbundlerでpermission deniedエラー




ubuntu1804にRedmine4.0をインストールしようとしているのですが、思っていたよりハマってしまっていて、勉強になっていてとても楽しいです。笑
インストールできました!
nginxで動かしています!

rubyのPKG管理ツールのBundlerを使用してGem PKGをインストールしようとしているのですが、permmision deniedがでたので解決方法を調べたメモです。

環境


ホストOS:Windows10
仮想化:virtualbox
ゲストOS:ubuntu1804
ユーザ・グループ:red-test

・原因
エラーログに記載されているファイルの権限エラー

・解決方法
ファイルへ権限付与

・エラーログ
Errno::EACCES: Permission denied @ rb_sysopen -
/var/lib/redmine/vendor/bundle/ruby/2.5.0/extensions/x86_64-linux/2.5.0/nokogiri-1.9.1/gem_make.out

手順



・ディレクトリの移動
cd /var/lib/redmine/vendor/bundle/ruby/2.5.0/extensions/x86_64-linux/2.5.0

・権限の確認
ls -l


drwxr-xr-x 3 red-test red-test 4096 12月 26 00:47 ./
drwxr-xr-x 3 red-test red-test 4096 12月 26 00:35 ../
drwxr-xr-x 2 root root 4096 12月 26 00:47 nokogiri-1.9.1/


→所有者・グループがrootのなのでpermmision deniedエラーが出ていると推測

・権限の変更
sudo chown -R red-test:red-test nokogiri-1.9.1/
→-Rオプションは再帰的に実行

これでコマンドの実行はできましたが、この問題を解決できても新たな問題にあたってRedmine4のインストールはできませんでした。泣笑

引き続き頑張ります!

ubuntu@ubuntu-VirtualBox:/var/lib/redmine$ sudo -u red-test bundle install --without development test --path vendor/bundle
`/home/ubuntu` is not writable.
Bundler will use `/tmp/bundler/home/ubuntu' as your home directory temporarily.
The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x64-mingw32, x86-mswin32. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x64-mingw32 x86-mswin32`.
Fetching gem metadata from https://rubygems.org/..........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies...
Using rake 12.3.2
Using concurrent-ruby 1.1.4
Using i18n 0.7.0
Using minitest 5.11.3
Using thread_safe 0.3.6
Using tzinfo 1.2.5
Using activesupport 5.2.2
Using builder 3.2.3
Using erubi 1.8.0
Using mini_portile2 2.4.0
Fetching nokogiri 1.9.1
Installing nokogiri 1.9.1 with native extensions
Errno::EACCES: Permission denied @ rb_sysopen -
/var/lib/redmine/vendor/bundle/ruby/2.5.0/extensions/x86_64-linux/2.5.0/nokogiri-1.9.1/gem_make.out
An error occurred while installing nokogiri (1.9.1), and Bundler
cannot continue.
Make sure that `gem install nokogiri -v '1.9.1' --source
'https://rubygems.org/'` succeeds before bundling.


In Gemfile:
  rails was resolved to 5.2.2, which depends on
    actioncable was resolved to 5.2.2, which depends on
      actionpack was resolved to 5.2.2, which depends on
        actionview was resolved to 5.2.2, which depends on
          rails-dom-testing was resolved to 2.0.3, which depends on
            nokogiri



楽天トラベル

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

【tech】ubuntu1804 LTSのsudo apt-get updateでエラー



ubuntでエラーが出たので色々調べたメモです。
ubuntu1804でapt-get updateしようとするとエラーが出てupdateできませんでした。
原因はセキュリティソフトの関係でPKGがgetできなかった?という事でしょうか。。

環境


ホストOS:windows10
仮想化:virtualbox
ゲストOS:ubuntu1804

実は、原因・解決策がはっきりとはわかりませんでした。。。

色々と調べていると、セキュリティソフトのカスペルスキーをオフにしたら解決したという記事を見たので、わたしも参考にして、Windows WefenderのFirewallをオフにしてみたところupdateができました。


というよりは、、update最中にFirewallを切ってしまったので、結局のところFWを切ったせいでupdateに成功したのか何なのかわからないんです。。。
よくないですよね、あと、connection failのログを見た感じだと、firewallを切らなくても80番ポートを開けてあげればよかったんですよね?

以下エラーログです


ubuntu@ubuntu-VirtualBox:~$ sudo apt-get update
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Hit:2 http://jp.archive.ubuntu.com/ubuntu bionic InRelease
Hit:3 http://jp.archive.ubuntu.com/ubuntu bionic-updates InRelease
Hit:4 http://jp.archive.ubuntu.com/ubuntu bionic-backports InRelease
Hit:5 http://archive.ubuntulinux.jp/ubuntu bionic InRelease
Hit:6 http://archive.ubuntulinux.jp/ubuntu-ja-non-free bionic InRelease
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Err:1 http://security.ubuntu.com/ubuntu bionic-security InRelease
Connection failed [IP: 91.189.91.26 80]
Reading package lists... Done
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/bionic-security/InRelease Connection failed [IP: 91.189.91.26 80]
W: Some index files failed to download. They have been ignored, or old ones used instead.


久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】centos7のfirewallにzoneを追加するメモ

CentOS7を使用していて、publicのzoneを残したままfirewallにオリジナルのfirewallのzoneを追加する方法を調べたメモです。CentOS7からfirewalldになっているのでCetOS6で使い慣れている人には少し使いづらいですね、

以下、CentOSのFirewalldで独自のゾーンを追加する方法です。

環境


CentOS7.5
追加するfirewallのZONE:Manage


・ゾーンの確認
firewall-cmd --get-zones
→ここに独自の「manage」というzoneを追加しようと思います。

・全てのzoneとzone毎の設定内容を確認
firewall-cmd --list-all-zones

・既存のzoneファイルディレクトリへ移動
cd /etc/firewalld/zones/

・既存ファイルを確認
ls

・punbicファイルをコピーして独自のzoneを定義する。
cp -p public.xml manage.xml
(-pオプションは権限なども丸ごとコピーみたいな感じです。詳しくはググってください笑)

・ファイルが作られたことを確認
ls

・viで開いて編集します
vi manage.xml

以下はサンプルです。
編集した所は
「short」タグ「description」タグのところです

<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Manage</short>
  <description>Custom Zone. Only allow ssh connection from Manage.</description>
  <service name="dhcpv6-client"/>
  <service name="ssh"/>
</zone>

・編集内容を確認します
cat manage.xml

・編集後はfirewalldを再起動すればzoneが追加されます。
systemctl restart firewalld

・作成したゾーンが追加されているか確認
firewall-cmd --get-zones

以下作業ログです


[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# firewall-cmd --get-zones
block dmz drop external home internal public trusted work
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# firewall-cmd --list-all-zones
block
target: %%REJECT%%
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

dmz
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

drop
target: DROP
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

external
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh
ports:
protocols:
masquerade: yes
forward-ports:
source-ports:
icmp-blocks:
rich rules:

home
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh mdns samba-client dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

internal
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh mdns samba-client dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

public (active)
target: default
icmp-block-inversion: no
interfaces: enp0s3 enp0s8
sources:
services: dhcpv6-client ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

trusted
target: ACCEPT
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

work
target: default
icmp-block-inversion: no
interfaces:
sources:
services: ssh dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# cd /etc/firewalld/zones/
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# ls
public.xml
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# cp -p public.xml manage.xml
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# ls
manage.xml public.xml
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# vi manage.xml

"manage.xml" 7L, 315C<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>For use in public areas. You do not trust the other computers  on networks to not harm your computer. Only selected incoming connections aree accepted.</description>
  <service name="dhcpv6-client"/>
  <service name="ssh"/>
</zone>

[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# cat manage.xml

<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Manage</short>
  <description>Custom Zone. Only allow ssh connection from Manage.</description>
  <service name="dhcpv6-client"/>
  <service name="ssh"/>
</zone>

[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# systemctl restart firewalld
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# firewall-cmd --get-zones

block dmz drop external home internal manage public trusted work
[root@localhost zones]#
[root@localhost zones]#
[root@localhost zones]# exit

【tech】Azure上のCentOS7へnginxをインストールするメモ



Azureを使い始めて間もないですが、まずは、ずっと触ろうと思っていたnginxを触ってみようと思います。色々と調べていると、クラウド上にWORDPRESSを構築している人はnginxをロードバランサーとしてフロントに立てて、スタティックIPをあてて、その後ろで静的コンテンツと動的コンテンツを配信するような仕組みで作っているようです。

書いていてよくわかっていませんが、(笑)作っていくうちにわかってくるものだと信じてまずはnginxをインストールするところまでを手順のメモとして書き残します!

環境


Azure VirtualMachine
サイズ:Standard B1s (1 vcpu 数、1 GB メモリ)




・リポジトリの追加
sudo vi /etc/yum.repos.d/nginx.repo


[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1


・nginxのインストール
sudo yum -y install nginx

・nginxの自動起動
sudo systemctl enable nginx

・nginxの起動
sudo systemctl start nginx

・アクセス確認(nginxをインストールしたサーバのIP)
http://40.50.60.xx/
 ※↑のIPアドレスはサンプルです

ここでアクセスできなかった時はfirewallの設定を見てみましょう。

・firewallの設定確認
firewall-cmd --list-service
→httpがある事を確認

・http/httpsの許可を追加
firewall-cmd --add-service=http
firewall-cmd --add-service=https

・firewallの再起動
firewall-cmd --reload

ひとまずインストールはここまでです。
明日はリバースプロキシの設定に挑戦しようと思います。

別件ですが、AzureのPaaSサービスのAzureSQLDatabaseの作成と、SSMS(SQL Server Management Studio)を使用した接続のメモ手順です!よかったら見てください!

【tech】AzureSQLDatabaseの作成からローカルPCからの接続までのメモ



楽天トラベル

久しぶりにみてみると、モバイルバッテリーもメモリもSSDもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のRedmineの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)