Wpisy otagowane ‘FreeBSD’

Zliczanie ruchu do i z jail’a na FreeBSD

piątek, 27 Czerwiec 2008

Rozwiązanie mało eleganckie. Wersja bardzo wczesna, potrzeba sporych poprawek i warunków (sprawdzanie modułu ipfw(8), sprawdzanie czy ipfw włączone, itp.).

Łata na plik uruchamiający jail’e(8) (/etc/rc.d/jail)

— /etc/rc.d/jail Tue Sep 11 18:44:44 2007
+++ /tmp/jail Tue Jul 1 08:14:11 2008
@@ -37,6 +37,8 @@ init_variables()
eval _exec=\”\$jail_${_j}_exec\”
eval _exec_start=\”\${jail_${_j}_exec_start:-${jail_exec_start}}\”
eval _exec_stop=\”\${jail_${_j}_exec_stop:-${jail_exec_stop}}\”
+ eval _ipfwrulenoin=\”\$jail_${_j}_ipfwrulenoin\”
+ eval _ipfwrulenoout=\”\$jail_${_j}_ipfwrulenoout\”
if [ -n "${_exec}" ]; then
# simple/backward-compatible execution
_exec_start=”${_exec}”
@@ -329,6 +331,14 @@ jail_start()
_jail_id=$(head -1 ${_tmp_jail})
tail +2 ${_tmp_jail} >${_consolelog}
echo ${_jail_id} > /var/run/jail_${_jail}.id
+ if [ -n "${_ipfwrulenoin}" ]; then
+ /sbin/ipfw -q delete ${_ipfwrulenoin}
+ /sbin/ipfw add ${_ipfwrulenoin} count all from any to ${_ip} jail ${_jail_id}
+ fi
+ if [ -n "${_ipfwrulenoout}" ]; then
+ /sbin/ipfw -q delete ${_ipfwrulenoout}
+ /sbin/ipfw add ${_ipfwrulenoout} count all from ${_ip} to any jail ${_jail_id}
+ fi
else
jail_umount_fs
if [ -n "${_interface}" ]; then

Do /etc/rc.conf dodać następujące linie:

jail_example_ipfwrulenoin (int): Numer reguły dla ruchu przychodzącego
jail_example_ipfwrulenoout (int): Numer reguły dla ruchu wychodzącego

…i jeszcze tylko testy. Powyższe, to rozważania czysto teoretyczne ;-)

Make love, not war!

poniedziałek, 9 Czerwiec 2008

C:\Documents and Settings\Administrator>make love
Nazwa ‘make’ nie jest rozpoznawana jako polecenie wewnętrzne lub zewnętrzne, program wykonywalny lub plik wsadowy.
C:\Documents and Settings\Administrator>ver
Microsoft Windows 2000 [Wersja 5.00.2195]

guzik@abg-ng ~ $ make love
make: *** Brak reguł do wykonania obiektu `love’. Stop.
guzik@abg-ng ~ $ uname -sr
Linux 2.6.25-gentoo-r4

[root@bastard ~]# make love
make: don’t know how to make love. Stop in /root.
[root@bastard ~]# uname -sr
OpenBSD 4.3

[guzik@silent ~]$ make love
Not war.
[guzik@silent ~]$ uname -sr
FreeBSD 7.0-RELEASE