When you start a clean Linode, it isn't secured in the following aspects:
- Allows root SSH login
- Uses password authentication on SSH
- Doesn't have a firewall
| import com.payalabs.scalajs.react.bridge.ReactBridgeComponent | |
| import scala.scalajs.js | |
| import scala.scalajs.js.UndefOr | |
| case class ReactBootstrapDatetimepicker(id: js.UndefOr[String] = js.undefined, | |
| className: js.UndefOr[String] = js.undefined, | |
| ref: js.UndefOr[String] = js.undefined, | |
| key: js.UndefOr[Any] = js.undefined, | |
| mode: js.UndefOr[String] = js.undefined, |
| import scala.scalajs.js | |
| import scala.scalajs.js.JSConverters._ | |
| import scala.scalajs.js.annotation.JSName | |
| trait C3ChartObject extends js.Object { | |
| def load(data: C3JSChartDataset): js.Dynamic = js.native | |
| def unload() = js.native | |
| } |
| package app.actors | |
| import akka.event.Logging | |
| import akka.http.scaladsl._ | |
| import akka.http.scaladsl.model.HttpHeader.ParsingResult | |
| import akka.http.scaladsl.model._ | |
| import akka.stream.ActorMaterializer | |
| import akka.typed.ScalaDSL._ | |
| import akka.typed._ | |
| import argonaut.Argonaut._ |
| package app.actors | |
| import akka.actor.{Actor, ActorLogging} | |
| import argonaut._, Argonaut._ | |
| import infrastructure.GCM | |
| import launch.RTConfig | |
| import spray.client.pipelining._ | |
| import spray.http._ | |
| import spray.httpx.marshalling.Marshaller |
| package main | |
| import akka.actor._ | |
| import akka.event.{EventBus, SubchannelClassification} | |
| import akka.util.Subclassification | |
| object SCEventBus extends EventBus with SubchannelClassification { | |
| type Event = (String, Any, ActorRef) | |
| type Classifier = String | |
| type Subscriber = ActorRef |
| import scala.language.experimental.macros | |
| import scala.reflect.macros.blackbox.Context | |
| object JsonToClassNameMapper { | |
| def generatePatternMatcher[A](): (String, String) => Option[A] = macro generatePatternMatcherImpl[A] | |
| def generatePatternMatcherImpl[A: c.WeakTypeTag](c: Context)(): c.Tree = { | |
| import c.universe._ |
| import scalanative.native._ | |
| import SDL._ | |
| import SDLExtra._ | |
| @extern | |
| @link("SDL2") | |
| object SDL { | |
| type Window = CStruct0 | |
| type Renderer = CStruct0 |
| //See - https://gist.github.com/milessabin/89c9b47a91017973a35f && https://github.com/softwaremill/scala-common | |
| object Tagged { | |
| sealed trait Tagged[+T] extends Any { | |
| type Tagged <: T | |
| } | |
| type @@[+V, +T] = V with Tagged[T] | |
| } | |
| sealed trait MaybeTag |