digital/devices/自宅LAN
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#contents
*後期高齢者を隔離 [#uc52bca2]
後期高齢者が彼/彼女のパソコンで何かミスをしても,自宅LAN...
有線でつないでいる場合であっても,いまは非常に手頃な費用...
-[[【清水理史の「イニシャルB」】 VLANやLAGも可能な管理機...
無線LANルーターまたはルーターが複数台あり,後期高齢者が接...
*VPN [#homevpn]
いまどきはVPSが安く使えるので,往年の「自宅サーバー」の効...
**使用機材 [#y6f9aee1]
VPSを主環境として使っているが,自宅にもサーバーを置いてい...
-機材をThinkPad T540pに更新した。2018年 6月17日。[[Puppet...
1万円前後のAtom系オンボードは勧めない。かなり古いノートパ...
**SoftEther [#c6295bd5]
***導入手順 [#g71e1cae]
+Windowsパソコンを一つ用意
+VirtualBoxをインストール
+VirtualBoxにLinux (CentOS 6.9)をインストール (ver 7でも...
--VirtualBox側のNIC設定はbridge。
--Linux側のネット(eth0)設定は(1) CentOS側はDHCP割当にして...
--/etc/sysctl.conf のnet.ipv4.ip_forward = 1は不要。
+自宅LANの主ルーターで,VirtualBox上のLinuxに対してIPを固...
+Linuxで,firewall設定
--(1) SoftEther管理のためのポートと,(2) L2TP/IPsec接続の...
---当座はTCP 992, UDP 500, UDP 4500
--NAT (MASQUERADE)は不要。
+SoftEtherをインストール
--インストールから起動まではshell (sshクライアント)で行い...
+SoftEtherのWindows版サーバー管理マネジャーから初期設定
--eth0にbridge
--仮想NAT,仮想DHCPはいずれも不要。
--L2TP/IPsecを設定
+VirtualBoxのLinux仮想マシンのNICの設定でプロミスキャスタ...
+自宅LANに接続中のスマホから,ローカルIPのSoftEhterに対し...
--LAN内なので,グローバルIPやホスト名(...softehter.net)で...
+自宅LANの主ルーターで,VirtualBox上のLinuxに対して,L2TP...
--インタネットに対してこれらポートを開放することを意味す...
+自宅LAN外に接続中のスマホから,SoftEhterに対して,SoftEt...
-なお,SoftEtherクライアントからは,特に992などを対外的に...
#hr
実際の運用では、仮想マシンを[[サービスとして自動起動する...
***自分自身へのアクセス [#hbc2f5b5]
SoftEtherサーバーが仮に192.168.0.10だとして,自宅LANにVPN...
このままでも(VPNサーバーとして使う上では)特に困ることは...
+VirtulaBox側でNICを追加。MACアドレスをメモ。
+CentOS側でネットワーク設定。IPは0.0.0.0
#pre{{
vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
HWADDR=08:00:... 先ほどのMACアドレス
IPADDR=0.0.0.0
USERCTL=no
TYPE=Ethernet
IPV6INIT=no
/etc/init.d/network restart
}}
+SoftEtherサーバーマネージャーで,eth1にブリッジを設定。
--hubを選んでeth1へのブリッジを追加。既存のhubでよい。hub...
*自宅サーバー管理 [#r47472a8]
**自宅IPの確認手段 [#d5c90960]
-WANを交換したとき、アクセス制御を修正するために自宅の値...
--[[IPv4/IPv6接続判定ツール:http://kiriwake.jpne.co.jp/]]
**Windows [#keddbc7e]
上記のように、サーバーはWindows 10上のVirtualBox上のCentO...
#pre{{{
#!/usr/bin/perl
use utf8;
open(STDERR, ">&STDOUT");
#open(STDERR, ">>error.log");
use strict;
use warnings;
use CGI qw(:cgi);
my $q = CGI->new;
{
my $title = 'WMIC PROCESS';
print $q->header();
print $q->start_html(
-title=>$title,
-style => { -verbatim => 'td:nth-child(4), td:nth-child...
);
}
my $wmic = 'wmic path Win32_PerfFormattedData_PerfProc_Pr...
my @wmic = qx($wmic);
my @lines = ();
my %workingSet = ();
shift @wmic; # 1行目は空
my @head = map {$_ =~ s/\s+$//; $_} map {split(',')} shif...
push(@head,'rate');
for (@wmic) {
chomp;
my @headers = @head;
my %line = ();
my @cols = split(',');
for my $key (@headers) {
$line{$key} = shift @cols // 0;
$line{$key} =~ s/\s+$//; # ゴミ取り
}
push @lines, {%line};
$workingSet{$line{'Name'}} = $line{'WorkingSet'}; # rate...
}
# 配列の順序を入れ替え
@head[4,5] = @head[5,4];
print qq(<table border>\n);
# ソート列を変えて2回呼ぶ。
&sort_print('PercentProcessorTime');
&sort_print('WorkingSet');
print qq(</table>\n);
exit;
# -----------------------------------終わり
sub sort_print {
my ($sortKey) = $_[0];
my @lines = sort { $b->{$sortKey} <=> $a->{$sortKey} } @...
# spliceで原本を壊さないようmyを使う。
splice(@lines,10);
print qq(<tr>);
map {printf qq(<td>%s),$_} (@head);
print qq(</tr>\n);
for (@lines) {
my %line = %{$_};
next if $sortKey eq 'PercentProcessorTime' && $line{'Pe...
print qq(<tr>);
$line{'rate'} = sprintf q(%.2f%%), $line{'WorkingSet'}/...
if ($line{'Name'} eq '_Total') {
$line{'rate'} = '';
}
for (@head) {
$line{$_} =~ s/\s$//; # ゴミ取り
if ($line{$_} !~ /\D/) {
# 数字なら桁取り。
$line{$_} =~ s/(\d)(?=(\d\d\d)+(?!\d))/$1,/g;
}
printf qq(<td>%s),$line{$_};
}
print qq(</tr>\n);
}
}
}}}
*IPv6 [#n6b86749]
インターネット上のサーバーに「自宅からのみアクセス可」の...
*WAN [#t22afd84]
-フレッツ光を新規に引いた。(契約は楽天ひかり。コラボ。)...
*Wake On LAN [#mf686e8b]
塩田さんのスクリプト([[Windows 10 Wake On LAN(WoL)入門...
-こんな内容のBATファイルをデスクトップ等に置く
powershell -ExecutionPolicy RemoteSigned -File C:\...\Wa...
WakeDell3020.ps1の中には、直接塩田さんのスクリプト(関数...
-WakeDell3020.ps1
#pre{{
WakeOnLAN
WakeOnLAN "F8-xx-xx-xx-xx-xx" "192.168.1.255"
}}
終了行:
#contents
*後期高齢者を隔離 [#uc52bca2]
後期高齢者が彼/彼女のパソコンで何かミスをしても,自宅LAN...
有線でつないでいる場合であっても,いまは非常に手頃な費用...
-[[【清水理史の「イニシャルB」】 VLANやLAGも可能な管理機...
無線LANルーターまたはルーターが複数台あり,後期高齢者が接...
*VPN [#homevpn]
いまどきはVPSが安く使えるので,往年の「自宅サーバー」の効...
**使用機材 [#y6f9aee1]
VPSを主環境として使っているが,自宅にもサーバーを置いてい...
-機材をThinkPad T540pに更新した。2018年 6月17日。[[Puppet...
1万円前後のAtom系オンボードは勧めない。かなり古いノートパ...
**SoftEther [#c6295bd5]
***導入手順 [#g71e1cae]
+Windowsパソコンを一つ用意
+VirtualBoxをインストール
+VirtualBoxにLinux (CentOS 6.9)をインストール (ver 7でも...
--VirtualBox側のNIC設定はbridge。
--Linux側のネット(eth0)設定は(1) CentOS側はDHCP割当にして...
--/etc/sysctl.conf のnet.ipv4.ip_forward = 1は不要。
+自宅LANの主ルーターで,VirtualBox上のLinuxに対してIPを固...
+Linuxで,firewall設定
--(1) SoftEther管理のためのポートと,(2) L2TP/IPsec接続の...
---当座はTCP 992, UDP 500, UDP 4500
--NAT (MASQUERADE)は不要。
+SoftEtherをインストール
--インストールから起動まではshell (sshクライアント)で行い...
+SoftEtherのWindows版サーバー管理マネジャーから初期設定
--eth0にbridge
--仮想NAT,仮想DHCPはいずれも不要。
--L2TP/IPsecを設定
+VirtualBoxのLinux仮想マシンのNICの設定でプロミスキャスタ...
+自宅LANに接続中のスマホから,ローカルIPのSoftEhterに対し...
--LAN内なので,グローバルIPやホスト名(...softehter.net)で...
+自宅LANの主ルーターで,VirtualBox上のLinuxに対して,L2TP...
--インタネットに対してこれらポートを開放することを意味す...
+自宅LAN外に接続中のスマホから,SoftEhterに対して,SoftEt...
-なお,SoftEtherクライアントからは,特に992などを対外的に...
#hr
実際の運用では、仮想マシンを[[サービスとして自動起動する...
***自分自身へのアクセス [#hbc2f5b5]
SoftEtherサーバーが仮に192.168.0.10だとして,自宅LANにVPN...
このままでも(VPNサーバーとして使う上では)特に困ることは...
+VirtulaBox側でNICを追加。MACアドレスをメモ。
+CentOS側でネットワーク設定。IPは0.0.0.0
#pre{{
vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
HWADDR=08:00:... 先ほどのMACアドレス
IPADDR=0.0.0.0
USERCTL=no
TYPE=Ethernet
IPV6INIT=no
/etc/init.d/network restart
}}
+SoftEtherサーバーマネージャーで,eth1にブリッジを設定。
--hubを選んでeth1へのブリッジを追加。既存のhubでよい。hub...
*自宅サーバー管理 [#r47472a8]
**自宅IPの確認手段 [#d5c90960]
-WANを交換したとき、アクセス制御を修正するために自宅の値...
--[[IPv4/IPv6接続判定ツール:http://kiriwake.jpne.co.jp/]]
**Windows [#keddbc7e]
上記のように、サーバーはWindows 10上のVirtualBox上のCentO...
#pre{{{
#!/usr/bin/perl
use utf8;
open(STDERR, ">&STDOUT");
#open(STDERR, ">>error.log");
use strict;
use warnings;
use CGI qw(:cgi);
my $q = CGI->new;
{
my $title = 'WMIC PROCESS';
print $q->header();
print $q->start_html(
-title=>$title,
-style => { -verbatim => 'td:nth-child(4), td:nth-child...
);
}
my $wmic = 'wmic path Win32_PerfFormattedData_PerfProc_Pr...
my @wmic = qx($wmic);
my @lines = ();
my %workingSet = ();
shift @wmic; # 1行目は空
my @head = map {$_ =~ s/\s+$//; $_} map {split(',')} shif...
push(@head,'rate');
for (@wmic) {
chomp;
my @headers = @head;
my %line = ();
my @cols = split(',');
for my $key (@headers) {
$line{$key} = shift @cols // 0;
$line{$key} =~ s/\s+$//; # ゴミ取り
}
push @lines, {%line};
$workingSet{$line{'Name'}} = $line{'WorkingSet'}; # rate...
}
# 配列の順序を入れ替え
@head[4,5] = @head[5,4];
print qq(<table border>\n);
# ソート列を変えて2回呼ぶ。
&sort_print('PercentProcessorTime');
&sort_print('WorkingSet');
print qq(</table>\n);
exit;
# -----------------------------------終わり
sub sort_print {
my ($sortKey) = $_[0];
my @lines = sort { $b->{$sortKey} <=> $a->{$sortKey} } @...
# spliceで原本を壊さないようmyを使う。
splice(@lines,10);
print qq(<tr>);
map {printf qq(<td>%s),$_} (@head);
print qq(</tr>\n);
for (@lines) {
my %line = %{$_};
next if $sortKey eq 'PercentProcessorTime' && $line{'Pe...
print qq(<tr>);
$line{'rate'} = sprintf q(%.2f%%), $line{'WorkingSet'}/...
if ($line{'Name'} eq '_Total') {
$line{'rate'} = '';
}
for (@head) {
$line{$_} =~ s/\s$//; # ゴミ取り
if ($line{$_} !~ /\D/) {
# 数字なら桁取り。
$line{$_} =~ s/(\d)(?=(\d\d\d)+(?!\d))/$1,/g;
}
printf qq(<td>%s),$line{$_};
}
print qq(</tr>\n);
}
}
}}}
*IPv6 [#n6b86749]
インターネット上のサーバーに「自宅からのみアクセス可」の...
*WAN [#t22afd84]
-フレッツ光を新規に引いた。(契約は楽天ひかり。コラボ。)...
*Wake On LAN [#mf686e8b]
塩田さんのスクリプト([[Windows 10 Wake On LAN(WoL)入門...
-こんな内容のBATファイルをデスクトップ等に置く
powershell -ExecutionPolicy RemoteSigned -File C:\...\Wa...
WakeDell3020.ps1の中には、直接塩田さんのスクリプト(関数...
-WakeDell3020.ps1
#pre{{
WakeOnLAN
WakeOnLAN "F8-xx-xx-xx-xx-xx" "192.168.1.255"
}}
ページ名: