FroggyBlog

Signer une Applet ou java.security.AccessControlException: access denied

by on juin.08, 2011, under Frugalware, GNU/Linux et BSD

Si vous rencontrez cette erreur :
java.security.AccessControlException: access denied, c’est juste que vous devez signer votre applet.

Vous pouvez avoir cette erreur avec l’applet vnc de tighvnc :

Installation :
# pacman-g2 -S tightvnc

Démarrer vnc :
$ vncserver -geometry 1024x600 -httpd /usr/lib/vnc/classes/ -depth 24:1

Et l’applet de vnc va échouer avec java.security.AccessControlException: access denied

La solution :
Signer l’applet /usr/lib/vnc/classes/VncViewer.jar

1. Création du certificat :
# pacman-g2 -S openjre

$ /usr/lib/jvm/java-6-openjdk/jre/bin/keytool -genkey

$ /usr/lib/jvm/java-6-openjdk/jre/bin/keytool -selfcert

2. Signer l’applet :
# pacman-g2 -S openjdk

Vous devez avoir le droit d’écrire dans /usr/lib/vnc/classes le temps de signer l’applet.

$ /usr/lib/jvm/java-6-openjdk/bin/jarsigner -storepass KeySorePassword -keypass KeyPassPassword /usr/lib/vnc/classes/VncViewer.jar mykey

Maintenant, l’applet de vnc est accessible dans votre navigateur.

Leave a Comment : more...

Proxy personnel en 5minutes

by on juin.07, 2011, under Frugalware, GNU/Linux et BSD, Trucs et astuces

Tinyproxy est un petit proxy comme son l’indique pour les systèmes POSIX.

Il est disponible pour Frugalware

Installation :
# pacman-g2 -S tinyproxy

Configuration :
Editer le fichier /etc/tinyproxy.conf

Il suffit d’ajouter les adresses IP qui peuvent utiliser ce proxy :
Allow 127.0.0.1
Allow XX.XX.XX.XX

Par défaut tinyproxy utilise le port 1024 :
Port 1024

Activer/démarrer le service :
# systemctl enable tinyproxy.service
# systemctl start tinyproxy.service

Securiser tinyproxy par tunnel SSH :
Il suffit juste de créer un tunnel ssh sur le port 1024 avec le serveur qui héberge tinyproxy et de seulement autoriser l’adresse IP 127.0.0.1 dans /etc/tinyproxy.conf .

Vous pouvez utiliser aussi cette solution si pour une raison X ou Y vous êtes derrière un pare feu qui bloque les proxy.

Dans votre navigateur il suffit d’indiquer un proxy localhost sur le port 1024.

4 Comments : more...

vpn en 5 minutes

by on juin.06, 2011, under Frugalware, GNU/Linux et BSD, Trucs et astuces

OpenVPN permet à des pairs de s’authentifier entre eux à l’aide d’une clé privée partagée à l’avance, de certificats ou de couples de noms d’utilisateur/mot de passe. Il utilise de manière intensive la bibliothèque d’authentification OpenSSL ainsi que le protocole SSLv3/TLSv1. Disponible sous Solaris, Linux, OpenBSD, FreeBSD, NetBSD, Mac OS X, Windows 2000, XP, Vista et 7, il offre aussi de nombreuses fonctions de sécurité et de contrôle.
(source wikipedia)

Récemment, j’ai ajouté le support PAM à openvpn dans frugalware.

Installation de Openvpn :
# pacman-g2 -S openvpn

Configuration :
# cp /usr/share/doc/openvpn-2.1.3/easy-rsa/2.0/ /etc/openvpn/easy-rsa/ -R
# cd /etc/openvpn/easy-rsa/
# nano vars
Change value of :
export KEY_COUNTRY="US"
export KEY_PROVINCE="CA"
export KEY_CITY="SanFrancisco"
export KEY_ORG="Fort-Funston"
export KEY_EMAIL="me@myhost.mydomain"

# source ./vars
# ./clean-all
# ./build-ca
# ./build-dh

Génération des clés du serveur :
# ./build-key-server server
# openvpn --genkey --secret keys/ta.key

Installation des clés :
# cd keys/
# cp ca.crt dh1024.pem server.key ta.key server.crt ../../

Edition du fichier de configuration coté serveur :
/etc/openvpn/openvpn.conf

port 1194
proto udp
dev tun0

ca ca.crt
cert server.crt
key server.key
dh dh1024.pem

server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt

client-to-client

keepalive 10 120

comp-lzo
max-clients 100

user nobody
group nobody

# of the privilege downgrade.
persist-key
persist-tun

status /var/log/openvpn-status.log
log-append /var/log/openvpn.log

verb 4

client-cert-not-required
plugin /usr/lib/openvpn/openvpn-auth-pam.so login

push "redirect-gateway def1"
push "dhcp-option DNS xxx.xxx.xxx.xxx" #Optional : DNS server

Démarrer le vpn :
#!/bin/sh
cd /etc/openvpn
openvpn openvpn.conf &
modprobe iptable_nat
modprobe ip_nat_ftp
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F FORWARD
iptables -F INPUT
iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
iptables -A INPUT -s 10.8.0.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE

Coté client :
Récupérer la clé ca.crt du serveur et la coller dans /etc/openvpn.

Edition du fichier de configuration
/etc/openvpn/client.conf
client
dev tun
remote OpenvpnAdressIP 1194 # Adresse & port
proto udp
nobind
resolv-retry infinite
persist-key
persist-tun
ca ca.crt
cipher BF-CBC
comp-lzo
verb 3
auth-user-pass
route-method exe
route-delay 2

Démarrer le client :

# cd /etc/openvpn
# openvpn client.conf

Maintenant tous les utilisateurs qui on un compte sur ce serveur peuvent utiliser ce vpn.

1 Comment : more...

openssh et la sécurité

by on juin.05, 2011, under Frugalware, GNU/Linux et BSD

Juste un petit rappel sur ssh et la sécurité :

Secure Shell (SSH) est à la fois un programme informatique et un protocole de communication sécurisé.

Installation :
# pacman-g2 -S openssh

Editer /etc/ssh/sshd_config pour modifier la configuration par défaut

Pas de connection avec le compte root.
PermitRootLogin no

Pas de connexion pour les utilisateurs sans mot de passe.
PermitEmptyPasswords no

MaxAuthTries permet de limiter les attaques brute force sur votre serveur
MaxAuthTries 3

Authentication par clé.
PubkeyAuthentication yes

Fail2ban :
Fail2ban est un outil qui analyse les log systèmes et banni les IP si besoin.

Installation de fail2ban :
# pacman-g2 -S fail2ban

Editer /etc/fail2ban/jail.conf afin d’adapter la section ssh à vos besoins.
[ssh-iptables]

enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
logpath = /var/log/messages
maxretry = 5


/var/log/messages est utilisé par sysklogd
/var/log/syslog est utilisé syslog-ng

Démarrer et activer le service fail2ban :
# systemctl enable fail2ban.service
# systemctl start fail2ban.service

Pour le moment, fail2ban n’est disponible que dans la branche current de frugalware.

2 Comments : more...

kvm/virt-manager/bridge/failover/dedibox

by on juin.04, 2011, under Frugalware, GNU/Linux et BSD, Trucs et astuces

J’ai acheté une IP failover pour 1€ chez dedibox afin de virtualiser certains services comme le forum et wiki de frugalware.

Je fais des sauvegardes de ce serveur, mais c’est c’est quand même plus simple de sauvegarder une machine virtuelle et de la remettre en place si besoin. C’est mon opinion. le plus long est souvent de reconfigurer le serveur, plutôt que de réinstaller les différents services.

En premier lieu, acheter une ip failover et associer une adresse mac à cette IP dans la console online.

Sur la machine hote :
J’ai désactivé l’IPV6 que je n’utilise pas :
Editer /etc/sysctl.conf afin d’y ajouter
#disable ipv6 for eth0 only
net.ipv6.conf.eth0.disable_ipv6 = 1

Créer une interface dummy :
# modprobe dummy numdummies=1
numdummies=1, car je n’utilise qu’un seul bridge
Charger le module au démarrage de la machine :
Editer /etc/syconfig/modules et ajouter
dummy numdummies=1

Configuration du bridge :
Création du script /usr/bin/brigde.sh
ifconfig dummy0 up
brctl addbr fail0
brctl addif fail0 dummy0
ifconfig fail0 up
route add IPFAILOVER dev fail0
#authorize proxy arp for eth0 and fail0
echo "1" > /proc/sys/net/ipv4/conf/eth0/proxy_arp
echo "1" > /proc/sys/net/ipv4/conf/fail0/proxy_arp

Pour activer le bridge au lancement de la machine, éditer /etc/sysconfig/network/default
[eth0]
options = IPHOST netmask 255.255.255.0
gateway = default gw IPGATEWAY
post_up = /usr/bin/brigde.sh

virt-manager :
Créer une machine virtuelle avec un réseau virtuel sur le bridge fail0.
(avec virt-manager tout peux se faire de manière graphique)
Dans la configuration de votre machine virtuelle indiquer l’adresse mac renseignée sur votre console online, sinon leur pont réseau coupera votre serveur pensant qu’il s’agit d’une attaque.

Configuration de la machine virtuelle :
Créer un script /usr/bin/routevm.sh
route add IPGATEWAY dev eth0
route add default gw IPGATEWAY

Configuration du réseau de la machine virtuelle
Editer /etc/sysconfig/network/default
[eth0]
options = IPFAILOVER netmask 255.255.255.0
post_up = /usr/bin/routevm.sh

Redémarrer votre machine virtuelle, celle-ci est accessible comme un serveur à part entiere. La solution est simple/libre et elle marche pourquoi s’en passer :D

PS : l’hote et les machines virtuelles tournent sous frugalware stable.

Leave a Comment : more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Blogroll

A few highly recommended websites...