{"id":4286,"date":"2018-11-20T15:47:33","date_gmt":"2018-11-20T14:47:33","guid":{"rendered":"https:\/\/www.itkommando.hu\/site\/?page_id=4286"},"modified":"2021-07-14T10:33:06","modified_gmt":"2021-07-14T09:33:06","slug":"egy-router-tobb-vpn-el-2-resz","status":"publish","type":"page","link":"https:\/\/www.itkommando.hu\/site\/egy-router-tobb-vpn-el-2-resz\/","title":{"rendered":"Egy router t\u00f6bb VPN-el 2. r\u00e9sz (OpenVP)"},"content":{"rendered":"<p><code>Az <a href=\"https:\/\/www.itkommando.hu\/site\/leirasok\/egy-router-tobb-vpn-el\/\">el\u0151z\u0151 cikkben<\/a> megt\u00f6rt\u00e9nt a feladat le\u00edr\u00e1sa.<\/code><\/p>\n<h3>L\u00e1ssunk hozz\u00e1 a router felprogramoz\u00e1s\u00e1hoz<\/h3>\n<p>K\u00f6ss\u00fck a sz\u00e1m\u00edt\u00f3g\u00e9p\u00fcnket a router egyik LAN portj\u00e1hoz. Az <a href=\"https:\/\/openwrt.org\/\">OpenWRT<\/a> alap\u00e9rtelmez\u00e9sk\u00e9nt a 192.168.1.1 IP c\u00edmet rendeli a routerhez.<\/p>\n<p>Az els\u0151 int\u00e9zked\u00e9s\u00fcnk, hogy a Routeren egy er\u0151s jelsz\u00f3t \u00e1ll\u00edtunk be. Erre telep\u00edt\u00e9s ut\u00e1n azonnal felh\u00edvja a figyelm\u00fcket.<\/p>\n<p>A legegyszer\u0171bb, ha SSH-val root-k\u00e9nt bejelentkez\u00fcnk (nem k\u00e9r jelsz\u00f3t)<\/p>\n<p><code>passwd<\/code><\/p>\n<p>A jelsz\u00f3 feleljen meg a szok\u00e1sos elv\u00e1r\u00e1soknak.<\/p>\n<p>Friss\u00edts\u00fck fel a telep\u00edthet\u0151 csomagok list\u00e1j\u00e1t:<\/p>\n<p><code>opkg update<\/code><\/p>\n<p>Telep\u00edts\u00fcnk j\u00f3l haszn\u00e1lhat\u00f3 webes kezel\u0151 fel\u00fcletet, magyar nyelvet \u00e9s a https hozz\u00e1f\u00e9r\u00e9st.<\/p>\n<p><code>opkg install luci-theme-openwrt luci-i18n-openvpn-hu\u00a0luci-ssl<\/code><\/p>\n<p>Egy k\u00f6nnyen kezelhet\u0151 sz\u00f6vegszerkeszt\u0151<\/p>\n<p><code>opkg install nano<\/code><\/p>\n<p>Rakjuk fel az OpenVPNt \u00e9s a kezel\u0151 fel\u00fclet\u00e9t (magyarul is)<\/p>\n<p><code>opkg install\u00a0 openvpn-openssl luci-app-openvpn luci-i18n-openvpn-hu <\/code><\/p>\n<p>sftp szerver, hogy egyszer\u0171en tudjunk f\u00e1jlokat m\u00e1solni az eszk\u00f6zre (nincs grafikus kezel\u0151 fel\u00fclete, csak egy kieg\u00e9sz\u00edt\u00e9s az SSH-hoz)<\/p>\n<p><code>opkg install openssh-sftp-server<\/code><code><\/code><\/p>\n<p>Friss\u00edts\u00fck fel a routeren tal\u00e1lhat\u00f3 csomagokat (ezt \u00fagy t\u0171nik \u00e9rdemes hetente elv\u00e9gezni):<\/p>\n<p><code>opkg list-upgradable | awk -F \" \" '{print \"opkg upgrade \"$1}' &gt;up.sh<br \/>\nsh up.sh<br \/>\nrm up.sh<\/code><\/p>\n<p>Ezzel a scripttel el\u0151sz\u00f6r elk\u00e9sz\u00edtj\u00fck a friss\u00edtend\u0151 csomagok list\u00e1j\u00e1t, <code>awk<\/code>-val elk\u00e9sz\u00edtj\u00fck a scriptet, ami felfriss\u00edti a programokat (o<code>pkg upgrade program_neve <\/code>form\u00e1tumban), majd ezt lefuttatjuk.<\/p>\n<p>Sajnos egy l\u00e9pcs\u0151ben nem lehet a feladatot elv\u00e9gezni pedig az egysoros script milyen eleg\u00e1ns:<\/p>\n<p><code>opkg list-upgradable | awk -F \" \" '{print \"opkg upgrade \"$1}' | sh<\/code><\/p>\n<p>mert az els\u0151 opkg m\u00e9g z\u00e1rolja a f\u00e1jlokat, amikor a m\u00e1sodik m\u00e1r elindul.<\/p>\n<p>Persze itt is lehet tr\u00fckk\u00f6zni:<\/p>\n<p><code>opkg list-upgradable | awk -F \" \" '{print \"opkg upgrade \"$1}' |sort| sh<\/code><br \/>\nItt a <code>sort<\/code> utas\u00edt\u00e1ssal egy kicsit h\u00fazzuk az id\u0151t, hogy az els\u0151 <code>opkg<\/code>-nak legyen ideje kil\u00e9pni, miel\u0151tt az update elkezd\u0151dik. (\u00cdgy m\u00e1r lehet v\u00e1lasztani a k\u00e9t verzi\u00f3 k\u00f6z\u00f6tt.)<\/p>\n<p>A csomagok friss\u00edt\u00e9s\u00e9nek az \u00e1ra, hogy a rendelkez\u00e9s\u00fcnkre \u00e1ll\u00f3 t\u00e1rhely egy jelent\u0151s r\u00e9sz\u00e9t elhaszn\u00e1lja, ez\u00e9rt ha rosszul \u00e1llunk t\u00e1rhellyel, ezt a l\u00e9p\u00e9st k\u00e9nytelenek vagyunk kihagyni.<\/p>\n<h3>Tegy\u00fck biztons\u00e1gosabb\u00e1 a routerre val\u00f3 bejelentkez\u00e9st<\/h3>\n<p>Az ssh bejelentkez\u00e9s biztons\u00e1g\u00e1t k\u00e9t ponton tudjuk emelni:<\/p>\n<ul>\n<li>A szok\u00e1sos (szabv\u00e1nyos) 22-es portot \u00e1t\u00edrjuk egy m\u00e1sikra<\/li>\n<li>A jelszavas bejelentkez\u00e9s helyett kulcsos bejelentkez\u00e9st \u00edrunk el\u0151<\/li>\n<\/ul>\n<p>A webes fel\u00fcleten http helyett https protokoll haszn\u00e1lat\u00e1t tudjuk el\u0151\u00edrni.<\/p>\n<p>A <code>\/etc\/config\/dropbear<\/code> f\u00e1jl vizsg\u00e1latakor az OpenSSH config f\u00e1jlhoz szokott szem elkerekedik. \u00d6sszesen \u00f6t sort tartalmaz. Ha az \u00f6sszes lehets\u00e9ges be\u00e1ll\u00edt\u00e1st megtessz\u00fck, akkor sem lesz 11 sorn\u00e1l hosszabb.<\/p>\n<p>M\u00e1soljuk a publikus kulcsunkat a \/etc\/dropbear\/authorized_keys f\u00e1jlba. Ezt megtehetj\u00fck f\u00e1jl m\u00e1sol\u00e1ssal, vagy a LUCI fel\u00fcleten. Az OpenSSH <code>ssh-copy-id<\/code> parancsa ebben az esetben nem seg\u00edt.<br \/>\nA kulcs \u00e1tm\u00e1sol\u00e1sa ut\u00e1n egy m\u00e1sik termin\u00e1lb\u00f3l pr\u00f3b\u00e1ljunk meg bejelentkezni. Ez\u00fattal jelsz\u00f3 n\u00e9lk\u00fcl kell siker\u00fclnie (hiszen a kulcs azonos\u00edt).<br \/>\nHa a bejelentkez\u00e9s nem sikeres, lehet hib\u00e1t keresni a nyitva hagyott kapcsolaton kereszt\u00fcl.<br \/>\nHa sikeres volt a pr\u00f3ba, tiltsuk le a jelszavas bejelentkez\u00e9st, \u00e9s \u00e1ll\u00edtsuk \u00e1t a portot 22-r\u0151l egy m\u00e1sikra.<\/p>\n<p><code>uci set dropbear.@dropbear[0].PasswordAuth=off<\/code><br \/>\n<code>uci set dropbear.@dropbear[0].port=1234<\/code><br \/>\n<code>uci commit dropbear <\/code><\/p>\n<p>Ezzel, amit az ssh-val lehetett megtett\u00fck. (M\u00e9g lehetne felhaszn\u00e1l\u00f3t l\u00e9trehozni az adminisztr\u00e1ci\u00f3hoz, de akkor a LUCI fel\u00fclet lesz a gyenge pont, nem ny\u00fajt val\u00f3s t\u00f6bbletbiztons\u00e1got, csak ha a webes fel\u00fcletet letiltjuk).<\/p>\n<h3>Tegy\u00fcnk n\u00e9mi biztons\u00e1got a LUCI webes fel\u00fcletre is<\/h3>\n<p>K\u00f6vetelj\u00fck meg a https haszn\u00e1lat\u00e1t (sokkal t\u00f6bbet nem tehet\u00fcnk, csak ha a fant\u00e1zi\u00e1nkat haszn\u00e1ljuk).<\/p>\n<p><code>uci set uhttpd.main.redirect_https='1'<\/code><br \/>\n<code>uci commit<\/code><\/p>\n<h3>Kezdj\u00fck el az OpenVPN felprogramoz\u00e1s\u00e1t<\/h3>\n<p>A programoz\u00e1shoz UBUNTU (linux) munka\u00e1llom\u00e1st haszn\u00e1lunk, amire telep\u00edtett\u00fck az <code>sshfs<\/code> csomagot.<\/p>\n<p>Innen 4-f\u00e9le m\u00f3don is folytathatjuk a feladat megold\u00e1s\u00e1t:<\/p>\n<ol>\n<li>A luci kezel\u0151 fel\u00fclet\u00e9n \u00e1ll\u00edtjuk be az OpenVPN szervert<\/li>\n<li>A server.cnf f\u00e1jlt a \/etc\/openvpn mapp\u00e1ba m\u00e1soljuk<\/li>\n<li>\u00a0\u201euci&#8221; utas\u00edt\u00e1sokkal \u00e1ll\u00edtjuk be commandline m\u00f3dban<\/li>\n<li>a \/etc\/config\/openvpn f\u00e1jl szerkeszt\u00e9s\u00e9vel<\/li>\n<\/ol>\n<p>Vegy\u00fck sorra:<\/p>\n<p>1., A luci kezel\u0151fel\u00fclet csak a static key modelt t\u00e1mogatja. Most nem ez a v\u00e1lasztott elj\u00e1r\u00e1s.<\/p>\n<p>2., Ha a config \u00e1llom\u00e1nyt a \/etc\/openvpn mapp\u00e1ba m\u00e1soljuk, akkor a router ind\u00edt\u00e1sakor elindul, azonban a m\u0171k\u00f6d\u00e9s\u00e9t a luci fel\u00fcletr\u0151l nem tudjuk befoly\u00e1solni (ezt haszn\u00e1ljuk tesztel\u00e9shez).<\/p>\n<p>3., Az \u201euci&#8221; utas\u00edt\u00e1sokkal l\u00e9trehozott VPN-t lehet grafikus fel\u00fcletr\u0151l is kezelni.<\/p>\n<p>4., Egyen\u00e9rt\u00e9k\u0171 a 3., ponttal. az uci utas\u00edt\u00e1sok hozz\u00e1k l\u00e9tre illetve m\u00f3dos\u00edtj\u00e1k az \u00e1llom\u00e1nyt.<\/p>\n<p>V\u00e1laszuk a 3. \u00e9s 4. opci\u00f3t. Egy minim\u00e1lis plusz munk\u00e1val valamivel eleg\u00e1nsabb eredm\u00e9nyt kapunk.<\/p>\n<p>Jelentkezz\u00fcnk be a routerre:<\/p>\n<p>Telep\u00edts\u00fck fel a felhaszn\u00e1l\u00f3 kezel\u0151t:<\/p>\n<p><code>opkg update<\/code><br \/>\n<code>opkg install shadow-useradd<\/code><\/p>\n<p>Hozzunk l\u00e9tre egy felhaszn\u00e1l\u00f3t az OpenVPN-nek<\/p>\n<p><code><\/code><code>adduser vpn<\/code><\/p>\n<p>A PC-n csatoljuk fel a router \/etc mapp\u00e1j\u00e1t (ez\u00e9rt telep\u00edtett\u00fck az sftp-t a routerre):<\/p>\n<p><code>sshfs  root@192.168.1.1:\/etc\/ \/mnt<\/code><\/p>\n<p>Enn\u00e9l korrektebb:<\/p>\n<p><code>mkdir ~\/mnt<\/code><\/p>\n<p><code>sshfs  root@192.168.1.1:\/etc\/ ~\/mnt<\/code><\/p>\n<p>Hozzuk l\u00e9tre a szerver mapp\u00e1t:<\/p>\n<p><code>sudo mkdir \/mnt\/openvpn\/client<\/code><\/p>\n<p>M\u00e1soljuk ide a sz\u00fcks\u00e9ges kulcsokat. Ezek:<\/p>\n<ul>\n<li><code>ca.crt<\/code><\/li>\n<li><code>kliens1.key<\/code><\/li>\n<li><code>kliens1.crt<\/code><\/li>\n<li><code>ta.key<\/code><\/li>\n<li><code>dh4096.pem<\/code><\/li>\n<\/ul>\n<p>(M\u00e1r \u00e9rdemes elliptic curve kulcsokat haszn\u00e1lni a gyorsabb m\u0171k\u00f6d\u00e9s \u00e9rdek\u00e9ben. Az OpenVPN a 2.4 verzi\u00f3t\u00f3l t\u00e1mogatja.)<\/p>\n<p>A routeren\u00a0 hozzuk l\u00e9tre az interf\u00e9szt a VPN-hez<\/p>\n<p><code>uci set network.vpn1=interface<\/code><br \/>\n<code>uci set network.vpn1.ifname=tun0<\/code><br \/>\n<code>uci set network.vpn1.proto=none<\/code><br \/>\n<code>uci set network.vpn1.auto=1<\/code><\/p>\n<p>Ez ut\u00e1n hozzuk l\u00e9tre a VPN kapcsolatot:<\/p>\n<p><code>uci set openvpn.vpnclient=openvpn<\/code><br \/>\n<code>uci set openvpn.vpnclient.enabled=1<\/code><br \/>\n<code>uci set openvpn.vpnclient.dev=tun<\/code><br \/>\n<code>uci set openvpn.vpnclient.proto=udp<\/code><br \/>\n<code>uci set openvpn.vpnclient.verb=3<\/code><br \/>\n<code>uci set openvpn.vpnclient.ca=\/etc\/openvpn\/client\/ca.crt<\/code><br \/>\n<code>uci set openvpn.vpnclient.cert=\/etc\/openvpn\/client\/kliens1.crt<\/code><br \/>\n<code>uci set openvpn.vpnclient.key=\/etc\/openvpn\/client\/kliens1.key<\/code><br \/>\n<code>uci set openvpn.vpnclient.cipher=AES-192-CBC<\/code><br \/>\n<code>uci set openvpn.vpnclient.auth=sha256<\/code><br \/>\n<code>uci set openvpn.vpnclient.tls-auth='\/etc\/openvpn\/client\/ta.key 1'<\/code><br \/>\n<code>uci set openvpn.vpnclient.client=1<\/code><br \/>\n<code>uci set openvpn.vpnclient.remote_cert_tls=server<\/code><br \/>\n<code>uci set openvpn.vpnclient.remote=\"proba.itkommando.hu 1192\"<\/code><br \/>\n<code>uci set openvpn.vpnclient.persist_key='1'<\/code><br \/>\n<code>uci set openvpn.vpnclient.persist_tun='1'<\/code><br \/>\n<code>uci set openvpn.vpnclient.comp_lzo='1'<\/code><br \/>\n<code>uci set openvpn.vpnclient.user='vpn'<\/code><br \/>\n<code>uci set openvpn.vpnclient.group='vpn'<\/code><br \/>\n<code>uci commit openvpn<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Az el\u0151z\u0151 cikkben megt\u00f6rt\u00e9nt a feladat le\u00edr\u00e1sa. L\u00e1ssunk hozz\u00e1 a router felprogramoz\u00e1s\u00e1hoz K\u00f6ss\u00fck a sz\u00e1m\u00edt\u00f3g\u00e9p\u00fcnket a router egyik LAN portj\u00e1hoz. Az OpenWRT alap\u00e9rtelmez\u00e9sk\u00e9nt a 192.168.1.1 IP c\u00edmet rendeli a routerhez.&hellip;<a href=\"https:\/\/www.itkommando.hu\/site\/egy-router-tobb-vpn-el-2-resz\/\" class=\"more-link\"><span class=\"more-button\">Tov\u00e1bb a r\u00e9szletekre<span class=\"screen-reader-text\">Egy router t\u00f6bb VPN-el 2. r\u00e9sz (OpenVP)<\/span><\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[12,13,16],"tags":[],"class_list":["post-4286","page","type-page","status-publish","hentry","category-hardver","category-szoftver","category-tanacsok"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/pages\/4286","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/comments?post=4286"}],"version-history":[{"count":15,"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/pages\/4286\/revisions"}],"predecessor-version":[{"id":5475,"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/pages\/4286\/revisions\/5475"}],"wp:attachment":[{"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/media?parent=4286"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/categories?post=4286"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.itkommando.hu\/site\/wp-json\/wp\/v2\/tags?post=4286"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}