leon47 Posté(e) le 1 avril 2008 Partager Posté(e) le 1 avril 2008 bonjour à tous ! je me posai une tite question, afin d'empêcher les petits malins qui me démontent les disques durs pour les mettre dans une autre machines et faire sauter les protections (/etc/passwd tout nettoyé, de même pour shadow ) ou trouver mes mots de passe (en clair un fois root sur la machine ... tous mes soft ne gère pas md5 ou autres). Pourquoi ne pas crypter les partitions, ce que je fais tout vaillament, ôllisoké ... mais le souci (normal en même temps) est qu'il me demande la passphrase je me demande donc si je ne peux pas lui donner l'adresse mac de ma carte réseau comme clé de cryptage. Ainsi plus de possibilité de booter ailleurs, je garde des backups en cas de plantage complet, et je suis tranquille. Donc, peut-on lui donner la passphrase dans les arguments ? et surtout peut-on lui donner une commande de type : ifconfig eth0 | grep HWadd | awk '{ print $5 }' marki de vos idées ! tchô Lien vers le commentaire Partager sur d’autres sites More sharing options...
Compte_supprime_74291 Posté(e) le 1 avril 2008 Partager Posté(e) le 1 avril 2008 C'est quand même très léger comme passphrase de chiffrage, l'adresse MAC... dans le genre mot de passe faible (pas de majuscules/minuscules, toujours le même caractère spécial...), ça se pose là... A la limite, sur le sujet, un article est récemment paru sur Debian Administration, pour expliquer comment déchiffrer une partoche root par SSH au boot (en incluant un dropbear ou autre serveur SSH léger dans l'initrd)... bon, reste qu'il faut manuellement se connecter en SSH pour déchiffrer le système, mais à voir si ça ne pourrait pas être automatisé avec un watchdog home-made, qui surveillerait si le PC est démarré ou pas, et du coup te convenir... Lien vers le commentaire Partager sur d’autres sites More sharing options...
leon47 Posté(e) le 1 avril 2008 Auteur Partager Posté(e) le 1 avril 2008 avant de trouver que le passphrase est l'adresse mac, il va falloir du temps tout de même ... et de plus, si la personne veut vraiment rentré, elle y arrivera, je ne veux pas la sécurité parfaite :) je regarde du coté de ce décryptage par ssh dès que j'ai un moment (surement semaine prochaine à priori), je vous tiens au courant. merci. Lien vers le commentaire Partager sur d’autres sites More sharing options...
leon47 Posté(e) le 13 avril 2008 Auteur Partager Posté(e) le 13 avril 2008 Après pas mal de galère, j'ai réussi à faire démarrer la partie ssh sur initrd ... par contre, ce qui ne marche pas c'est l'authentification avec dropbear, il me dis que l'utilisateur n'existe pas. j'ai testé une fois le pc démarré normalement, ça marche, je pensai donc au fichier passwd et shadow, mais ils y sont ... si quelqu'un a eu le même souci d'authentification, faite signe ! je vous joint le script pour faire tout ça : #!/bin/sh # We add dropbear to the initrd to be able do mount crypto partitions from remote PREREQ="" prereqs() { echo "$PREREQ" } case $1 in prereqs) prereqs exit 0 ;; esac # Begin real processing below this line # copyright Wulf Coulmann # GNU GPL # http://www.gnu.org/licenses/gpl.html # # Download me here: http://gpl.coulmann.de/dropbear # get infos about this script here: # http://gpl.coulmann.de/ssh_luks_unlock.html # load the prepared functions of debians initramfs enviroment source /usr/share/initramfs-tools/hook-functions # build the directorys DIRS='/usr/bin/ /usr/sbin/ /proc/ /root/ /var/ /var/run/ /var/run/' for now in $DIRS; do if [ ! -e ${DESTDIR}$now ] then mkdir -p ${DESTDIR}$now fi done # copy the main ssh-daemen including libarys copy_exec /usr/sbin/dropbear /usr/sbin/ copy_exec /usr/bin/passwd /usr/bin/ copy_exec /bin/login /bin/ copy_exec /usr/bin/killall /usr/bin/ # some libarys not autoincludet by copy_exec copy_exec /lib/libnss_compat.so.2 /lib/ copy_exec /usr/lib/libz.so.1 /usr/lib/ copy_exec /etc/ld.so.cache /etc copy_exec /lib/libutil.so.1 /lib/ # we copy config and key files cp -pr /etc/dropbear ${DESTDIR}/etc/ cp -pr /etc/passwd ${DESTDIR}/etc/ cp -pr /etc/shadow ${DESTDIR}/etc/ cp -pr /etc/group ${DESTDIR}/etc/ cp -pr /root/.ssh ${DESTDIR}/root/ cp -pr /etc/nsswitch.conf ${DESTDIR}/etc/ cp -pr /etc/localtime ${DESTDIR}/etc/ # we don't have bash in our initrd # also we only add the root account cat /etc/passwd | grep root | sed s/\\/bash/\\/sh/ > ${DESTDIR}/etc/passwd cat /etc/shadow | grep root | sed s/\\/bash/\\/sh/ > ${DESTDIR}/etc/shadow cat /etc/group | grep root | sed s/\\/bash/\\/sh/ > ${DESTDIR}/etc/group # the blocker script to request input action befor running cryptroot # this let us run cryptroot on local terminal or inside ssh # dirty but effektive cat >${DESTDIR}/scripts/local-top/cryptroot_block << 'EOF' #!/bin/sh PREREQ="network_ssh" prereqs() { echo "$PREREQ" } case $1 in prereqs) prereqs exit 0 ;; esac # Begin real processing below this line echo Type "ok" and press enter to put in passphrase: INPUT='wait' while [ "$INPUT" != "ok" ]; do read INPUT done EOF chmod 700 ${DESTDIR}/scripts/local-top/cryptroot_block cat >${DESTDIR}/scripts/local-top/network_ssh << 'EOF' #!/bin/sh # we start the network and ssh-server PREREQ="" prereqs() { echo "$PREREQ" } case $1 in prereqs) prereqs exit 0 ;; esac # Begin real processing below this line # build up helpful enviroment [ -d /dev ] || mkdir -m 0755 /dev [ -d /root ] || mkdir --mode=0700 /root [ -d /sys ] || mkdir /sys [ -d /proc ] || mkdir /proc [ -d /tmp ] || mkdir /tmp mkdir -p /var/lock mount -t sysfs -o nodev,noexec,nosuid none /sys mount -t proc -o nodev,noexec,nosuid none /proc mkdir /dev/pts mount -t devpts -o gid=5,mode=620 /dev/pts /dev/pts # the Network setup edit ipaddres and gateway to your needs ifconfig eth0 192.168.1.135 netmask 255.255.255.0 route add default gw 192.168.1.1 # If you like to use dhcp make shure you include dhclient or pump in # /etc/initramfs-tools/hooks/dropbear via # copy_exec /sbin/dhclient # for debugging ssh-server you may run it in forgound # /usr/sbin/dropbear -E -F # for more debugging you may run it with strace # therfor you have to include strace and nc at top of # /etc/initramfs-tools/hooks/dropbear via # copy_exec /usr/bin/strace # copy_exec /usr/bin/nc # then start nc on an other host and run # /usr/sbin/dropbear -E -F 2>&1 | /bin/nc -vv <ip of other host> <nc port of other host> # e.g.: # /usr/sbin/dropbear -E -F 2>&1 | /bin/nc -vv 192.168.1.2 8888 mv /dev/random /dev/random-blocks ln -s /dev/urandom /dev/random cat /etc/passwd cat /etc/shadow /usr/sbin/dropbear -E -F -b /etc/dropbear/banner EOF chmod 700 ${DESTDIR}/scripts/local-top/network_ssh cat >${DESTDIR}/etc/dropbear/banner << 'EOF' To unlock root-partition run unlock EOF # script to unlock luks via ssh # dirty but effektive mkdir -p ${DESTDIR}/usr/bin cat >${DESTDIR}/usr/bin/unlock << 'EOF' #!/bin/sh /bin/sh /scripts/local-top/cryptroot && mv /scripts/local-top/cryptroot /root && kill `ps | grep cryptroot_block|grep -v grep |awk '{ print $1 }'` EOF chmod 700 ${DESTDIR}/usr/bin/unlock # make shure we exit dropbear at the end of the startup process cat >${DESTDIR}/scripts/local-bottom/rm_dropbear << 'EOF' #!/bin/sh PREREQ="" prereqs() { echo "" } case $1 in prereqs) prereqs exit 0 ;; esac # Begin real processing below this line # we kill dropbear ssh-server /usr/bin/killall dropbear EOF chmod 700 ${DESTDIR}/scripts/local-bottom/rm_dropbear Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.