70 lines
3.3 KiB
TypeScript
70 lines
3.3 KiB
TypeScript
import type { Metadata } from "next";
|
||
|
||
export const metadata: Metadata = { title: "İletişim" };
|
||
|
||
const socials = [
|
||
{ name: "E-Mail", value: "info@denizbektas.com.tr", href: "mailto:info@denizbektas.com.tr", icon: "✉", desc: "Genel iletişim için" },
|
||
{ name: "Mastodon", value: "@denizbektas@infosec.exchange", href: "https://infosec.exchange/@denizbektas", icon: "⊕", desc: "Günlük paylaşımlar" },
|
||
{ name: "GitHub", value: "github.com/bugresearch", href: "https://github.com/bugresearch", icon: "◈", desc: "Açık kaynak projeler" },
|
||
{ name: "LinkedIn", value: "linkedin.com/in/denizbektas", href: "https://linkedin.com/in/denizbektas", icon: "▤", desc: "Profesyonel ağ" },
|
||
{ name: "PGP Key", value: "public.pgp", href: "/public.pgp", icon: "⊘", desc: "Şifreli iletişim için" },
|
||
];
|
||
|
||
export default function IletisimPage() {
|
||
return (
|
||
<div style={{ maxWidth: "100%" }}>
|
||
<div className="page-title">İletişim</div>
|
||
<p style={{ fontSize: "0.8rem", color: "var(--text-muted)", marginBottom: "2rem" }}>
|
||
Ulaşabileceğiniz kanallar — iletişim formu yok, doğrudan iletişim var
|
||
</p>
|
||
|
||
<div style={{ display: "flex", flexDirection: "column", gap: "0.75rem", marginBottom: "2rem" }}>
|
||
{socials.map((s) => (
|
||
<a
|
||
key={s.name}
|
||
href={s.href}
|
||
target={s.href.startsWith("http") ? "_blank" : undefined}
|
||
rel={s.href.startsWith("http") ? "noopener noreferrer" : undefined}
|
||
className="card"
|
||
style={{ display: "flex", alignItems: "center", gap: "1rem", opacity: 1 }}
|
||
>
|
||
<div style={{ width: "36px", height: "36px", background: "var(--bg)", border: "1px solid var(--border)", borderRadius: "6px", display: "flex", alignItems: "center", justifyContent: "center", fontSize: "1rem", flexShrink: 0, color: "var(--accent)" }}>
|
||
{s.icon}
|
||
</div>
|
||
<div style={{ flex: 1 }}>
|
||
<div style={{ fontSize: "0.88rem", fontWeight: 600, color: "var(--text)" }}>{s.name}</div>
|
||
<div style={{ fontSize: "0.75rem", color: "var(--accent)", fontFamily: "monospace" }}>{s.value}</div>
|
||
<div style={{ fontSize: "0.72rem", color: "var(--text-muted)" }}>{s.desc}</div>
|
||
</div>
|
||
{s.href.startsWith("http") && <span style={{ color: "var(--text-muted)", fontSize: "0.7rem" }}>↗</span>}
|
||
</a>
|
||
))}
|
||
</div>
|
||
|
||
<div className="card prose">
|
||
<h2>PGP ile Şifreli İletişim</h2>
|
||
<p>
|
||
Hassas konular için PGP ile şifrelenmiş mesaj gönderebilirsiniz.
|
||
Public key'im <a href="/public.pgp">burada</a>.
|
||
</p>
|
||
<pre style={{ fontSize: "0.75rem", padding: "0.75rem" }}>
|
||
{`gpg --fetch-keys https://denizbektas.com.tr/public.pgp
|
||
gpg --encrypt -r info@denizbektas.com.tr mesaj.txt`}
|
||
</pre>
|
||
|
||
<h2>Ne Zaman Yanıt Veririm?</h2>
|
||
<p>
|
||
Genellikle 24-48 saat içinde yanıt veriyorum. Reklam, iş birliği teklifi veya
|
||
spam içerikli mesajlara yanıt vermiyorum.
|
||
</p>
|
||
|
||
<h2>Responsible Disclosure</h2>
|
||
<p>
|
||
Bir güvenlik açığı bildirmek istiyorsanız lütfen{" "}
|
||
<a href="/security.txt">/security.txt</a> dosyasını inceleyin.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
);
|
||
}
|