forked from 5im-0n/sshenc.sh
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
148 lines (125 loc) · 4.92 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="">
<meta name="author" content="">
<title>sshenc.sh</title>
<!-- Bootstrap core CSS -->
<link href="vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<!-- my own stuff -->
<link href="main.css" rel="stylesheet">
</head>
<body>
<a href="https://github.com/S2-/sshenc.sh"><img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png" alt="Fork me on GitHub"></a>
<!-- Navigation -->
<nav class="navbar navbar-expand-lg navbar-dark bg-dark static-top">
<div class="container">
<a class="navbar-brand" href="#">sshenc.sh</a>
<!--
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav ml-auto">
<li class="nav-item active">
<a class="nav-link" href="#">Home
<span class="sr-only">(current)</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Services</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Contact</a>
</li>
</ul>
</div>
-->
</div>
</nav>
<!-- Page Content -->
<div class="container">
<div class="row">
<div class="col-lg-12">
<h1 class="mt-5">sshenc.sh</h1>
<hr>
<p class="lead">bash script to encrypt data using a users ssh public key.</p>
<hr>
<div class="bd-callout bd-callout-info">
If you received a message from someone that was encrypted with this script, you can decrypt it with your ssh private key using the following command without installing anything:<br>
<code>bash <(curl -s https://sshenc.sh/sshenc.sh) -s ~/.ssh/id_rsa < file-containing-the-encrypted-text.txt</code>
</div>
<p>sshenc.sh uses openssl under the hood, so you need to have that installed in yout path to make it work.</p>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<h2>Install</h2>
<hr>
<h3>Install locally</h3>
<div class="bd-callout bd-callout-info">
<code>wget https://sshenc.sh/sshenc.sh<br>
chmod +x sshenc.sh</code>
</div>
<!--
<h3>Run it from remote every time</h3>
If you are
<ul>
<li>really brave, and</li>
<li>want to be sure to run the latest version every time, or</li>
<li>maybe don't want/can't install files</li>
</ul>
you can use an alias that downloads and executes the script every time:<br>
<code>alias sshenc.sh='bash <(curl -s https://sshenc.sh/sshenc.sh)'</code>
<br>
<br>
To add it to your environment permanently:<br>
<code>echo "alias sshenc.sh='bash <(curl -s https://sshenc.sh/sshenc.sh)'" >> ~/.bashrc</code>
<br>
Be careful: if you do this you trust https://sshenc.sh/ to always return the same script. It's actually a remote code execution if someone hacks https://sshenc.sh/ or the server becomes malicious.
<br>
<br>
-->
</div>
</div>
<div class="row">
<div class="col-lg-12">
<h2 id="examples">Examples</h2>
<hr>
<h3 id="encrypt-own">encrypt a file using your own ssh public key</h3>
<div class="bd-callout bd-callout-info">
<code>sshenc.sh -p ~/.ssh/id_rsa.pub < plain-text-file.txt > encrypted.txt</code>
</div>
<h3 id="encrypt-multi">encrypt a file using multiple recipients (broadcast encryption)</h3>
<div class="bd-callout bd-callout-info">
<code>sshenc.sh -p ~/.ssh/id_rsa.pub -p id_rsa-alice.pub -p id_rsa-bob.pub < plain-text-file.txt > encrypted.txt</code>
</div>
<h3 id="encrypt-gh">encrypt a file using the public key of a github user</h3>
<div class="bd-callout bd-callout-info">
<code>sshenc.sh -p <(curl -sf "https://github.com/S2-.keys" | grep ssh-rsa | tail -n1) < plain-text-file.txt</code>
</div>
<p>this line fetches the first public key for the github user S2- and encrypts the file plain-text-file.txt using this key.</p>
<h3 id="decrypt">dedecrypt a file</h3>
<div class="bd-callout bd-callout-info">
<code>sshenc.sh -s ~/.ssh/id_rsa < encrypted.txt</code>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<h2>License</h2>
<hr>
<a href="https://opensource.org/licenses/MIT">MIT</a>
</div>
</div>
</div>
<!-- Bootstrap core JavaScript -->
<script src="vendor/jquery/jquery.min.js"></script>
<script src="vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
</body>
</html>