/etc/ssh/sshd_config
# 鍵認証を強要する
PasswordAuthentication no
# 認証を許可するユーザーを指定する
AllowUser usera userb userc
/etc/ssh/sshd_config
# 鍵認証を強要する
PasswordAuthentication no
# 認証を許可するユーザーを指定する
AllowUser usera userb userc
ゾーン一覧を表示
firewall-cmd –list-all-zones
起動時にI/Fのzoneを設定する
ifcfg-***に
ZONE=zoneを追加
デフォルトゾーンの表示
firewall-cmd –get-default-zone
デフォルトゾーンの設定
firewall-cmd –set-default-zone zone
rpmbuild -bi selinux-policy.spec –define “BUILD_MINIMUM 0” –define “BUILD_OLPC 0” –define “BUILD_MLS 0”
mod_auth_pgsqlのApache2.4への対応。
mod_authn_dbdだとDBの指定がhttpd.confしかできないみたいなので、mod_auth_pgsqlをApache2.4に対応させてみた。
(認証モジュール関連がApache2.0系統からかなり替わっているようで、mod_autn_fileと同じようなI/Fを使用して認証処理をするようにしました。)
需要は分かりませんが・・・。
Group認証とかは使えないかもしれませんが、
とりあえず公開します。
Apache2.4.2にて動作確認。
以下にSRC.RPMとパッチを置いときます。
http://www.sky-air.net/dat/mod_auth_pgsql/
IPv6 Launch 6/6/2012
IPv6対応しましょうイベントが始まります。
http://test-ipv6.com/にて、自分の環境がIPv6に対応できるかテストできます。
IPアドレスの枯渇により、インターネットに接続できるコンピューター数に限界が来つつあります。
そこで、IPv6が登場してきました。
まだ、スタンダードになるか分かりませんが今考えられている現実的な技術です。
sky-air.netでも、IPv6普及のため対応しました。
フレッツ網等でインターネットに接続「できない」IPv6アドレスが割り当てられている場合、当サイトが開きにくくなるかと思われます。
その場合は、http://v4.sky-air.net/ にアクセス下さい。
WakeUP ON LANのPerlでの実装。
WEBサーバーにCGIとして設置して、
外部からHTTPでサーバーと同じネットワークのPCが起動できる。
起動したらそのPCをVNCやらでリモート操作なりなんなりと。。
#!/usr/bin/perl #------------------------------------------------- # POWERON #------------------------------------------------- # Created by takuma # Distributed in http://www.sky-air.net/ # Use at your own risk. #------------------------------------------------- #------------------------------------------------- # Configure #------------------------------------------------- # IP addr to send # 送信対象IPアドレス # ブロードキャストアドレスを指定すべき $CFG{'IP'} = "192.168.0.255"; # PORT to send (1-65535 to use) # 送信ポート (1~65535 なんでも良い) $CFG{'PORT'} = "49245"; # MAC addr of power on computer # 起動対象PC MACアドレス $CFG{'MAC'} = "12-34-56-78-9A-BC"; #------------------------------------------------- # Code #------------------------------------------------- use Socket; print "Content-type: text/html\n\n"; print "WakeUP ON LAN Start!!<br />"; for ($n = 0; $n < 3; $n++) { &PowerON(); } print "Finished!!<br />"; sub PowerON { my ($strSockAddr); my ($i); my (@SendData); my (@MacData); # split mac addr @MacData = map {hex($_)} split(/\-/, $CFG{'MAC'}); # Header push (@SendData, (0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF)); # Data for ($i = 0; $i < 16; $i++) { push (@SendData, @MacData); } # send... socket(SOCKET, PF_INET, SOCK_DGRAM, getprotobyname("udp")); binmode(SOCKET); setsockopt(SOCKET, SOL_SOCKET, SO_BROADCAST, 1); $strSockAddr = pack_sockaddr_in($CFG{'PORT'}, inet_aton($CFG{'IP'})); send(SOCKET, pack("C*", @SendData), 0, $strSockAddr); close(SOCKET); }
アセンブラソース見てたらこんなのが出てたのでメモ。
特殊な演算をしていると思ったら実は10で割っているだけだった・・・。
IPv4も枯渇してきてそろそろIPv6の時代ですが、
Linuxルーターで市販ルーターと同じようにIPv6パススルーを実装してみた。
IPv6パススルーはIPv6のパケットのみブリッジすることで実現する。
bridgeするためにbridge-utils
IPv6以外のパケットはブリッジしないためにebtablesをそれぞれインストール。
yum install ebtables yum install bridge-utils
IPv6パケット以外をブリッジしないように設定するため、
以下の設定をする。
ebtablesの使い方はiptablesと同じ。
ebtables -t broute -P BROUTING DROP ebtables -t broute -A -p IPv6 -i ethN -j ACCEPT ebtables -t broute -A -p IPv6 -i ethM -j ACCEPT
ifcfg-ethN/ifcfg-ethMにBRIDGE=brXを指定することで
ifcfg-ethNとifcfg-ethMの間をブリッジするが、
BRIDGE=brXとブリッジ設定をすると、
ethNとethMにはIPv4アドレスが割り当てられなくなってしまうため、
その問題を修正する。
/etc/sysconfig/network-scripts/ifup-ethの以下のあたりを修正。
BRIDGEで検索かけると出ると思われる。
最後のexit 0が修正前は無条件で実行され続きのIPv4アドレス割り当て処理等がカットされるようになっているが、追加した処理により、
ifcfg-ethNMにSPECIAL_BRIDGE=yesが指定されている場合は
ブリッジしている状態でもIPv4アドレスが割り当てられるようになる。
# If the device is part of a bridge, add the device to the bridge if [ -n "${BRIDGE}" ] && [ -x /usr/sbin/brctl ]; then if [ ! -d /sys/class/net/${BRIDGE}/bridge ]; then /usr/sbin/brctl addbr ${BRIDGE} 2>/dev/null fi /sbin/ip addr flush dev ${DEVICE} 2>/dev/null /sbin/ip link set dev ${DEVICE} up if [ -n "$ETHTOOL_OPTS" ] ; then /sbin/ethtool -s ${REALDEVICE} $ETHTOOL_OPTS fi [ -n "${LINKDELAY}" ] && /bin/sleep ${LINKDELAY} /usr/sbin/brctl addif ${BRIDGE} ${DEVICE} # Upon adding a device to a bridge, # it's necessary to make radvd reload its config [ -r /var/run/radvd/radvd.pid ] && kill -HUP $(cat /var/run/radvd/radvd.pid) #↓追加 if [ "${SPECIAL_BRIDGE}" != "yes" ]; then #↑追加 exit 0 #↓追加 fi #↑追加 fi
以下のような内容でifcfg-brX (Xは好きな数字)を作成する。
DEVICE=brX ONBOOT=yes TYPE=Bridge
ブリッジしたいethデバイスの両方に
以下の設定を追加。
brXは4で指定したものを使用。
BRIDGE=brX SPECIAL_BRIDGE=yes
chkconfig --level 2345 ebtables on
/etc/init.d/network restart
PPPoEをパスするーする場合は2.でした設定のIPv6をやめて、
以下の感じにする。
#↓やめる ebtables -t broute -A -p IPv6 -i ethN -j ACCEPT ebtables -t broute -A -p IPv6 -i ethM -j ACCEPT #↑ここまで ebtables -t broute -A BROUTING -p PPP_DISC -s ethNのMACアドレス -j DROP ebtables -t broute -A BROUTING -p PPP_DISC -s ethMのMACアドレス -j DROP ebtables -t broute -A BROUTING -p PPP_DISC -d ethNのMACアドレス -j DROP ebtables -t broute -A BROUTING -p PPP_DISC -d ethMのMACアドレス -j DROP ebtables -t broute -A BROUTING -p PPP_SES -s ethNのMACアドレス -j DROP ebtables -t broute -A BROUTING -p PPP_SES -s ethMのMACアドレス -j DROP ebtables -t broute -A BROUTING -p PPP_SES -d ethNのMACアドレス-j DROP ebtables -t broute -A BROUTING -p PPP_SES -d ethMのMACアドレス -j DROP ebtables - t broute -A BROUTING -p PPP_DISC -i ethN -j ACCEPT ebtables - t broute -A BROUTING -p PPP_DISC -i ethM -j ACCEPT ebtables - t broute -A BROUTING -p PPP_SES -i ethN -j ACCEPT ebtables - t broute -A BROUTING -p PPP_SES -i ethM -j ACCEPT
VMWareではvmnetインターフェースで仮想ネットワークを構築したりできる。
Linux版のVMWare Playerで仮想ネットワークを設定したときのメモ。
#cp -p /usr/bin/vmware-acetool /usr/bin/vmware-netcfg
コピーしたvmware-netcfgの以下の設定を編集
ROOT_REQUIRED=noから
ROOT_REQUIRED=yesに変更。
#ln -s /usr/lib/vmware/bin/appLoader /usr/lib/vmware/bin/vmware-netcfg
これでGNOMEなどデスクトップからvmware-netcfgを実行すると、
rootのパスワードを要求されるので、rootパスワードを入力すると
設定画面が表示されるので、ネットワーク設定する。
以下のような画面が出るので好きに設定できる。
画像では、vmnet0をeth2にブリッジしている。
デフォルトで作成されるvmnet1とかvmnet8を使わないのであれば、
削除することも可能。