{ "info": { "author": "Vahid Mardani", "author_email": "vahid.mardani@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: Other/Proprietary License", "Natural Language :: English", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# sshtuntap\n\nLinux TUN/TAP using the `openssh` and `Python3`\n\nThis package comes with two command line interfaces:\n\n* ssh-tuntap-server\n* ssh-tuntap-client\n\nthis tutorial show's how to use this project:\n\n## Tutorial\n\nCurrently only `point-to-point (tun)` layer-3 tunneling is supported.\n\n\n### Install\n\nYou have to install this package on both client and server.\n\n```bash\nsudo -H pip3 install sshtuntap\n```\n\nOr\n\n```bash\nsudo -H pip3 install git+https://github.com/pylover/sshtuntap.git\n```\n\n#### Bash auto completion\n\n```bash\nsudo ssh-tuntap-server completion install\nsudo ssh-tuntap-client completion install\n```\n\nOpen new bash instance to perform changes.\n\n\n#### Help?\n\n\n```bash\nssh-tuntap-server --help\nssh-tuntap-client --help\n```\n\n### Server setup\n\nThe server cli stands for setup network, add, delete and list users. \nthis is just a utility to perform user and tuntap interface \nmanagement and ip address assignment.\n\n\n#### Install ifupdown package\n\nInstall ifupdown package in server.\n\n```bash\napt install ifupdown\n```\n\n#### OpenSSH Server\n\nEnable ssh tunneling on the server by editing the \n`/etc/ssh/sshd_config` and ensure the line:\n\n```ssh\nPermitTunnel yes\n```\n\nOr\n\n\n```ssh\nPermitTunnel point-to-point\n```\n\nsee `man 5 sshd_config` for more info.\n\n\nRestart the ssh server to perform the changes.\n\n\n#### Define Network\n\n```bash\nssh-tuntap-server setup\n```\n\nOr\n\n```bash\nssh-tuntap-server setup 192.168.100.0/24\n```\n\n\n#### Add `foo` host\n\nYou have to create the server user mannualy (depends on your distro).\n\nHere I'm using ubuntu server 18.04. and assume the server's hostname is \n`example.com`.\n\nRun these commands on the server:\n\n```bash\nsudo adduser foo\n```\n\nThen use this command create `/home/foo/.ssh/tuntap.yml`:\n\n```bash\nssh-tuntap-server add foo\n```\n\n\n### Client\n\nClinet command line stands for fetch host configuration from the server \nand perform connection using the `ssh -w`.\n\n\n```bash\nssh-copy-id foo@example.com\nssh-tuntap-client setup foo@example.com\n```\n\nUse this to connect:\n\n```bash\nsudo ssh-tuntap-clinet connect\n```\n\n### Nat\n\nEdit `/etc/sysctl.conf` on the server to enable ip forwarding.\n\n```bash\nnet.ipv4.ip_forward = 1\n```\n\nRun `sysctl -p` to refresh with the new configuration\n\n```bash\nsudo sysctl -p\n```\n\nConfigure NAT\n\n```bash\nsudo iptables -tnat -APOSTROUTING -s192.168.100.0/24 -jMASQUERADE\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/pylover/sshtuntap", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "sshtuntap", "package_url": "https://pypi.org/project/sshtuntap/", "platform": "", "project_url": "https://pypi.org/project/sshtuntap/", "project_urls": { "Homepage": "http://github.com/pylover/sshtuntap" }, "release_url": "https://pypi.org/project/sshtuntap/1.2.1/", "requires_dist": null, "requires_python": "", "summary": "Linux tuntap using openssh", "version": "1.2.1" }, "last_serial": 5904282, "releases": { "1.0.1": [ { "comment_text": "", "digests": { "md5": "585d099774296153dfaa14f0b21e0a16", "sha256": "d96dbb30e8dd9fca77788d7c11a35945663ea188c150e1047b59fdbd89b9d57f" }, "downloads": -1, "filename": "sshtuntap-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "585d099774296153dfaa14f0b21e0a16", "packagetype": "bdist_wheel", "python_version": "3.7", "requires_python": null, "size": 8559, "upload_time": "2019-09-16T19:36:18", "url": "https://files.pythonhosted.org/packages/02/33/afeb5580840278df698561a5ff954983d90a2427863d76c9d2fad05cbbe1/sshtuntap-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9b298d2ffe2a9a2155f94310c2351693", "sha256": "7936583a626872ab6d54fa45f6bb2e3ecbedb5277c6a9d7b3d998cc1807334ce" }, "downloads": -1, "filename": "sshtuntap-1.0.1.tar.gz", "has_sig": false, "md5_digest": "9b298d2ffe2a9a2155f94310c2351693", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5992, "upload_time": "2019-09-16T19:36:15", "url": "https://files.pythonhosted.org/packages/26/c2/402263f118110eef4ce24aebd39ad9f55cd42ff114b909cff6b1643339d3/sshtuntap-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "f1fcdcde1527decd8242f5aa9678c6f2", "sha256": "f137149ef89b3935c57b342d5ded9b0e9f7d7af379799a2993a45e1d44427dbe" }, "downloads": -1, "filename": "sshtuntap-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f1fcdcde1527decd8242f5aa9678c6f2", "packagetype": "bdist_wheel", "python_version": "3.7", "requires_python": null, "size": 8628, "upload_time": "2019-09-18T12:33:49", "url": "https://files.pythonhosted.org/packages/0b/c0/c23e78cb899a53b03cef2c32ecefdd1f7a0307451936ba79e7fe796f7890/sshtuntap-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "378f12827fcd4f9904558efca8a7a4b6", "sha256": "ca1c89aac0b2c9087efa0b8ec32d2bdb3152160cd99c71ff863269a09c0e6e68" }, "downloads": -1, "filename": "sshtuntap-1.0.2.tar.gz", "has_sig": false, "md5_digest": "378f12827fcd4f9904558efca8a7a4b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6126, "upload_time": "2019-09-18T12:33:47", "url": "https://files.pythonhosted.org/packages/b0/7b/51573042aed07e5e9a48915871067418c3cf1685f6e6c03083cb131a8fa8/sshtuntap-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "53f6560525dadda082bbc9bbc19d75b8", "sha256": "3142169d965b573e59b86a367709b723221a707a052a9a16c5c3324bfd35e307" }, "downloads": -1, "filename": "sshtuntap-1.0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "53f6560525dadda082bbc9bbc19d75b8", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9912, "upload_time": "2019-09-18T13:31:44", "url": "https://files.pythonhosted.org/packages/51/73/b78508ffed82479260d49aa76027c5a7319a73bfcebd94a44f11a3bc369c/sshtuntap-1.0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b0e0058477a5c75449333cd698378124", "sha256": "df72b44f70c7019151ec07fd89a10b1419a8c0a668ea678f3a7c29f31c9655c1" }, "downloads": -1, "filename": "sshtuntap-1.0.3.tar.gz", "has_sig": false, "md5_digest": "b0e0058477a5c75449333cd698378124", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6278, "upload_time": "2019-09-18T13:31:42", "url": "https://files.pythonhosted.org/packages/54/91/2090e6f51e38fc654a3d8cadb8464e8a7f30838b59fdada8c3a25908c448/sshtuntap-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "ee7083df94e207bc263fd6c07c3ab659", "sha256": "8f5082096bfea461b0d6220f3c1b3fae7ea406a0389b4eeb7006f95abcff874e" }, "downloads": -1, "filename": "sshtuntap-1.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ee7083df94e207bc263fd6c07c3ab659", "packagetype": "bdist_wheel", "python_version": "3.7", "requires_python": null, "size": 8731, "upload_time": "2019-09-18T19:18:03", "url": "https://files.pythonhosted.org/packages/65/46/5343caddec8b63991029b25fc5dc3657041812357566525c1c4d1db8470f/sshtuntap-1.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "916388137462d2a8f4cdacb57bdfeaec", "sha256": "48af04e22a736bd04d6a625da14a548595fa685f00542b4e5c5cdfe52d420712" }, "downloads": -1, "filename": "sshtuntap-1.0.4.tar.gz", "has_sig": false, "md5_digest": "916388137462d2a8f4cdacb57bdfeaec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6222, "upload_time": "2019-09-18T19:18:00", "url": "https://files.pythonhosted.org/packages/ac/a2/e7a1fffc88da91b450771a63e4faf9273690e63d802fb51287b0fc272001/sshtuntap-1.0.4.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "a4b4d9dbc863571590616a832fa9e1c5", "sha256": "6066541e817198f87738eceaf58b57e6d5517d39bf3ca98510f77d07dd373a84" }, "downloads": -1, "filename": "sshtuntap-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a4b4d9dbc863571590616a832fa9e1c5", "packagetype": "bdist_wheel", "python_version": "3.7", "requires_python": null, "size": 9200, "upload_time": "2019-09-24T07:01:36", "url": "https://files.pythonhosted.org/packages/da/1c/b3638d968651ce3365ebaf2b0e62503bc81d4239d8104d44cb1a1b0bf923/sshtuntap-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ad93c065c6635a85196ceda283834516", "sha256": "e29f05f2ef2a3352b534a1023de74dedd8e180a34b5152b9b4d004eda98cbd42" }, "downloads": -1, "filename": "sshtuntap-1.1.0.tar.gz", "has_sig": false, "md5_digest": "ad93c065c6635a85196ceda283834516", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7122, "upload_time": "2019-09-24T07:01:33", "url": "https://files.pythonhosted.org/packages/0c/f2/f552e35f443197b8eac9470c85675fa0b90cfa43fe4009a274372b3329a6/sshtuntap-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "1dcfbb9376ca9358d5eb331e380c04d6", "sha256": "eec8d6b56ae0d08b58760d92604be19cb736918eeef54d5bb34c9d6a040fdaca" }, "downloads": -1, "filename": "sshtuntap-1.1.1.tar.gz", "has_sig": false, "md5_digest": "1dcfbb9376ca9358d5eb331e380c04d6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7129, "upload_time": "2019-09-24T10:27:19", "url": "https://files.pythonhosted.org/packages/cf/f7/49811653a6e588cdfeb4e5b14cc3b1267c02b1bc0d6fd037dbdf06b3a678/sshtuntap-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "b8c3ab08310ab11c23782f1c512bffb3", "sha256": "3b7f59118ec4d4b924a6267212b3f31ad64a2ad0cf09bfe210746d74644c0b99" }, "downloads": -1, "filename": "sshtuntap-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b8c3ab08310ab11c23782f1c512bffb3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9188, "upload_time": "2019-09-27T01:08:18", "url": "https://files.pythonhosted.org/packages/66/69/5e85fd4240293d28766e8dd8964b152d5e42d18861ae2b784078ede5c73e/sshtuntap-1.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3b0ee23b7fee834c8c2831d9bcb9b60", "sha256": "a855f2c2de97f548f72e524f5e4b2cfef6c66e5bf507d21365e62e8140696bf4" }, "downloads": -1, "filename": "sshtuntap-1.2.0.tar.gz", "has_sig": false, "md5_digest": "d3b0ee23b7fee834c8c2831d9bcb9b60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6660, "upload_time": "2019-09-27T01:08:21", "url": "https://files.pythonhosted.org/packages/a5/41/68c6b069b219c04e18e2925a575ef430be98966e976e2365d1862b94be31/sshtuntap-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "6d12732b112af6b2862a20736b38aa2f", "sha256": "c515c2fd571f8eb2977b6edd678f912efbf9a6564d09d3840e263c91a916ff14" }, "downloads": -1, "filename": "sshtuntap-1.2.1-py3.7.egg", "has_sig": false, "md5_digest": "6d12732b112af6b2862a20736b38aa2f", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 18086, "upload_time": "2019-09-30T01:22:31", "url": "https://files.pythonhosted.org/packages/af/b7/c0b67c46179f45656e4de75400bba1836146ff5eb3073782a88977e9f333/sshtuntap-1.2.1-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "e21cfc00d497e77436aa943261cee4c5", "sha256": "35ec4f6029705ef9bb00f4e894a1889ffcc08bc6cdff4894688dc544dfd2c15d" }, "downloads": -1, "filename": "sshtuntap-1.2.1.tar.gz", "has_sig": false, "md5_digest": "e21cfc00d497e77436aa943261cee4c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6668, "upload_time": "2019-09-30T01:22:33", "url": "https://files.pythonhosted.org/packages/8a/eb/3fc97e391bce9aaf6a90becb121aaeb3d71f590bec23a9f99d4003a13c54/sshtuntap-1.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6d12732b112af6b2862a20736b38aa2f", "sha256": "c515c2fd571f8eb2977b6edd678f912efbf9a6564d09d3840e263c91a916ff14" }, "downloads": -1, "filename": "sshtuntap-1.2.1-py3.7.egg", "has_sig": false, "md5_digest": "6d12732b112af6b2862a20736b38aa2f", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 18086, "upload_time": "2019-09-30T01:22:31", "url": "https://files.pythonhosted.org/packages/af/b7/c0b67c46179f45656e4de75400bba1836146ff5eb3073782a88977e9f333/sshtuntap-1.2.1-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "e21cfc00d497e77436aa943261cee4c5", "sha256": "35ec4f6029705ef9bb00f4e894a1889ffcc08bc6cdff4894688dc544dfd2c15d" }, "downloads": -1, "filename": "sshtuntap-1.2.1.tar.gz", "has_sig": false, "md5_digest": "e21cfc00d497e77436aa943261cee4c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6668, "upload_time": "2019-09-30T01:22:33", "url": "https://files.pythonhosted.org/packages/8a/eb/3fc97e391bce9aaf6a90becb121aaeb3d71f590bec23a9f99d4003a13c54/sshtuntap-1.2.1.tar.gz" } ] }